CTS Verifier CTS Verifier %1$s Pass Info Fail Next Go Audio Camera Car Device Administration Hardware Networking Sensors Location Security Streaming Features Clock Job Scheduler TV Other Clear Test results cleared. View Couldn\'t create test results report. Cannot continue. Please grant runtime permissions Export Cannot save report to external storage, see log for details. Report saved to: %s Report Viewer Data Backup Test This test checks that data backup and automatic restore works properly. The test activity lists some preferences and files that are backed up and restored by the CTS Verifier. If backup and restore is working properly, these values should be restored after running the backup manager, uninstalling the app, and reinstalling the CTS Verifier. \n\nPress the \"Generate Test Data\" to populate these values and then follow the on screen instructions to finish the test. Preferences Files Loading... Generate Test Data Error occurred while generating test data... Random values for the preferences and files have been saved. \n\nFollow the instructions below to check that the data backup and restore works: \n\n1. Make sure backup and automatic restore are enabled in settings. Depending on the backup transport supported by the device you may need to do additional steps. For instance you may need to set a Google account as the backup account for the device. If you cannot find the corresponding setting options on your device, run \"adb shell bmgr enable true\" to enable the backup manager. You can check its status by executing \"adb shell bmgr enabled\". \n\n2. Run the backup manager: adb shell bmgr run \n\n3. Uninstall the program: adb uninstall com.android.cts.verifier \n\n4. Reinstall the CTS Verifier and verify that the values are still the same. Settings Policy Serialization Test This test checks that a device policy is properly saved and loaded across reboots.\n\nPress the \"Generate Policy\" button to create a random policy. Then press the \"Apply Policy\" button to apply the policy. Reboot the device and verify that all rows in the policy list are green. Red items indicate policy settings that were not loaded properly. Car Dock Test This test ensures that car mode opens the app associated with car dock when going into car mode.\n\n Click on "Enable Car Mode" to start the test. Clicking on the button will either bring up a disambiguation dialog asking which app to open or immediately open the CAR_DOCK application. Select the "CTS Verifier" app and then "Always" if the dialog pops up. This will open the CAR_DOCK application.\n\n In the CAR_DOCK application, press the home button, which will enable the pass button if the framework correctly tries to open the CAR_DOCK app again. Enable Car Mode Press the Home button 1. Press the \"Generate Policy\" to create a random device policy\n\n2. Press \"Apply Policy\" to put the policy into effect.\n\n3. Reboot your device and return to this test in the CTS Verifier. Generate Policy Apply Policy Random policy generated. Reboot your device and return to this CTS Verifier test. Password Quality Alphabetic Alphanumeric Numeric Something Minimum Password Length Maximum Failed Passwords for Wipe Maximum Time to Lock Expected value: %1$s\nActual value: %2$s Screen Lock Test This test checks that the DevicePolicyManager\'s lockNow method immediately locks the screen. It should lock the screen immediately despite any settings that may specify a timeout.\n\nClick the \"Force Lock\" button to lock the screen. Your screen should be locked and require the password to be entered. Force Lock It appears the screen was locked successfully! It does not look like the screen was locked... Lock Bound Keys Test This test ensures that Keystore cryptographic keys that are bound to lock screen authentication are unusable without a recent enough authentication. You need to set up a screen lock in order to complete this test. If available, this test should be run by using fingerprint authentication as well as PIN/pattern/password authentication. Fingerprint Bound Keys Test This test ensures that Keystore cryptographic keys that are bound to fingerprint authentication are unusable without an authentication. You need to set up a fingerprint order to complete this test. Authenticate now with fingerprint Authentication failed Start Test Bluetooth Test The Bluetooth Control tests check whether or not the device can disable and enable Bluetooth properly.\n\nThe Device Communication tests require two devices to pair and exchange messages. The two devices must be: \n\n1. a candidate device implementation running the software build to be tested \n\n2. a separate device implementation already known to be compatible Bluetooth Control Device Communication Bluetooth Low Energy Toggle Bluetooth Disable and enable Bluetooth to successfully complete this test. Enable Bluetooth Disable Bluetooth Disabling Bluetooth... Could not disable Bluetooth... Connection Access Server Connection Access Client Start the CTS Verifier on another device, start the Bluetooth test, and choose \"Connection Access Client\" to setup the test. \n\nFirst, unpair the devices via Bluetooth settings. Then connect the devices together using the \"Make Discoverable\" and \"Pick Server\" buttons. \n\nA connection access request should appear on the server and enable the pass button. Start the CTS Verifier on another device, start the Bluetooth test, and choose \"Connection Access Server\" to complete the test. \n\nMake the device acting as the server discoverable and connect to it via the \"Pick Server\" button. Check that the server displays the connection access request dialog. The client device does not need to do anything else. Was the connection access request dialog shown? Tap the \"Bluetooth Settings\" button and check that both devices are not paired before running the test. \n\nUse the \"Make Discoverable\" and \"Pick Server\" buttons to connect the two Bluetooth devices together and start the test. Secure Server Start the CTS Verifier on another device, start the Bluetooth test, and choose \"Secure Client\" to complete the test. Insecure Server Start the CTS Verifier on another device, start the Bluetooth test, and choose \"Insecure Client\" to complete the test. Waiting for client... Listening... Connecting... Connected Received Messages Sent Messages No messages Make Discoverable Pick Server Pairing dialog shown? Insecure connections should not show the pairing dialog! Secure Client Insecure Client Device Picker Paired Devices New Devices No devices Scan for Devices Scanning... Device must be unpaired via Bluetooth settings before completing the test.\n\nUnpair the device in settings, make the server discoverable, and rescan to pick this device. Bluetooth Settings Bluetooth LE GATT Client Handler Service BLE Client Test BLE Client Connect BLE Discover Service BLE Read Characteristic BLE Write Characteristic BLE Reliable Write BLE Notify Characteristic BLE Read Descriptor BLE Write Descriptor BLE Read RSSI BLE Client Disconnect The BLE test must be done simultaneously on two devices. This device is the client. All tests listed here must be done in order. Type in the Bluetooth address of the remote device to connect to, and verify that the devices are connected. Verify that the service is discovered when you press the "Discover Service" button. Write values to and read values from the server to verify that the write and read functionalities are working correctly. A Reliable Write has two steps.\n\n1) Write to the device. This will trigger a callback from the server to verify that the value written was correct.\n2) Execute the write, if the value written is valid. Start accepting notifications, and verify that notifications are being reported correctly. The server should be notifying this device with the time every second. Press button to read the RSSI value. Verify that the RSSI changes as you move the two devices further apart or closer together. Verify that the device is disconnected when you press the "Disconnect" button Bluetooth address Connect Discover service Nothing to write yet Nothing read yet Write Read Begin write Execute write Begin notification Stop notification Waiting on notification Read RSSI Disconnect TEST Bluetooth LE GATT Server Handler Service BLE Server Test The BLE test must be done simultaneously on two devices, a server device and a client device. This device is the server. Waiting on connection from BLE client. Adding service to BLE server. Waiting on write characteristic request Waiting on read characteristic request Waiting on write descriptor request Waiting on read descriptor request Waiting on reliable write from client Waiting on disconnection from BLE client BLE Advertiser Test The BLE test must be done simultaneously on two devices, an advertiser and a scanner. This device is the advertiser. Bluetooth LE Advertiser Handler Service BLE Privacy Mac BLE Advertiser should advertise in non-repeating MAC address. Click start to start advertising, you can disconnect USB and lock the screen of advertiser. Counts and mac address will show on scanner. You may receive message that this device does not support BLE advertising. BLE Tx Power Level BLE Advertiser advertises in 4 different power levels. Scanner should receive them in different strength of Rssi, cannot receive weak signals beyond several feet. Click start to start multi-advertising. Data packets are advertised in 4 different power levels. You may receive message that this device does not support multi advertising. If advertiser does not advertise in 4 power levels, neither you receive the error message, you may not stop the advertising in previous test, or this device does not support 4 advertisers at the same time. Try rebooting the device and run the test to free those advertisers in use. BLE Hardware Scan Filter BLE Advertiser advertises with 2 different data separately. One can wake up the scanner, the other cannot. This test cares about behavior on scanner only. Scannable advertising Start scannable advertising, expect scanner consume more power on Monsoon monitor, or see log of GattService from scanner logcat. Unscannble advertising Start unscannable advertising, expect scanner stay calm on Monsoon monitor, no log of GattService from scanner logcat. Start Stop BLE Scanner Test Bluetooth LE Scanner Handler Service The BLE test must be done simultaneously on two devices, an advertiser and a scanner. This device is the scanner. Hold for 15 min to see if receive a different MAC address from advertiser. Mac address, counts are shown on screen. It should continuously receive data packet from advertiser. Every 15 min, a new mac address should show up, which prevents mac address disclosure. Ultra low Low Medium High Count: Ultra low < low < medium < high\nRssi: Ultra low < low < medium < high\nDistance to see count freezing: Ultra low < low < medium < high\nA common error is ultra low, low and medium behave similarly, with similar rssi, freeze at similar distance.\n\n All power level receive a different mac address. After 15 mins, a green text "Get a new Mac address" will show up. BLE Hardware Scan Filter Lock the screen of scanner, and connect to monsoon. It will not wake up when advertiser is advertising unscannable, and scanner is scanning with filter. Scan filter is to scan data with service UUID = 0x6666 only. If you scan without scan filter, data with service UUID = 0x5555 and 0x6666 will show up on screen.\nFor monsoon test:\n\tClick scan with filter, lock the screen, connect to monsoon. It will not wake up when advertiser is advertising unscannable data packets, but will show a peak in power usage when advertiser is advertising scannable data.\nFor logcat test:\n\tClick scan with filter, logcat the scanner. No data will be received by GattService when advertiser is advertising unscannable data. Scan with filter Scan without filter Start scan Stop scan Hardware/Software Feature Summary This is a test for... WARNING: device reports a disallowed feature name WARNING: device reports neither WiFi nor telephony No data. standard feature reported by device optional feature not reported by device non-standard feature reported by device required feature not reported, or forbidden feature reported Hifi Ultrasound Microphone Test This is a test for near-ultrasound (18500Hz - 20000Hz) microphone response.\n This test requires two devices.\n PLAY RECORD PLOT DISMISS OK Open Hifi Ultrasound Microphone Test on the test device and the reference device.\n Set the media volume of the reference device at 70% and hold it with one hand.\n Hold the testing device with the other hand\n Press the RECORD button on the testing device, then the PLAY button on the reference device within one second.\n After the test, report result on the testing (recording) device.\n PASS FAIL false Device does not support near-ultrasound recording.\n All new phones and tablets MUST support near-ultrasound recording.\n Report FAIL if this is a new device, report PASS if this is an updating device.\n Device does not support near-ultrasound playback.\n If this is your reference device, please use a different reference device.\n Hifi Ultrasound Speaker Test This is a test for near-ultrasound (18500Hz - 20000Hz) speaker response.\n This test requires two devices.\n Open Hifi Ultrasound Speaker Test on the test device and the reference device.\n Set the media volume of the testing device at 70% and hold it with one hand.\n Hold the reference device with the other hand\n Press the RECORD button on the reference device, then the PLAY button on the testing device within one second.\n After the test, report result on the testing (playback) device.\n Device does not support near-ultrasound recording.\n If this is your reference device, please use a different reference device.\n Device does not support near-ultrasound playback.\n All new phones and tablets MUST support near-ultrasound playback.\n Report FAIL if this is a new device, report PASS if this is an updating device.\n Please wait for the result on the reference device then report here. Please report on the testing device.\n GPS Test This test verifies basic GPS behavior and callback scheduling. Make sure the device has line of sight to GPS satellites (for example, outside, or near a window) and then press OK to run the automated tests. NFC Test The Peer-to-Peer Data Exchange tests require two devices with NFC enabled to exchange messages. One device must be the candidate device running the software build to be tested, while the other device must be an implementation already known to be compatible.\n\nThe Tag Verification tests check that your device can properly read and write to tags of different technologies. The MIFARE Ultralight test is only applicable for devices that support it. \n\nThe Host-based card emulation tests check that your device has properly implemented host-based card emulation. NFC is not enabled! These tests require NFC to be enabled. Click the button below to goto Settings and enable it. NFC Settings NDEF Push is not enabled! These tests require Android Beam to be enabled. Click the button below to goto NFC Sharing Settings and enable it. NFC Sharing Settings Peer-to-Peer Data Exchange NDEF Push Sender NDEF Push Receiver LLCP version check Tag Verification NDEF MIFARE Ultralight Start the \"CTS Verifier NDEF Receiver\" test on another device and touch the devices back to back. The receiver should show a dialog indicating it has successfully received the correct message! Touch this device to the back of another device running the \"CTS Verifier NDEF Receiver\"... Start the \"CTS Verifier NDEF Sender\" test on another device and touch the devices back to back. The receiver should show a dialog indicating it has successfully received the correct message! Touch this device to the back of another device running the \"CTS Verifier NDEF Sender\"... Successfully received the correct NDEF push message. Failed to receive the correct NDEF push message. This test requires two candidate devices with NFC enabled to exchange P2P messages. Start the \"LLCP version check\" test on the other candidate device also, and touch the devices back to back. This test then verifies that the candidate device correctly advises the LLCP version as 1.2 The candidate devices does not report LLCP version 1.2 or higher. The candidate device has a valid LLCP version. NFC Tag Verifier Follow the on-screen instructions to write and read a tag of the chosen technology. Place device on a writable %s tag... Writable tag discovered! Press OK to write to this tag... Tap the same %s tag again to confirm that its contents match... Wrong type of tag scanned No tag technologies detected... Writing NFC tag... Error writing NFC tag... Reading NFC tag... Error reading NFC tag... Test passed! Test failed! Written data:\n%1$s\n\nRead data:\n%2$s Id: %1$s\nMime: %2$s\nPayload: %3$s Host-based card emulation HCE reader tests HCE emulator tests The host-based card emulation tests require two devices to be completed. The HCE emulator tests are used to actually test the host-based card emulation feature of the device-under-test. So the device running the emulator tests must be the candidate device running the software to be tested. \n\nFor each emulator test, there is a corresponding "reader test" in the "HCE reader tests" section. The "reader test" acts as a NFC terminal/POS and makes sure the device-under-test implements card emulation correctly. The host-based card emulation tests require two devices to be completed. The HCE emulator tests are used to actually test the host-based card emulation feature of the device-under-test. So the device running the emulator tests must be the candidate device running the software to be tested. \n\nFor each emulator test, there is a corresponding "reader test" in the "HCE reader tests" section. The "reader test" acts as a NFC terminal/POS and makes sure the device-under-test implements card emulation correctly. By default HCE applications must run on type A. If your device is restricted to type B (for example, because of a type B only UICC), select "Type B" from the drop-down box above. Note that all tests must be completed in the same mode (either "Type A" or "Type B"). Please wait Setting up card emulation services... Default route (Emulator) Default route (Reader) This test verifies that the default route for ISO-DEP (ISO14443-4) frames is the host CPU. It does this by selecting an AID that any Android HCE phone will respond to if the select command is routed to the host. Please verify that there is no rule in the routing table that points this AID to the host. This test may be passed if the "PASS" button on the reader side lights up after tapping the devices together. Protocol parameters (Emulator) Protocol parameters (Reader) This test verifies that the Nfc-A and ISO-DEP protocol parameters are being set correctly. The test may be passed when no FAIL entries show up in the results below. Note that the reader device may be different from the device under test - the DUT itself does not need to be able to act as the reader for this test. \n\n Note that for each test there are 3 possible outcomes:\n1) OK -> test has passed;\n2) FAIL -> test has failed and this must be fixed;\n3) FAIL EMVCO -> this protocol parameter is deviating from the requirements in the EMV Contactless Communication Protocol specification.\n\nWhile it is allowed to ship a HCE implementation with EMVCo failures, it may not perform optimal when EMVco based payment HCE apps are run on the device. Single payment (Emulator) Single payment (Reader) Two payment services (Emulator) Two payment services (Reader) Change default payment service (Emulator) Change default payment service (Reader) Tap reader Select the corresponding reader test on the remote device, click OK on this dialog, and tap devices together. The pass button will be enabled if the test passes. Single non-payment (Emulator) Single non-payment (Reader) Two non-payment services (Emulator) Two non-payment services (Reader) Two conflicting non-payment services (Emulator) Two conflicting non-payment services (Reader) Foreground override non-payment services (Emulator) Foreground override non-payment services (Reader) This test enables two non-payment services with conflicting AIDs. It then uses Androids API to allow the foreground app to set a preference for a specific service. This should prevent a popup dialog from showing. If you see a popup dialog during this asking you to select an app, this test has failed. Foreground override payment services (Emulator) Foreground override payment services (Reader) This test enables two payment services, and asks you to set one as the default service. It then uses Androids API to allow the foreground app to set a preference for the non-default service. This will cause the non-default payment service to be invoked. This test requires the "Favor foreground app" setting to be enabled. Tap OK to go to Tap and Pay settings and check the Favor foreground app option Off-host service (Emulator) Off-host service (Reader) This tests enables a service that declares some AIDs to reside off-host. This test only needs to be passed if your device has a secure element (either embedded or UICC.). The responses from the secure element are not verified by the test - it is up to the tester to verify the responses are as expected. On and off-host services (Emulator) On and off-host services (Reader) This tests enables a service that declares some AIDs to reside off-host, and another service that runs on host. It then first sends an APDU sequence that goes off-host, and subsequently some APDUs that should go to the on-host service. This test only needs to be passed if your device has a secure element (either embedded or UICC.). The pass button will be enabled if the on-host sequence is performed as expected. The responses from the secure element are not verified by the test - it is up to the tester to verify the responses are as expected. 50 successful taps test (Emulator) 50 successful taps test (Reader) This test requires you to complete at least 50 HCE taps, to ensure stability of the HCE feature. The NFC service and controller should not crash or hang during any of the 50 taps. HCE throughput test (Emulator) HCE throughput test (Reader) This tests verifies that your HCE implementation can reach a decent throughput. While Android does not have any requirements on HCE performance, many HCE applications such as transport and payment apps do. If the average APDU roundtrip time is more than 50ms, please take a look at your implementation to see where the delay is coming from. The device has an installed payment application that is currently set as default. To complete the test, you will be asked whether you want to make another app the default app. Select yes. You will now be asked whether you want to make Payment Service #1 the default app. Select yes. When tapping the first time, you will be shown a dialog that asks you to choose between TransportService #1 and TransportService #2. Select TransportService #2. Verify a dialog is shown that asks you to tap again to complete. Now tap again, and if communication with TransportService #2 is successfull the pass button will be enabled." Dynamic payment AIDs (Emulator) Dynamic payment AIDs (Reader) This test tries to register dynamic AIDs for a payment service. Large number of AIDs (Emulator) Large number of AIDs (Reader) This test tries to register a large number of different AIDs, to make sure there are no limitations on the maximum amount of HCE apps on the device. Note that this test may take a few seconds to complete; please be patient. Payment prefix AIDs (Emulator) Payment prefix AIDs (Reader) This test statically registers prefix AIDs for a payment service. Payment prefix AIDs 2 (Emulator) Payment prefix AIDs 2 (Reader) Other prefix AIDs (Emulator) Other prefix AIDs (Reader) This test dynamically registers prefix AIDs for a non-payment service. Conflicting non-payment prefix AIDs (Emulator) Conflicting non-payment prefix AIDs (Reader) This test registers conflicting prefix AIDs and makes sure AID conflict detection with prefix AIDs works properly. When tapping the first time, you will be shown a dialog that asks you to choose between TransportService #1 and TransportService #2. Select TransportService #2. Verify a dialog is shown that asks you to tap again to complete. Now tap again, and if communication with TransportService #2 is successfull the pass button will be enabled." NFC Payment service PPSE MasterCard Visa Payment Service #1 Payment Service #2 TransportService #1 TransportService #2 AccessService OffhostService Sensor Tests Device Admin Receiver Tests passed: %1$d, Tests skipped: %2$d, Tests failed: %3$d Test completed without errors. Test completed with errors: those errors might degrade the user experience and might cause some applications to misbehave. They are not required for Android Compatibility at this time, but will in a future release. PASS SKIPPED FAIL Test execution time %1$s sec Rotation Vector CV XCheck Rotation Vector CV XCheck Recording A sound will be played once the verification is complete... Leave the device on top of a flat surface. Once the test begins, you will have to wave your hand over the front of the device. Keep the device steady. Once the test begins, you will have to keep rotating the device clockwise. Press \'Next\' to continue. Press \'Next\' to begin. After completing the task, go back to this test. Movement was expected during the test. Found=%1$b. Turn off any special features installed in the device that register for sensors. Once you are done, you can begin the test. You will be redirected to set \'%1$s\' to: %2$s. \'%1$s\' set to: %2$s. \'%1$s\' not set to: %2$s. Airplane mode Adaptive Brightness Auto-rotate screen Stay awake Location Ambient Display Pass Anyway The screen will be turned off to execute the tests, when tests complete, the device will vibrate and the screen will be turned back on. Accelerometer Test This test verifies that the accelerometer is working properly. As you move the device around through space, the triangle should always point down (i.e. in the direction of gravity.) If it does not, the accelerometer is improperly configured. Accelerometer Measurement Tests Place the device on a flat surface with the screen facing the ceiling. Place the device on a flat surface with the screen facing it. Place the device in a flat surface resting vertically on its right side. Place the device in a flat surface resting vertically on its left side. Place the device in a flat surface resting vertically on its top side. Place the device in a flat surface resting vertically on its bottom side. Gyroscope Test This test verifies that the gyroscope is working properly.\n\nRotate your device as shown by the 3D block. A green background or a check mark indicates that the gyroscope\'s value is correct. A red background or a X mark indicates that the gyroscope\'s value is not right.\n\nThere are 6 parts of the test corresponding to each rotation. Press Pass for all the stages to complete this test. Test %1$d of %2$d No gyroscope? It doesn\'t seem like you have a gyroscope, so you don\'t need to run this test. Wrong units? These values looks like degrees per second. These should be radians per second! Gyroscope Measurement Test Place the device in a flat surface with the screen facing the ceiling. Read the instructions for each scenario, before you perform the test. Leave the device static. Once you begin the test, you will need to rotate the device 360deg (one time) in the direction show by the animation, then place it back on the flat surface. Heart Rate Test This test verifies that the heart rate monitor is working properly.\n\nWait for at least 1 minute before verifying.\n\nVerify that the resting heart rate is between 0 and 100. No heart rate monitor? It doesn\'t seem like you have a heart rate monitor, so you don\'t need to run this test. Magnetic Field Measurement Tests Verifying the Norm... Verifying the Standard Deviation... Verifying the relationship between calibrated and uncalibrated measurements... Please calibrate the Magnetometer by moving it in 8 shapes in different orientations. When done, leave the device in a flat surface, far from all metallic objects (if the test does not pass, try re-running it outdoors). -> (%1$.2f, %2$.2f, %3$.2f) : %4$.2f uT Rotation Vector Accuracy Test Sensor(%3$s). Event values expected to have size=%1$d. Found=%2$d. Sensor(%3$s). Event value[0] expected to be of value=%1$f. Found=%2$f. Sensor(%5$s). Event timestamp expected to be synchronized with SystemClock.elapsedRealtimeNanos(). Event received at=%1$d. Event timestamp=%2$d. Delta=%3$d. Threshold=%4$d. Sensor Batching Tests Once the test begins, you will have to take the device in your hand and walk. Sensor Synchronization Test Step Counter and Detector Tests Once the test begins, you will need to walk, and tap on the screen with each step you take. Once the test begins, you will need to remain still and hold the device still in your hand. At least %1$d steps are expected to be reported. Reported=%2$d. Steps reported by user=%1$d. Steps counted=%2$d. Delta=%3$d. Tolerance=%4$d. Steps reported by user=%1$d. Steps detected=%2$d. Delta=%3$d. Tolerance=%4$d. Step counter expected to increase monotonically, with a delta > 0. Found=%1$d. Timestamp=%2$d. %1$d | User reported step. %1$d | Step Counter event. count=%2$d. %1$d | Step Detector event. Device Suspend Tests Device did not go into suspend mode during test execution Batch did not arrive at the expected time estimatedBatchArrivalMs=%1$d firstEventReceivedMs=%2$d diffMs=%3$d toleranceMs=%4$d One you begin the test, disconnect USB, turn off the display and allow the device to go into suspend mode. The screen will turn on and a sound will be played once all the tests are completed. Significant Motion Tests Event expected to trigger. Triggered=%1$s. Event expected to be of type=%1$d. Found=%2$d. Event not expected to trigger. Triggered=%1$s. Significant Motion is expected to disable itself after it triggers once. Once you begin the test, you will need to walk for Significant Motion to be detected. Once you begin the test, you will need to walk to ensure Significant Motion is not reported after trigger canceled. Leave the device in a level surface. Once you begin the test, the device will vibrate to ensure that Significant Motion is not triggered. Once you begin the test, hold the device in your hand while you perform natural hand movements. Once you begin the test, keep the device in your pocket and move naturally while sitting in a chair. Once you begin the test, you will need to walk to ensure Significant Motion triggers only once. Expected to be able to register for TriggerSensor. Found=%1$b. Expected to be able to cancel TriggerSensor. Found=%b. One you begin the test, disconnect USB, turn off the display and allow the device to go into suspend. You will need to walk to ensure that Significant Motion triggers. The screen will turn on and a sound will be played once the test completes. Device did not wakeup at tigger time. wakeTime=%1$d ms triggerTime=%2$d ms CTS Single Sensor Tests CTS Sensor Integration Tests CTS Sensor Test CTS Sensor Batching Tests Share Sample Framework Test Sample Test This test verifies that bluetooth sharing is working properly.\nThe test assumes the Device Under Test has bluetooth enabled and is already paired with a second device, also with bluetooth enabled.\nStart this test by clicking share, choose bluetooth from the options, and then select a device to share with.\nNote: This is a sample test, used to demonstrate how to write CTS Verifier tests, so just click pass. SUID File Scanner This test will attempt to find unauthorized SUID binaries, but it is not comprehensive due to permission restrictions.\n\nAuthorized SUID binaries will appear green, while unauthorized SUID binaries will appear red.\n\nPress OK to start the scan... Scanning directory... User: %1$s\nGroup: %2$s\nPermissions: %3$s\nPath: %4$s Could not stat file... Congratulations! No unauthorized suid files detected! Camera Orientation This test verifies the orientation capabilities of camera preview and capture.\n - The left view shows a preview window rotated clockwise by a given magnitude of degrees.\n - The right view, after taking a photo, shows the captured image.\n - For each camera and orientation, both the left and right views should appear rotated clockwise by the amount of degrees specified. Choose \"Pass\" if this is the case. Otherwise, choose \"Fail\".\n - For front-facing cameras, the test will horizontally mirror the captured image prior to rotation, in attempt to make the left and right views appear the same.\n - The physical orientation of the device does not matter.\n - Read the message above the \"Take Photo\" button for step-by-step instructions. Camera preview Oriented photo Camera: Orientation clockwise Instruction: Take a photo Choose \"Pass\" if the left view is oriented the same as the right view. Otherwise, choose \"Fail\". (mirrored horizontally prior to rotation, since camera is front-facing) Take Photo Camera Intents This test verifies that the default camera app is firing intents after pictures/videos are taken. It also verifies that when the default camera app is invoked via intents, the launch intents work, and the broadcast intents are received when appropriate per the SDK documentation.\n\n - Read the message above the \"Start Test\" button for step-by-step instructions. Camera preview Oriented photo Camera: Intents Test clockwise Instructions: READ BEFORE STARTING TEST Choose \"Pass\" if the right intent is fired after taking a photo from the camera app. Otherwise, choose \"Fail\". \n 1. Click Start Test. \n 2. Go to home screen (HOME key). \n 3. Launch Camera application. \n 4. Capture photo. \n 5. Return to CTS verifier app. \n 6. Pass button will light up if intent was received.\n 7. Click "Pass" if possible. \n 1. Click Start Test. \n 2. Go to home screen (HOME key). \n 3. Launch Camera application. \n 4. Capture video. \n 5. Return to CTS verifier app. \n 6. Pass button will light up if intent was received.\n 7. Click "Pass" if possible. \n 1. Click Start Test.\n 2. Camera app will launch, prompting to take photo.\n 3. Capture/confirm photo using camera app controls.\n 4. Pass button will light up if intent was NOT received.\n 5. Click "Pass" if possible. \n 1. Click Start Test.\n 2. Camera app will launch, prompting to take video.\n 3. Capture/confirm video using camera app controls.\n 4. Pass button will light up if intent was received.\n 5. Click "Pass" if possible. Start Test Camera Formats This test checks that all the supported output formats for camera preview callbacks work correctly, and that the mandatory formats are available. \n - The left view shows a standard preview window. \n - The right view shows the output processed from camera preview callbacks. \n - For each camera, resolution, and format combination in the dropdowns, the right view should look the same as the left, and neither should have streaks, lines, or other artifacts. \n - For front-facing cameras, the right view must be horizontally mirrored relative to the left view.\n - Note that the frame rate of the right view may be much lower than on the left; this is not an indication of a failed test. Normal preview Processed callback data Test Camera Video This test checks video capture at different resolutions. \n - The left view window shows the preview. \n - Pressing the test button will trigger three seconds of video recording. Playback will show up in the right view window after recording is complete. \n - Use the spinners to choose camera and resolution combinations. The playback should be similar to what you saw in preview. \n - After all possible combinations are tested, the pass button will be enabled. You may press the pass button to indicate a pass. \n - You may press fail button any time during the test to indicate failure. Video capture Video playback Test failed Fail and quit Cancel Ready Recording Playing back USB Accessory Test Sensor Power Test 1. Connect your Android device to a computer and run the \'cts-usb-accessory\' program included with the CTS Verifier bundle. \n\n2. If you have not started the CTS Verifier, press \'OK\' when asked to open the CTS Verifier when the accessory is connected. \n\nIf you are already in this test, then you can press \'Cancel\' but press \'OK\' in the next dialog asking whether to allow CTS Verifier to access the accessory. \n\n3. You should see the accessory and the CTS Verifier display a series of messages which indicates that the accessory support is working properly. USB accessory feature is not available? If your device is supposed to support USB accessories, your API implementation is not behaving correctly! Received Messages Sent Messages No messages Starting message processing... Exception occurred while processing a message... Stopping message processing... Received all expected messages. Pass button enabled! Could not open file descriptor for USB accessory... try reconnecting and restarting the accessory? Camera ITS Test 1. Connect your Android device to a computer with adb installed via a USB cable. \n\n2. Setup the CameraITS test environment by following the setup instructions in the README file found in the CameraITS directory included in the CTS Verifier bundle (cd CameraITS; source build/envsetup.sh;). \n\n3. Setup the test scene described in the CameraITS README file, and aim the camera at it. \n\n4. Run the full ITS test suite on all possible camera Ids. (cd CameraITS; python tools/run_all_tests.py). Once all of the tests have been run, the \'PASS\' button will be enabled if all of the tests have succeeded. Please note that these tests can take 20+ minutes to run. No camera manager exists! This test device is in a bad state. All cameras on this device are LEGACY mode only - ITS tests are only required on LIMITED or better devices. Pass. All Camera ITS tests passed. Pass button enabled! Some Camera ITS tests failed. Camera Flashlight This test checks the flashlight functionality. It will turn on and off the flashlight of each camera device that has a flash unit. Follow the instructions on screen and observe the flashlight status changing. Start Next Done On Off Press Start to start flashlight test. Is Camera %1$s flashlight on or off? Ok. Press next. Test failed. Press Done or Fail button. All tests passed. Press Done or Pass button. Streaming Video Quality Verifier This is a test for assessing the quality of streaming videos. Play each stream and verify that the video is smooth and in sync with the audio, and that there are no quality problems. No videos. Test Failed Unable to play stream. See log for details. Wi-Fi Direct Test The Wi-Fi Direct tests require two devices with Wi-Fi Direct enabled to exchange messages. One device must be the candidate device running the software build to be tested, while the other device must be an implementation already known to be compatible.\n\nOne device should start the requester test, and the other should start the responder test. Your device must pass both requester and responder tests. Group Formation Group Join Service Discovery GO Negotiation Responder Test GO Negotiation Requester Test Group Owner Test Group Client Test Service Discovery Responder Test Service Discovery Requester Test GO Negotiation Responder GO Negotiation Requester Group Owner Group Client Service Discovery Responder Service Discovery Requester Start the \"GO Negotiation Requester Test\" on the other device and follow the instructions. Start the \"Group Client Test\" on the other device and follow the instructions. Start the \"Service Discovery Requester Test\" on the other device and follow the instructions. Start the \"GO Negotiation Responder Test\" on the other device. Then run each test individually by clicking on it\'s name. Start the \"Group Owner Test\" on the other device. Then run each test individually by clicking on it\'s name. Start the \"Service Discovery Responder Test\" on the other device. Then run each test individually by clicking on it\'s name. Wi-Fi is not enabled These tests require Wi-Fi to be enabled. Click the button below to go to system settings and enable Wi-Fi. Wi-Fi Direct Settings Test passed successfully. The go negotiation responder is now ready to start. Start the \"GO Negotiation Requester Test\" on the other device. Keep the screen here until all tests on the other device are finished. The group owner is now ready to start. Start the \"Join Group Test\" on the other device. Keep the screen here until all tests on the other device are finished. The service responder is now ready to start. Start the \"Service Discovery Requester Test\" on the other device. Keep the screen here until all tests on the other device are finished. Test failed.\n\nSet up error. Check whether Wi-Fi can be enabled. Test failed.\n\nUnexpected error. Check logcat. Test failed.\n\nFailed to add local service. Test failed.\n\nFailed to add service request. Test failed.\n\nFailed to remove service request. Test failed.\n\nFailed to clear service requests. Test failed.\n\nFailed to start a p2p connection to the target device. Test failed.\n\nFailed to remove a p2p group. Test failed.\n\nFailed to discover peers. Test failed.\n\nFailed to discover services. Test failed.\n\nFailed to start up group owner. Test failed.\n\n\"NO_SERVICE_REQUESTS\" error did not occur. Test failed.\n\nReceived an invalid message or could not receive the expected message.\n\n Test failed.\n\n The target responder device was NOT found. Start up the responder test on the other device, then run the test again. Test failed.\n\n The target responder must be p2p device. However, the target responder device was group owner. Check the test case on the other device. Test failed.\n\n The target responder must be group owner. However, the target responder device was p2p device. Check the test case on the other device. Test failed.\n\nFailed to establish a p2p connection. Test failed.\n\nFailed to detect client disconnection. Test failed.\n\nFailed to disconnect a p2p connection. Search Target Searching for target device ... Checking the service discovery capability ... Trying to connect the target device ...\n\n Click the \"OK\" button on the other device to accept the connection request from this device. Trying to connect the target device ...\n\n Enter the pin number on the other device. Waiting for peer to connect ... Waiting for peer to disconnect ... Camera FOV Calibration Done General settings Settings Tap to calibrate Marker distance (in cm) The distance in centimeters between the solid lines on the target pattern. Target distance (in cm) The distance in centimeters from the device to the target pattern. Setup Preview Sizes Choose preview size for camera %1$s Displayed FOV : Reported FOV : Reported FOV problem The reported FOV before takePicture() is different from when onPictureTaken() is called.\nAs picture size has not been changed, the reported FOV should be identical at both times.\n\nFOV before/after: %1$f / %2$f Photo Sphere Live Wallpaper This live wallapper displays photo spheres. Select panorama Select a panorama to display in the live wallpaper. Reset panorama Resets the panorama to show the demo file. Enable compass mode If enabled, the panorama orients itself according to the current rotation of the device. Notifications Notification Package Priority Test This test checks that the NotificationManagerService respects user preferences about relative package priorities. Verifying that the CTS Robot helper package is installed. Find \"%s\" under \"App notifications\" in the \"Sound & notifications\" settings panel, and mark it as having notification priority. Find \"%s\" under \"App notifications\" in the \"Sound & notifications\" settings panel, and make sure it has default priority. Check that ranker respects user priorities. Notification Attention Management Test This test checks that the NotificationManagerService is respecting user preferences about notification ranking and filtering. I\'m done Please disable \"Do not disturb\" by tapping the Quick Settings tile. Please select \"Priority only\" in the dialog that appears when you tap the \"Do not disturb\" tile in Quick Settings, and customize the setting to allow messages from starred contacts only by tapping "More settings". Please select \"Total silence\" in the dialog that appears when you tap the \"Do not disturb\" tile in Quick Settings. Create contacts for notification annotations. Delete test contacts. Check that ranker defaults to time order. Check that ranker respects developers priorities. Check that the ambient bit is set appropriately. Check that ranker respects Lookup URIs for contacts. Check that ranker respects mailto URIs for contacts. Check that ranker respects telephone URIs for contacts. Check that ranker temporarily boosts interruptions. This test takes 15 seconds to complete. Check that \"All\" mode doesn\'t filter any notifications. Check that \"Priority\" mode doesn\'t filter priority notifications. Check that \"None\" mode filters all notifications. Notification Listener Test Notification Listener for CTS Verifier This test checks that a NotificationListenerService can be enabled and disabled, and that once enabled the service is able to receive notifications and dismiss them. Please enable \"Notification Listener for CTS Verifier\" under Security > Notification Access and return here. Please disable \"Notification Listener for CTS Verifier\" under Security > Notification Access and return here. Launch Settings Service should start once enabled. Check that notification was received. Check that notification payload was intact. Check that service can clear a notification. Check that service can clear all notifications. Service should stop once disabled. Check that notification was not received. High Accuracy Mode Test This test checks that the Location Mode API is consistent with the Location Provider API when the device is in High Accuracy location mode. Please select the \"High accuracy\" mode at Settings > Location (hint: tap the "Mode" item) and return here. Battery Saving Mode Test This test checks that the Location Mode API is consistent with the Location Provider API when the device is in Battery Saving location mode. Please select the \"Battery Saving\" mode at Settings > Location (hint: tap the "Mode" item) and return here. Device Only Mode Test This test checks that the Location Mode API is consistent with the Location Provider API when the device is in Device Only location mode. Please select the \"Device Only\" mode at Settings > Location (hint: tap the "Mode" item) and return here. Location Mode Off Test This test checks that the Location Mode API is consistent with the Location Provider API when the device is in the Off location mode. Launch Settings Please turn ON location access (the switch at the top of Settings > Location) and return here. Please turn OFF location access (the switch at the top of Settings > Location) and return here. GPS provider should be ON in secure settings. GPS provider should be OFF in secure settings. Network location provider should be ON in secure settings. Network location provider should be OFF in secure settings. GPS provider should be ON in LocationManager. GPS provider should be OFF in LocationManager. Network location provider should be ON in LocationManager. Network location provider should be OFF in LocationManager. CA Cert Notification Test This test checks that when a CA Certificate is installed, the user is notified. Do it Done Use the CertInstaller to install the certificate. When it opens, just tap "Okay". If this button does nothing, pass the test and move on. Visit the user-installed trusted credentials page and confirm that the "Internet Widgits Pty Ltd" cert appears in the list. Please look at the new notification and confirm: It say the network may be monitored. Tapping it brings up a more detailed explanation and a button to check trusted credentials. Tapping that button brings up the Trusted Credentials page you just visited. Dismiss the notification. If it cannot be dismissed, fail the test. CA Cert Notification on Boot test This test is to confirm that when the user has installed a trusted credential, the system notifies the user when it boots. Please check here to see whether a certificate is already installed. (If this button does nothing, pass the test and move on.) Check Credentials Only if there is no credential currently installed, install one. (If this button does nothing, pass the test and move on.) Install credential Please reboot the device and return to this test. AFTER REBOOTING: Check that there is a notification that the network may be monitored. Opening that notification should show a dialog box giving more information, with a button to check trusted credentials. This should open up the same view of trusted credentials that you get via the "Check credentials" button. KeyChain Storage Test This test checks that credentials installed to the system can be granted, retrieved, and used to create valid HTTPS connections. Reset Skip The first step sets up an internal KeyStore and generates credentials to use for the remainder of the test.\n\n Touch \'Next\' to begin. Credentials generated. Touch \'Next\' to install them to the system keychain.\n\n The container for the credentials will not be protected with a password; if prompted for one, leave that field blank.\n\n During installation you may be prompted for a name - accept the default suggestion.\n\n In the case that these credentials were already installed, you may skip this step. The last test involves setting up an HTTPS connection using credentials from the KeyChain.\n\n You should be prompted to select credentials; choose the ones you just installed in the previous step. Before marking this test as passed, touch \'Next\' to open security settings and reset the following items:\n 1. Clear device credentials.\n 2. Change the lock screen type to \'None\'. Widget Framework Test This test checks some basic features of the widget framework. In order to perform the test, press the Home button. Add the widget titled "CTS Verifier" to the home screen. Follow the instructions in the widget. Widget Framework Test Pass Fail Enable non-market apps This test verifies that non-market apps can be installed if permitted.\n 1. A package installation UI should appear.\n 2. Accept the package and verify that it installs. Disable non-market apps This test verifies that non-market apps cannot be installed unless permitted.\n 1. A package installation UI should appear.\n 2. Verify that the installation of the package is refused. Camera support cross profile image capture This test verifies that images can be captured from the managed profile using the primary profile camera.\n 1. Capture a picture using the camera.\n 2. Verify that the captured picture is shown.\n 3. Click on the close button. Camera support cross profile video capture This test verifies that videos can be captured from the managed profile using the primary profile camera.\n 1. Capture a video using the camera.\n 2. Click on the play button.\n 3. Verify that the captured video is played.\n 4. Click on the close button. Sound recorder support cross profile audio capture This test verifies that audio can be captured from the managed profile using the primary profile sound recorder.\n 1. Capture audio.\n 2. Click on the play button.\n 3. Verify that the captured audio is played.\n 4. Click on the close button.\n Close Play Verify captured image Verify captured video Verify captured audio No image capture app present. Skip test. No video capture app present. Skip test. No audio capture app present. Skip test. Error while capturing media from managed profile. Alarms and Timers Tests The Alarms and Timers tests verify that the Clock app implements the AlarmClock API properly. Alarms Timers Show Alarms Test This test verifies that the SHOW_ALARMS API works.\n 1. Press the "Show Alarms" button.\n 2. Verify that a UI of the clock app is launched and displays the list of alarms\n Show Alarms Set Alarm Test This test verifies that the ACTION_SET_ALARM with no parameters API works.\n 1. Press the "Set Alarm" button.\n 2. Verify that the clock app is launched and displays a UI to manage alarms.\n Set Alarm Verify Start Alarm Test This test verifies that the ACTION_SET_ALARM API actually starts an alarm.\n 1. Press the "Start Alarm" button.\n 2. Make sure the alarms UI is NOT shown\n 3. Wait for the alarm to fire (may take up to 2 minutes)\n 4. Verify that the alarm title is: "Start Alarm Test",\n the alarm is silent and vibrating (if the device supports vibrate).\n 5. Dismiss the alarm.\n 6. Verify that the alarm is not in the Clock\'s alarms list. The Verify button opens the alarm view.\n Start Alarm Full Alarm Test This test verifies that the ACTION_SET_ALARM API supports all extras.\n 1. Press the "Create Alarm" button.\n 2. Verify that you see one alarm with the following information:\n Name of alarm: Create Alarm Test. \n Vibrate: on.\n Ringtone: silent.\n Time: 01:23. \n Repeating on: Monday and Wednesday. \n Create Alarm Set Timer Test This test verifies that the ACTION_SET_TIMER API with no paramters open the UI\n 1. Press the "Set Timer" button.\n 2. Verify that the an app is launched and displays a UI to manage timers.\n Set Timer Start Timer Test This test verifies that the ACTION_SET_TIMER API actually starts a timer\n 1. Press the "Start Timer" button.\n 2. Verify that a timer is started and NO timers UI is shown.\n 3. Verify that the timer named "Start Timer Test" rings after 30 seconds. Dismiss it.\n 4. Verify that the timer is deleted after the dismissal.\n Start Timer Start Timer With UI Test This test verifies that the ACTION_SET_TIMER API actually starts a timer with UI\n 1. Press the "Start Timer" button.\n 2. Verify that a timer is started and the timers UI is shown with a timer named "Start Timer Test".\n 3. Verify that the timer rings after 30 seconds.\n Keyguard Password Verification Set password Change password This test verifies that the user is prompted for the current keyguard password before prompting for a new password.\n \nClick the \"Set password\" button if you currently don\'t have a password set.\n \nThen click the \"Change password\" button to change it. You should be prompted for the current password first. If you are not, then mark the test as failed. Projection Tests Projection Service This tests whether or not OpenGL projection works.\n You should see two "tumbling cubes." Tapping the screen should case the cubes to explode. Projection Cube Test This tests whether or displaying widets and keyfocus navigation works.\n You should see four buttons on the bottom of the screen.\n Pressing the "up" and "down" buttons should highlight different buttons.\n Further, you should also be able to touch them and they should highlight as usual. Projection Widget Test Up Down Left Right Button Projection Scrolling List Test This tests whether a projected list view will scroll properly\n You should see 50 list items and be able to scroll up and down the list Projection Video Playback Test This tests whether video playback works when projected.\n You should see a blinking white box and here a beep that is synchronized with each blink Projection Multitouch Test This tests whether multitouch works.\n Touching the screen should render a dot at the location you touched.\n Touching with additional fingers will render additoinal dots and you should be able to drag them around. Projection Offscreen Activity This tests whether a virtual display will continue to respond to and render even when the screen is off.\n Simply follow the instructions and the test will detect the pass conditions.\n Note that turning on the screen too early will result in a failure. Rotation Vector Accuracy Test Place the mobile device in a reference position. Note: to provide an accurate reference, align the device along one edge of a notebook laying on a table. Reference position set. Move, shake, and rotate the device. Place the device back to the reference position. Angular deviation [%1$4.1f %2$4.1f %3$4.1f]. Current: %4$f deg. Max tolerated: %5$f. CTS Verifier - AfW Admin Managed Provisioning BYOD Managed Provisioning This test exercises the BYOD managed provisioning flow. Start by pressing the button on screen and follow instructions to finish the managed provisioning process. If your device has not been encrypted before, it will be encrypted and rebooted. After the provisioning process completes, return to this page and carry out further verifications. Note: the device will remain encrypted after the test which can only be disabled by factory reset. Start BYOD provisioning flow 1. Press the button below to start the managed provisioning flow. If your device has not been encrypted before, it will reboot to apply encryption. After reboot follow instructions in the notification area to complete the provisioning.\n 2. After successful provisioning, you should be automatically redirected back to this page. Please press through the following verification steps. Allow a few seconds after returning from provisioning, as the profile owner test should automatically pass.\n \n If the device is being encrypted during step 1, it will remain encrypted After this test. The only way to disable the encryption is to factory reset the device. Profile owner installed Full disk encryption enabled Profile-aware accounts settings Profile-aware device administrator settings Badged work apps visible in Launcher Open app cross profiles from the personal side Open app cross profiles from the work side App links from the work side You selected the personal option. You selected the Work option. You selected the ctsverifier option Please press the Go button to start an action.\n \n You should be asked to choose either \"CTS Verifier\" or \"Work\" to complete the action. Pressing either should bring up a page stating your choice.\n \n Verify that you are prompted with the above choices and both options work as intended. Then mark this test accordingly. Please press the Go button to start an action.\n \n You should be asked to choose either \"CTS Verifier\" or \"Personal\" to complete the action. Pressing either should bring up a page stating your choice.\n \n Verify that you are prompted with the above choices and both options work as intended. Then mark this test accordingly. Please press the Go button to start an action.\n \n You should be asked to choose either \"CTS Verifier\" or \"Personal\" to complete the action.\n - If you choose \"CTS Verifier\", you should see a page stating your chose \"CTS Verifier\".\n - If you choose \"Personal\", you should be presented with another dialog between \"CTS Verifier\" and some other apps. In this case, you should choose \"CTS verifier\".\n You should then see a page stating you chose \"Personal\".\n \n Verify that you are prompted with the above choices and both options work as intended. Then mark this test accordingly. Keyguard disabled features This test exercises Keyguard Disabled Features. Follow instructions above. Please go to Settings > Security > Device administrators and set \"CTS Verifier - AfW Admin\" as active admin.\n After that please press the \"Prepare test\" button to disable trust agents.\n Then please press through the following verification steps.\n Note: Device password will be set to \"testpassword\". After leaving the screen device password and active admin status will be cleared. Prepare test CtsVerifier is not active admin. Please follow instructions. Disable trust agents Please press the Go button to go to Settings > Security. Then go to Trusted agents and\n check if the agents are shown as disabled by the administrator. Then please press Back and mark the test as \"Pass\" or \"Fail\". Fingerprint is disabled in Settings Please press the Go button to go to Settings > Security. Then go to Fingerprint and\n check if the screen is shown as disabled by the administrator. Then please press Back and mark the test as \"Pass\" or \"Fail\". Fingerprint disabled on keyguard Please press the Go button to lock the screen. Then try to log in using the fingerprint reader.\n Expected result is you cannot log in using your fingerprint.\n After you log back in, please navigate back to CtsVerifier and mark the test as \"Pass\" or \"Fail\". Notifications disabled on keyguard Please press the Go button to lock the screen. Wait a couple of seconds and look out for a notification from CtsVerifier.\n Expected result is the notification is shown as \"Contents hidden\", you can not see the contents (Which would read \"This is a work notification\").\n After you log back in, please navigate back to CtsVerifier and mark the test as \"Pass\" or \"Fail\". Work notification is badged Please press the Go button to trigger a notification.\n \n Verify that the notification is badged (see sample badge below). Then mark this test accordingly. This is a work notification Work status icon is displayed Verify that the current status bar does not have a work status icon (see sample icon below). \n\n Please press the Go button to launch a work activity. \n\n Verify that the status bar now has a work status icon. Then mark this test accordingly. Verify that the current status bar has a work status notification. \n\n Please press finish to return to the tests and then mark this test accordingly. Work status toast is displayed Please press the Go button to launch a work activity. \n\n Follow instructions and then return and mark this test accordingly. Turn off the screen and wait a few seconds then turn on the screen again. \n\n Verify that a toast was displayed saying you are in the work profile. \n\n Please press finish to return to the tests and then mark this test accordingly. Please press the Go button to open the Settings page. Navigate to Accounts and confirm that:\n \n - Both Personal and Work categories exist.\n - \"Remove work profile\" exists under the Work category.\n \n Furthermore, hit the action overflow button (3 dots) and verify that:\n - There are two auto-sync options present, one for personal and one for work data.\n - De-selecting either option prompts a warning dialog.\n \n Use the Back button to return to this page. Please press the Go button to open the Security page in Settings. Navigate to Device administrators and confirm that:\n \n - Both Personal and Work categories exist.\n - \"CTS Verifier - AfW Admin\" exists under the Work category, and is activated.\n \n Use the Back button to return to this page. Please press the Go button to start the launcher. Go to All Apps screen and scroll through it to confirm that:\n \n - A new set of work apps including CTS Verifier appear in the list.\n - Work badge overlay appears on work app\'s icon (see example icon below).\n \n Then navigate back to this screen using Recents button. Profile-aware app settings Please press the Go button to open Apps page in settings.\n \n Verify that work profile exists in the dropdown list and selecting it will bring up apps setting in the work profile.\n \n Then use the Back button to return to this test and mark accordingly. Profile-aware location settings Please press the Go button to open Location page in settings.\n \n Verify that work profile entry exists in the page.\n \n Then use the Back button to return to this test and mark accordingly. Profile-aware battery settings Please press the Go button to open Battery page in settings.\n \n Verify that Battery page shows both badged and unbadged apps in the usage list.\n \n Note that the usage list only displays usage since last charge, so you may need to unplug your device and use a badged and unbadged app for a little while before they will appear in the list.\n \n Then use the Back button to return to this test and mark accordingly. Profile-aware data usage settings Please press the Go button to open the Settings page.\n \n Navigate to Data usage page and confirm that it includes a Work profile section, and that tapping it shows just work profile data usage.\n \n Then use the Back button to return to this test and mark accordingly. Profile-aware trusted credential settings Please press the Go button to open the Security settings. Navigate to "Trusted credentials" and wait for the UI to load. After the list is loaded, confirm that:\n \n The page list credentials for both "Personal" and "Work" profiles.\n \n Then use the Back button to return to this test and mark accordingly. Profile-aware printing settings Please press the Go button to open the Printing settings. \n Verify that work profile exists in the dropdown list and selecting it will bring up printing setting in the work profile.\n \n Then use the Back button to return to this test and mark accordingly. Cross profile intent filters are set Disable Nfc beam Please press the Go button to test if Nfc beam can be triggered in the work profile.\n \n For the first test, press \"Send manual beam\" to trigger a beam, then bump into another device to send the file. Verify that the file is successfully received.\n \n For the second test, press \"Send share intent\" to trigger a beam, then bump into another device to send the file. Verify that the file is successfully received.\n \n Then use the Back button to return to this test and mark accordingly. Please press the Go button to test if Nfc beam is disallowed by policy \n Verify that Nfc beam is not triggered when pressing the button.\n \n Then use the Back button to return to this test and mark accordingly. Send manual beam Send share intent Cannot find beam activity Cannot communicate with activity in the work profile. Initiate deletion of work profile. Work profile deleted. Device provisioning is not enabled. Finish Choose an app to complete action Device Owner Provisioning Device Owner provisioning tests The device owner provisioning tests verify that setting up a corporate owned device can only be done on a factory reset device. Device Owner Provisioning Device owner negative test Please click the "Start provisioning" button, and when you see a warning dialog telling the device is already set up, select "pass". Otherwise, select "fail". Start provisioning Device Owner Tests Device Owner positive tests The positive device owner tests verify policies on a corporate owned device.\n Press below button first, follow steps described in the dialog that pops up, then proceed to the test cases.\n Pressing \'back\', \'pass\' or \'fail\' on this test page will remove the device owner.\n Alternatively, you can run the \'Remove device owner\' test. Ideally, that test should be run last so that it does not interfere with other tests. The positive device owner tests verify policies on a corporate owned device.\n Press below button first, follow steps described in the dialog that pops up, then proceed to the test cases.\n Pressing \'back\', \'pass\' or \'fail\' on this test page will remove the device owner.\n Alternatively, you can run the \'Remove device owner\' test. Ideally, that test should be run last so that it does not interfere with other tests. Device Owner Tests Set up device owner Set up device owner Please set the device owner by enabling USB debugging on the device and issuing the following command on the host:\n adb shell dpm set-device-owner \'com.android.cts.verifier/com.android.cts.verifier.managedprovisioning.DeviceAdminTestReceiver\' Remove device owner Please check in Settings > Security > Device Administrators if CTSVerifier is Device Owner. Then press the button below, and check that CTSVerifier is NOT Device Owner anymore. Remove device owner Check device owner Missing or incorrect device owner: CTSVerifier is not DO! WiFi configuration lockdown Please enter the SSID and auth method of an available WiFi Access Point and press the button to create a WiFi configuration. This configuration can be seen on Settings > WiFi. The test cases are going use this config. Please go through test cases in order (from top to bottom). WiFi config lockdown off WiFi config lockdown on Go to WiFi Settings None WPA WEP Create WiFi configuration WiFi configuration could not be created There was an error during creation of WiFi configuration. Check if WiFi is switched on. Unlocked config is modifiable in Settings Please press the button to ensure WiFi config lockdown is NOT in effect. Then go to Settings > WiFi and see if the CTSVerifier created WiFi configuration can be edited. Please make sure you can connect to it. The test is successful if the config is editable and can be connected to. Locked config is not modifiable in Settings Please press the button to ensure WiFi config lockdown is in effect. Then go to Settings > WiFi and see if the CTSVerifier created WiFi configuration can NOT be edited or removed. The test is successful if the config is NOT modifiable. Locked config can be connected to Please press the button to ensure WiFi config lockdown is in effect. Then go to Settings > WiFi and see if the CTSVerifier created WiFi configuration can be connected to manually. The test is successful if the connection can be established. Unlocked config can be forgotten in Settings Please press the button to ensure WiFi config lockdown is NOT in effect. Then go to Settings > WiFi and see if the CTSVerifier created WiFi configuration can be forgotten. The test is successful if the config could be forgotten and is removed from the list of saved configs. Disable status bar Please press the below button to disable the status bar and verify that quick settings, notifications and the assist gesture are no longer available.\n Next, press the button to reenable the status bar and verify that quick settings, notification and the assist gesture are available again.\n Please mark the test accordingly. Disable status bar Reenable status bar Disable keyguard Note that any device passwords that you might have set will be deleted during this test.\n Please press the below button to disable the keyguard. Press the power button on your device to switch off the screen. Then press the power button to switch the screen back on and verify that no keyguard was shown.\n Next, press the button to reenable the keyguard and repeat the above steps, this time verifying that a keyguard was shown again.\n Please mark the test accordingly. Disable keyguard Reenable keyguard Permissions lockdown Select each of the three grant states for the permission shown below in turn.\n Now open application settings, select Permissions, and verify if the following behaviour is observed.\n Allow: Permission is granted to the app and cannot be changed through the settings UI.\n Let user decide: Permission state can be changed through the settings UI.\n Deny: Permission is denied to the app and cannot be changed through the settings UI.\n Please mark the test accordingly. This test checks if the permissions state in settings UI is locked down according to the state set by the device owner. Before proceeding, check if com.android.cts.permissionapp (aka CtsPermissionApp) is installed in work profile by going to Settings > Apps. If not, please install the app before proceeding.\n\n This test checks if the permissions state in settings UI is locked down correctly depending on the state set by the profile owner. You must install %s (aka CtsPermissionApp). Grant Let user decide Deny %s is not profile owner. %s is not device owner. No activity found to handle intent: %s Open Application Settings Finish Device administrator settings Please press the Go button to open the Security page in Settings. Navigate to Device administrators and confirm that:\n \n - \"CTS Verifier - AfW Admin\" exists and is activated.\n - \"CTS Verifier - AfW Admin\" cannot be disabled.\n \n Use the Back button to return to this page. Disallow configuring Bluetooth Please press the Set restriction button to set the user restriction. Then press Go to open the Bluetooth page in Settings. Confirm that:\n \n - You cannot view Bluetooth devices in range.\n - You cannot edit, add or remove any already paired devices.\n \n Use the Back button to return to this page. Disallow configuring WiFi Please press the Set restriction button to set the user restriction. Then press Go to open the WiFi page in Settings. Confirm that:\n \n - You cannot view WiFi networks in range.\n - You cannot edit, add or remove any existing WiFi configs.\n \n Use the Back button to return to this page. Set restriction Go This test is mostly automated, but requires some user interaction. You can pass this test once the list items below are checked. Idle Mode Constraints Start test Verify the behaviour of the JobScheduler API for when the device is in idle mode. Simply follow the on-screen instructions. Turn the screen off and then back on in order to begin. Idle job does not execute when device is not idle. Idle job does execute when device is forced into idle. Charging Constraints Verify the behaviour of the JobScheduler API for when the device is on power and unplugged from power. Simply follow the on-screen instructions. Unplug the device in order to begin. Device not charging will not execute a job with a charging constraint. Device when charging will execute a job with a charging constraint. After the above test has passed, plug the device back in to continue. If the above failed, you can simply fail this test. Connectivity Constraints Verify the behaviour of the JobScheduler API for when the device has no access to data connectivity. Simply follow the on-screen instructions. Disable WiFi and Cellular data to begin. Device with no connectivity will not execute a job with an unmetered connectivity constraint. Device with no connectivity will not execute a job with an unmetered connectivity constraint. Device with no connectivity will still execute a job with no connectivity constraints. 3rd-party TV input test Verify that the bundled TV app launches via Intent and calls the proper API to discover 3rd-party TV inputs. Select the \"Launch TV app\" button and set up the newly installed TV input: \"CTS Verifier\". Setup activity must have been started. Select the \"Launch TV app\" button and tune to the \"Dummy\" channel from \"CTS Verifier\" input. If necessary, configure the channel to be visible. Tune command must be called. Verify that the overlay appears and displays the text \"Overlay View Dummy Text\" when you tune to the \"Dummy\" channel. Verify the TV app provides query results for 3rd-party input\'s channels and programs in global search results. Select the \"Launch EPG\" button and locate the \"Dummy\" channel. Do you see the programs named \"Dummy Program\" and their descriptions "Dummy Program Description" in the EPG? Yes TV app parental controls test Verify that the bundled TV app calls the parental controls API. Select the \"Launch TV app\" button and turn on the parental controls. If parental controls are on already, turn it off and on again. TV input service must have received ACTION_PARENTAL_CONTROLS_ENABLED_CHANGED broadcast. Select the \"Launch TV app\" button and block the \"Fake\" rating for \"CtsVerifier\" rating system in the parental control settings. If the rating system is disabled by default, enable it. If the \"Fake\" rating is already blocked, unblock it, save, and then block again. TV input service must have received ACTION_BLOCKED_RATINGS_CHANGED broadcast. Select the \"Launch TV app\" button; verify that the channel is blocked. Try to unblock the screen by entering PIN; verify that it\'s unblocked. Launch TV app Launch EPG CtsVerifier channel is not set up. Please set up before proceeding. TV app closed captions and multi-audio test Verify that the bundled TV app calls the multi-track API. Select the \"Launch TV app\" button. Verify that closed captions are off by default. Set closed caption language to English. Captions are enabled. The English closed caption track should be selected. Select the \"Launch TV app\" button. Verify that the audio track is English by default. Select Spanish audio track. The Spanish audio track should be selected. TV app time shift test This test verifies that the TV app invokes proper time shift APIs in the framwork. Press the \"Launch TV app\" button. Verify that the playback control is available. Pause the playback and then resume it. The playback should be resumed after pause. The playback position tracking should be activated. Press the \"Launch TV app\" button. Verify that the playback control is available. Rewind the playback and in a few seconds fast-forward it. The playback should be rewinded. The playback should be fast-forwarded. Press the \"Launch TV app\" button. Verify that the playback control is available. Seek to previous and then seek to next. The playback position should be moved to the previous position. The playback position should be moved to the next position. Overlay View Dummy Text Fake Screen Pinning Test Pressing next will prompt you to enter screen pinning, allow this app to enter screen pinning. Press Next to verify the app is pinned. Try to leave the app without unpinning the screen. Press next once you have verified you cannot leave. Use interactions defined by your device to unpin such as long pressing the back and overview button, then press next. All tests completed successfully. The screen was no longer pinned. Cannot start the test with the screen already pinned. Screen was not pinned. Screen was not unpinned. Could not exit screen pinning through API. Audio Devices Notifications Test Click the "Clear Messages" button then connect and disconnect a wired headset. Note if the appropriate notification messages appear below. Clear Messages CONNECT DETECTED DISCONNECT DETECTED Audio Routing Notifications Test Click on the "Play" button in the AudioTrack Routing Notifictions section below to start (silent) playback. Insert a wired headset. Observe a message acknowledging the rerouting event below. Remove the wired headset and observe the new routing message. Click on the "Stop" button to stop playback.\n Repeat the process with "Record" and "Stop" button in the AudioRecord Routing Notifications section below. Play Stop Record Stop AudioTrack Routing Notifications AudioRecord Routing Notifications AudioTrack rerouting AudioRecord rerouting Audio Loopback Latency Test This test requires the Loopback Plug. Please connect a Loopback Plug on the headset connector, and proceed with the instructions on the screen. The system will measure the input-output audio latency by injecting a pulse on the output, and computing the distance between replicas of the pulse. You can vary the Audio Level slider to ensure the pulse will feed back at adecuate levels. Repeat until a confidence level >= 0.6 is achieved. Please connect a "Loopback Plug" and press "Loopback Plug Ready". Loopback Plug Ready Set the audio level to a suitable value, then press Test button. It might require multiple tries until a confidence >= 0.6 is achieved. Audio Level Test Results... Audio Frequency Line Test The system will measure the frequency response of the left and right line outputs, by feeding them back thru the microphone conection with the loopback jack. This test requires the Loopback Plug. Please connect a Loopback Plug on the headset connector, and proceed with the instructions on the screen. Please connect a "Loopback Plug" and press "Loopback Plug Ready". Loopback Plug Ready Test Results... Audio Frequency Speaker Test This test requires an external USB reference microphone. Please connect the USB microphone and proceed with the instructions on the screen. The system will measure frequency response of the left and right speakers (if there are two speakers), or twice the response of the mono speaker. Please connect an USB reference microphone and press "USB Reference microphone ready" Waiting for USB microphone... USB Reference microphone ready USB Audio device detected\n\nPlease set up Device Under test in quiet room, and Microphone 20 cms perpendicular to center of screen, then press TEST "No USB Audio device detected. Please reconnect." Test Results... Audio Frequency Microphone Test This test requires an external USB reference microphone and external speakers. Please use the headphone connector to connect external speakers. Position the device 40 cms from the speakers and proceed with the instructions on the screen. The system will measure frequency response of the built in microphone. Please connect external speakers using the headphone connector. Please unplug any USB audio device (if any) External speakers ready ... Please position the speakers 40 cms from the device under test and press TEST 1 Test 1 Waiting for USB microphone... Please Connect USB microphone, position it next to the built in microphone in the device and press USB reference microphone USB Reference microphone ready USB Audio device detected\n\nPlease set up Device Under test in quiet room, and Microphone 20 cms perpendicular to center of screen, then press TEST "No USB Audio device detected. Please reconnect." Test 2 Results...