Android devices

This topic offers solutions for Android-specific issues.

Session fails when starting Chrome with ChromeDriver on Android 13

This may happen due to a known ChromeDriver issue that occurs on Android 13 when the Chrome version is earlier than 110. The issue can be resolved by upgrading to Chrome version 110 or later.

Back to top

Device disconnects when making or receiving a phone call during a test

Making and receiving phone calls during tests is currently not supported on Android devices and may cause the device to disconnect.

Back to top

Unable to launch Chrome browser on Android devices. Failed to create session. Request timed out error.

The Network Security Services (NSS) libraries, which are needed to run ChromeDriver, are not included by default in Linux OS 8.x versions. As a result, ChromeDriver is unable to start, and the session fails. This issue can be resolved by installing the nss package using the following commands: 

Copy code
sudo yum makecache –refresh
sudo yum -y install nss

If you do not have internet access on your Linux machine, an offline RPM  should be downloaded and installed separately.

Back to top

Uploading an application with HMS (Huawei Mobile Services) results in an error - Error 2110.

This issue can be resolved by enabling ART support.

  1. Open the ApkInufser properties file in the following location:
    <Path to OpenText Functional Testing Lab Server installation >/server/AndroidTools/ApkInfuser/ApkInfuser.properties

  2. Change the line [globle.enableART=false] to [globle.enableART=true].

  3. Save the file

  4. Upload the app again.

  5. Restart the connector.

Back to top

The remote device display of some Android devices does not load properly - Error 1005

  1. Locate the connector.properties file. Change the value of the following line to false:
    android.javavnc.useMinicap=false
  2. Restart the connector.

Note that you are not able to use apps with secure layout.

Back to top

Cannot type in Japanese directly from the computer keyboard

In the device’s keyboard settings, select QWERTY layout.

If the English language letters are not converted to Japanese, use one of the following workarounds:

  • For typing directly from the computer keyboard:
    1. Install Google Japanese Input from Google Play on the device, or upload the apk to OpenText Functional Testing Lab, and install it on the device from OpenText Functional Testing Lab.

    2. On the device select the Google Japanese Input keyboard. In the Google Japanese Input settings , set the keyboard layout to QWERTY.

• Type using the Send Text option in the device control pane.

• Type by clicking on the device’s on-screen keyboard.

Back to top

All Android devices disconnect when connecting another Android device

Some device managers, such as the HTC Sync Manager and Samsung Kies, launch automatically when connecting a device, and start their ADB server. When the ADB server is launched, it detects that there is already an ADB server running (OpenText Functional Testing Lab’s) and stops it. This causes all the Android devices to disconnect.
Workaround: Uninstall the device manager, or make sure that it is not launched automatically when using Android devices with OpenText Functional Testing Lab.

Back to top

"An app is obscuring a permission request" error when trying to enable USB debugging

In certain cases, you may you receive the following error when trying to confirm "Allow USB debugging". The error message is "Because an app is obscuring a permission request, Settings can't verify your response."

As a workaround, perform the following:

  1. Disconnect the USB cable from the device.
  2. Restart the device in SAFE mode. To do this, hold down the low volume button while restarting the device or check your manufacturer's guidelines. You should see SAFE MODE in the bottom left corner of the screen.
  3. Connect the USB cable to the device.
  4. In the Developer options, enable USB debugging.
  5. Restart the device in normal mode.

Back to top

Record/Replay issues with apps obfuscated by Proguard

