NativeAutomator constructor

NativeAutomator({
  1. required NativeAutomatorConfig config,
})

Creates a new NativeAutomator.

Implementation

NativeAutomator({required NativeAutomatorConfig config})
    : assert(
        config.connectionTimeout > config.findTimeout,
        'find timeout is longer than connection timeout',
      ),
      _config = config {
  if (_config.packageName.isEmpty && io.Platform.isAndroid) {
    _config.logger("packageName is not set. It's recommended to set it.");
  }
  if (_config.bundleId.isEmpty && io.Platform.isIOS) {
    _config.logger("bundleId is not set. It's recommended to set it.");
  }

  // _config.logger('Android app name: ${_config.androidAppName}');
  // _config.logger('iOS app name: ${_config.iosAppName}');
  // _config.logger('Android package name: ${_config.packageName}');
  // _config.logger('iOS bundle identifier: ${_config.bundleId}');

  _client = NativeAutomatorClient(
    http.Client(),
    Uri.http('${_config.host}:${_config.port}'),
    timeout: _config.connectionTimeout,
  );
  _config.logger('NativeAutomatorClient created, port: ${_config.port}');
}