我已经浏览了关于这两个主题(自定义权限和应用签名)的可用文档和 SO 帖子,我的理解是:
- 使用相同密钥签名的应用可以使用签名级权限
- 自定义权限只能在一个地方定义,并且需要先安装声明权限的应用
- 如果应用共享相同的签名,则可以在多个应用中定义自定义权限
现在我需要在一个应用程序中定义一些组件,这些组件将在另一个使用相同密钥签名的应用程序中使用,但据此我不需要定义自定义权限并且可以进行签名检查
如果该功能仅适用于使用与提供应用程序相同签名的应用程序,则您可以通过使用签名检查来避免定义自定义权限。当您的一个应用程序向您的另一个应用程序发出请求时,第二个应用程序可以在遵守请求之前验证两个应用程序是否使用相同的证书进行签名。
我不明白签名检查是什么意思,有没有办法在该组件上放置一个检查清单,或者我必须以编程方式检查它?如果是后者,不是更好地在两个应用程序中定义自定义权限(以否定安装顺序问题)吗?