For apps that were obfuscated by Proguard and automatically packaged by OpenText Functional Testing Lab, record and replay may not function properly.
Workaround: Package the app manually using the APKInfuser tool.

  1. Go to the AppDelivery Marketplace. Select the current version of OpenText Functional Testing Lab and download the APKInfuser tool.
  2. Unzip the archive file and locate the ApkInfuser.bat file in the ApkInfuser folder.
  3. Locate the mapping.txt file generated by Proguard when you built the application in Android studio.
  4. Run APKInfuser on your app using the native, hybrid, and mappingFile command line options.

    ApkInfuser.bat -native -hybrid -mappingFile <FULL_PATH_TO_MAPPING_FILE> <FULL_PATH_TO_APK>

    The result is a debug-signed APK file with web instrumentation code.

    For Example:

    ApkInfuser.bat –native –hybrid -mappingFile c:\mapping.txt my-android-app.apk

    The above command generates the file: my-android-app.apk.signed.debug.apk in the same folder as the original APK.

    Tip: For help about the APKInfuser tool, see the Usage.txt file in the ApkInfuser folder.

  5. Upload the generated *.signed.debug.apk file to OpenText Functional Testing Lab.

Back to top

Device disconnects on specific devices after several seconds

Certain Android devices, primarily those manufactured by Chinese vendors, use a security tool that affects the memory and battery usage. If you encounter disconnection issues, perform the following:

  1. Enable Autostart for the OpenText Functional Testing Lab Agent: Open the device’s Security app from the Home page, and click Permissions. Select Autostart, find the OpenText Functional Testing Lab Agent app, and enable it.
  2. Turn off the battery saver: Open the device’s Security app from the Home page, and click Battery. Set Battery saver to Off. Alternatively, to work with the battery saver on, select App battery saver and find the OpenText Functional Testing Lab Agent app. Select No Restrictions.

Back to top

LG devices disconnect after changing orientation

Certain LG devices disconnect after changing the orientation from the control pane in the remote view. The log file contains an exception message. If this occurs, perform the following:

  1. Check the device card of the disconnected device on the DEVICES tab and determine its model number. This is usually the manufacturer name "LG" followed by a hyphen and a short string. For example, LG-D855.

  2. Open the Connector.properties file in C:\Program Files\Functional Testing Lab for Mobile and Web Server Server\server\conf (by default).
  3. Add the model of the disconnected device to the “VNC_USE_64ARTIFACT_MODELS” row. Save and close the file.
  4. Restart the connector service from the Start menu and verify that the connection is stable after you change the orientation.

Back to top

App crashes end recording sessions

If an app crashes or is terminated forcefully during a recording session, your actions are no longer be recorded even if you restart the app. You must re-record your session from the beginning.

Back to top

Dexguard security

You can work with Dexguard security by compiling your app in Dexguard. Follow these steps:

  1. Upload your original, packaged or non-packaged app to OpenText Functional Testing Lab.
  2. Record a test on the original app.
  3. Recompile the app in Dexguard with the following options:

    "-keepresourcexmlattributenames **/id -keepresources id/*"

  4. Upload the Dexguard-wrapped version of the app to OpenText Functional Testing Lab.
  5. Replay the testing using the Dexguard-wrapped version of the app.

Back to top

iFrame failures

Cross-domain iframe calls are not supported. For example, if your test uses an iframe that points to a web page in another domain, it fails.

Back to top

App installation failures due to insufficient storage

An Android limitation may cause a device to issue the message INSTALL_FAILED_INSUFFICIENT_STORAGE while installing certain apps. This limitation may also cause some connected devices to disappear from the Devices page, after having been connected for some time.
Solution: Restart the device.

Back to top

Replay issues with hybrid apps

When working with hybrid non-packaged apps, make sure that remote content debugging is enabled. For details, see Enable remote content debugging of Android apps.

Back to top

Good Connect client issues

In order to work in the remote view on a device with a Good Connect client, you must set the Prevent Android Screen Capture policy to Off. The release version of 2.3.18.687.117 and above is required for the policy to take effect. For details, see the Blackberry Knowledge Base article.

Back to top

Some input method editor actions do not work as expected

To support input method editor (IME) actions on Android, the application under test must be customized by the app developer, using the android:imeOptions attribute. Failure to do so results in some IME actions, such as Previous and Done, not working as expected.

Issues with specific devices

For device-specific issues, see Known Issues in the Connect devices section.

Back to top

See also: