OSDN Git Service

Device show "No SIM card" and then showing carrier name during boot
authorBill Lin <lbill@google.com>
Thu, 5 Jul 2018 09:48:49 +0000 (17:48 +0800)
committerBill Lin <lbill@google.com>
Wed, 17 Oct 2018 19:29:12 +0000 (19:29 +0000)
commit6c7ccabd1d5979f0a2800df516163469cf0d556f
treee9eb7e25435c61141df340f9bdd44e278b46f9af
parent4deb5938085e0b1690450b5ed706e1a200899ba8
Device show "No SIM card" and then showing carrier name during boot

Keyguard default show NO SIM earlier than Telephony/Subscription callback
Refactor CarrierText & KeyguardUpdateMonitor
 - Replace setup flag by resource attr(showMissingSim/showAirplaneMode)
 - Remove setDiplayFlags API, and add mTelephonyCapable flag
 - Implement MSG_TELEPHONY_CAPABLE in KeyguardUpdateMonitor
 - Default do not show AirplaneMode & NO_SIM label unless define in xml

Bug: 111732320
Test: atest SystemUITests
      atest frameworks/base/packages/SystemUI/tests/src/com/android/keyguard/KeyguardUpdateMonitorTest.java
      Manual:
         1) Insert SIM and reboot device, only show "No Service"->"Operator"
 2) Remove SIM and reboot device, only show "No SIM"
 3) Enable AirplaneMode reboot, only show "Airplane mode"
 4) Insert SIM and trigger sysui crash, state same as 1)
 5) Remove SIM and trigger sysui crash, state same as 2)
 6) Enable APM trigger sysui crash, state same as 3)
 7) Enable APM & WFC, turn on wifi in keyguard showing
    -> "Airplane mode" -> "" -> "WiFi Calling"
 8) Enable APM & WFC, turn off wifi in keyguard showing
    -> "Wifi Calling" -> "Airplane mode"

Change-Id: I4459997420484431751a4c088aa3856724affe6a
Merged-In: I4459997420484431751a4c088aa3856724affe6a
packages/SystemUI/res-keyguard/values/attrs.xml
packages/SystemUI/res/layout/keyguard_status_bar.xml
packages/SystemUI/res/values/attrs.xml
packages/SystemUI/src/com/android/keyguard/CarrierText.java
packages/SystemUI/src/com/android/keyguard/KeyguardUpdateMonitor.java
packages/SystemUI/src/com/android/keyguard/KeyguardUpdateMonitorCallback.java
packages/SystemUI/src/com/android/systemui/qs/QSFooterImpl.java
packages/SystemUI/tests/src/com/android/keyguard/KeyguardUpdateMonitorTest.java