我的 App A 定义了一个保护级别为签名的权限。这个应用程序启动了一个属于应用程序B的服务。它重复调用startService(intent)(只定义了intent类名来调用该服务)。
我需要确保只有应用程序 B 接收到 onStartCommand() 而不是其他流氓应用程序(如果有人试图进行逆向工程并创建具有相同名称的服务等)。即使在 App B 的 list 中,我是否也定义了相同的权限?
<permission
android:name="my.android.permissions.MY_PERM"
android:protectionLevel="signature" />
<uses-permission android:name="my.android.permissions.MY_PERM" />
此权限已在 App A 的 list 中定义。
最佳答案
将这些行放入应用程序 B 的 list 中
<permission
android:protectionLevel="signature"
android:name="my.android.permissions.MY_PERM"/>
<uses-permission android:name="my.android.permissions.MY_PERM" />
<!-- define an activity which can only be started through internal code -->
<service android:name="..."
android:permission="my.android.permissions.MY_PERM" >
...
</service>
和
<uses-permission android:name="my.android.permissions.MY_PERM" />
进入应用程序 A 的 list
关于android - 让两个应用程序使用相同的签名相互通信,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22213813/