Reconnect to DAService after binding is dead
- When the DO/PO process crashes twice with a short interval, AM gives up and the binding will be "died". Once binding is in this state it'll never be re-connected. (Still, DO/PO can disable and re-enable their DAS to force DPMS to bind again though.) - Detect this and re-connect after one hour. - Back-off time will be exponentially increased and never reset until DPMS explicitly re-connects, which happens when: -- the device rebooted, -- the user stopped and re-started, or -- the DAS is disabled and re-enabled. Test: adb shell am instrument -e class com.android.server.am.PersistentConnectionTest -w com.android.frameworks.servicestests Test: adb shell am instrument -e class com.android.server.devicepolicy.DevicePolicyConstantsTest -w com.android.frameworks.servicestests Test: adb shell am instrument -e class com.android.server.devicepolicy.DevicePolicyManagerTest -w com.android.frameworks.servicestests Test: cts-tradefed run cts-dev --skip-device-info --skip-preconditions --skip-system-status-check com.android.compatibility.common.tradefed.targetprep.NetworkConnectivityChecker -a armeabi-v7a -l VERBOSE -m CtsDevicePolicyManagerTestCases -t com.android.cts.devicepolicy.DeviceAdminServiceDeviceOwnerTest Test: cts-tradefed run cts-dev --skip-device-info --skip-preconditions --skip-system-status-check com.android.compatibility.common.tradefed.targetprep.NetworkConnectivityChecker -a armeabi-v7a -l VERBOSE -m CtsDevicePolicyManagerTestCases -t com.android.cts.devicepolicy.DeviceAdminServiceProfileOwnerTest Bug 37711907 Change-Id: Ie0b227a94e6ce85d72a969a4dea1020baf734e2f
Loading
Please register or sign in to comment