code: def assert_ui_exists(self, ui, **kwargs):
          
          is_success = ui.exists
          if is_success:
              if kwargs.get('screenshot') is not None:
                  if self.d.platform == 'android':
                      bounds = ui.info['bounds'] # For android only.
                      kwargs['position'] = {
                          'x': (bounds['left']+bounds['right'])//2,
                          'y': (bounds['top']+bounds['bottom'])//2,
                      }
                  elif self.d.platform == 'ios':
                      bounds = ui.bounds # For iOS only.
                      kwargs['position'] = {
                          'x': self.d.scale*(bounds.x+bounds.width//2),
                          'y': self.d.scale*(bounds.y+bounds.height//2),
                      }
              message = 'UI exists'
          else:
              message = 'UI not exists'
          kwargs.update({
              'message': message,
              'success': is_success,
          })
          self._add_assert(**kwargs)
docs: For Android & IOS
          Args:
              - ui: need have property "exists"
              - desc (str): description
              - safe (bool): will omit AssertionError if set to True
              - screenshot: can be type <None|True|False|PIL.Image>
              - platform (str, default:android): android | ios