【发布时间】:2017-02-22 20:38:46
【问题描述】:
如何创建两个应用程序“A”创建文件而只有应用程序“B”可以读取文件的 Android 应用程序?乍一看,Context.grantUriPermission 似乎是个窍门,因为它允许像这样限制对某些包的访问:
//grant permision for app with package "packageName", eg. before starting other app via intent
context.grantUriPermission(packageName, uri, Intent.FLAG_GRANT_WRITE_URI_PERMISSION | Intent.FLAG_GRANT_READ_URI_PERMISSION);
(以上来自“How to use support FileProvider for sharing content to other apps?”)
不幸的是,任何人都可以使用给定的包名称创建应用。所以这种限制方式不是很安全。
是否有更安全的方法来限制文件访问?也许通过检索调用应用程序(在本例中为应用程序“B”)的公钥证书?
【问题讨论】:
标签: android android-contentprovider android-fileprovider