我正在开发一个Android应用程序,我希望通过该应用程序将数据传递到手机上的另一个应用程序。我已经能够使用显式自定义意图来做到这一点。但我的问题是我希望这种通信安全,即我传递的数据应仅适用于那个特定的应用程序。为此,我尝试在两个应用程序中使用包名称权限:
<permission android:name="com.example.ex1.ex2" android:label="ex1" android:protectionLevel="signature" />
但我担心的是,使用相同的包名称,任何其他应用程序仍然可以与我的应用程序进行交互并获取此数据。我的数据是安全的(信用卡详细信息等)因此我想确保没有应用程序可以读取我指定的目标应用程序之外的数据。我怎样才能做到这一点?任何帮助将不胜感激:)
答案 0 :(得分:2)
如果第二个应用程序是由您开发的,那么您必须拥有它的发布密钥签名。如果你有密钥库,你知道它是hash
您可以查看是否hash is correct。
但请注意KitKat(API 19)下的Adroid版本上的bug