我有App A已经将保护级别的权限定义为签名。此应用程序启动属于App B的服务。它重复调用startService(intent)(仅定义intent类名称以调用服务)。
我需要确保只有App B接收onStartCommand()而不是其他流氓应用程序(如果有人试图进行逆向工程并创建具有相同名称的服务等)。即使在App B的清单中,我是否定义了相同的权限?
<permission
android:name="my.android.permissions.MY_PERM"
android:protectionLevel="signature" />
<uses-permission android:name="my.android.permissions.MY_PERM" />
此权限已在App A的清单中定义。
答案 0 :(得分:0)
将这些行放入应用B的清单
<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的清单