安卓将短信存储在mmssms.db
中,其中uid和gid是收音机(1001)。如果应用程序希望读取sms,应该调用sms内容提供商来做。我的问题是哪个过程有MmsSmsProvider
?我不知道这个过程应该有一个很高的许可(根或无线电组)。我想这个过程可能是system_server
或com.android.phone
。由于system_server
属于无线电组,com.android.phone
的uid和gid是无线电。
我阅读了MmsSmsProvider.java
包中的源代码com.android.providers.telephony
。我还找到了TelephonyProvider.apk
in /system/app
。但我仍然没有找到启动TelephonyProvider.apk
的进程
非常感谢
发布于 2015-09-07 03:56:55
正如TelephonyProvider的Android所定义的:
r6/xref/packages/providers/TelephonyProvider/AndroidManifest.xml
18 package="com.android.providers.telephony"
19 coreApp="true"
20 android:sharedUserId="android.uid.phone">
android.uid.phone被PackageManagerService中的规则认为是RADIO_UID:
r6/xref/frameworks/base/services/core/java/com/android/server/pm/PackageManagerService.java#1304
mSettings.addSharedUserLPw("android.uid.phone", RADIO_UID,
ApplicationInfo.FLAG_SYSTEM|ApplicationInfo.FLAG_PRIVILEGED);
应用程序是由系统在早期启动阶段启动的,因为android.uid.phone与TelephonyStack相关联,这对于任何无线电设备来说都是非常重要的。
https://stackoverflow.com/questions/32430766
复制相似问题