在我的应用之间共享数据(如IOS中的KeyChain)

问题描述 投票:2回答:1

我正在寻找Android中类似于IOS中的KeyChain的机制。基本上,我需要能够在应用程序的“系列”之间共享存储数据。这意味着其他应用程序将无法访问此数据。另外,如果以后卸载任何应用程序,则该共享存储也应该存在。因此,使用应用程序数据目录和SharedId并不是解决方案。同样,由于相同的原因,共享首选项也不是很好。

看过Content Provider-看起来这不是我所需要的。还查看了AndroidKeyStore / KeyChain,但看起来这与IOS KeyChain绝对不同。

有任何建议吗?

android android-contentprovider
1个回答
0
投票

我也试图为此使用KeyChain,但找不到方法。最终,我决定使用Content Provider并将导出的标志设置为false,并结合一个权限属性,以在共享相同签名密钥的两个应用之间实现安全的数据共享。

这是来自提供者属性文档:https://developer.android.com/guide/topics/manifest/provider-element.html#prmsn

android:exportedfalse:该提供程序不可用于其他应用程序。设置android:exported =“ false”可以限制对您的应用程序提供者的访问。只有具有与提供者相同的用户ID(UID)的应用程序,或已通过android:grantUriPermissions元素临时授予对提供者访问权限的应用程序才可以访问它。您可以设置android:exported =“ false”,但仍可以通过使用权限属性设置权限来限制对提供者的访问。

© www.soinside.com 2019 - 2024. All rights reserved.