Tethering resource configuration is move from framwork to tethering module. The resource would not be accessible from outside of tethering module. List the replacements of framework resources usage and intent extra: 1. R.string.config_mobile_hotspot_provision_response --> android.net.extra.TETHER_PROVISIONING_RESPONSE. 2. R.string.config_mobile_hotspot_provision_app_no_ui --> android.net.extra.TETHER_UI_PROVISIONING_APP_NAME 3. R.array.config_mobile_hotspot_provision_app --> android.net.extra.TETHER_SILENT_PROVISIONING_ACTION Besides, the current active subId would put in android.net.extra.TETHER_SUBID Note: They are not APIs because of API freeze. Now both tethering module and Settings define these strings independently. Will replace hard code string as tethering module-lib APIs in b/159085857. Also move the entitlement response intent registeration from onCreated to onStartCommand, this can avoid wrong intent registeration if subId changed between onCreate and when the intent arrived. Bug: 146918263 Test: atest TetherServiceTest atest TetherProvisioningActivityTest Change-Id: I3d06df01302a9c1f0893712d9250fe394dc66588
To build the tests you can use the following command at the root of your android source tree $ make SettingsUnitTests The test apk then needs to be installed onto your test device via for example $ adb install -r out/target/product/shamu/data/app/SettingsUnitTests/SettingsUnitTests.apk To run all tests: $ adb shell am instrument -w com.android.settings.tests.unit/androidx.test.runner.AndroidJUnitRunner To run all tests in a specific class: $ adb shell am instrument -w -e class com.android.settings.<class> com.android.settings.tests.unit/androidx.test.runner.AndroidJUnitRunner To run a specific test: $ adb shell am instrument -w -e class com.android.settings.<class>#<test> com.android.settings.tests.unit/androidx.test.runner.AndroidJUnitRunner More general information can be found at http://developer.android.com/reference/android/support/test/runner/AndroidJUnitRunner.html