내가 SE 전화를 가지고 있지 않지만, 나는 그것의 시스템 덤프를 바라 보 고했습니다
- 을 AOSP 소스에서 com.android.internal.telephony 인터페이스에서 두 개의 내부 방법이 있습니다 : enableDataConnectivity가() 및 disableDataConnectivity(). 이 인터페이스와 구현은 시스템의 일부입니다.
- Phone.apk 앱의 일부인 com.android.phone.PhoneInterfaceManager에는 위와 동일한 이름의 두 가지 메소드가 있습니다. 이 메소드는/시스템을 호출합니다.
- 소니가 com.android.phone.PhoneInterfaceManager.enableDataConnectivity()를 수정 했으므로 sharedPreferences에 저장된 부울을 추가로 확인합니다. false 인 경우 enableDataConnectivity() 메서드는 항상 com.android.internal.telephony의 disableDataConnectivity()를 호출합니다.
- 물론이 부울 값은 "MMS & 데이터"환경 설정 화면을 통해 제어됩니다. "com.android.phone_preferences"환경 설정 컨테이너에 저장되며 pref 키는 "data_service_key"입니다. 또한이 체크 박스를 전환하면 settings 활동이 자동으로 com.android.internal.telephony에서 메소드를 호출하여 데이터 상태를 즉시 전환합니다.
그런 다음, 당신의 롬에 같은 데이터 연결 위젯 또는 무언가를 추가하려면 :
- 당신은 루트가 필요합니다.
- 위의 설정에 액세스하려면 "android.uid.phone"sharedUserId가 필요합니다.
나는 Phone.apk를 수정하는 것이 가장 좋을 것이라고 생각하여 데이터를 활성화/비활성화하는 특별한 의도를 포착합니다. data_service_key boolean을 설정하고 com.android.internal.telephony에서 메소드 중 하나를 호출합니다. 이것은 매우 쉬운 일이며, 그러면 위젯, 앱 및 기타 물건을 매우 쉽게 만들 수 있습니다. 그들은 특별한 의도를 사용합니다.
아니 표준 안드로이드 API를 통해 아니 –
동의하지만, 질문에 나는 벤더 특정 설정을 언급했다. – Wizard79