【发布时间】:2021-09-01 07:21:40
【问题描述】:
我正在将我的项目的目标 sdk 更改为 30,但很少担心在代码中使用 ALL FILE ACCESS 权限。根据谷歌的说法,未经任何适当使用而使用此权限的应用将从 Play 商店中删除。但我的应用程序需要访问外部 sd 卡存储。我们正在该位置创建文件夹并将所有与应用程序相关的文件放在那里。我们没有任何应用程序服务器,因此我们甚至无法实现范围存储,因为使用范围存储,应用程序内部存储中的所有数据都将被删除。一旦这些数据被删除,它可以从应用程序服务器重新同步并恢复所有数据,但我们不能这样做,我们的应用程序处于离线状态,所以我们正在使用这个外部存储。客户支持团队将在那里管理此存储并将文件手动推送到此位置。我们所有的设备配置都将保存在那里。因此,即使应用程序被删除,我们也不希望它被删除。那么我应该在这里做什么?我应该继续在 android 代码中实现 ALL FILE ACCESS 权限吗?应用会被移除吗?
【问题讨论】:
-
您的应用创建的文件对其他应用有意义吗?如果没有,将它们与卸载一起删除是更好的做法。如果您确实需要,请在您的应用程序中使用适当的备份/恢复功能来导出/导入数据。话虽如此,您仍然可以使用shared storage
-
access to the external sd card storage. We are creating folder in that location两次不清楚。你的意思是可移动的micro sd卡吗?具体是哪个位置? -
with scoped storage all the data in the apps internal storage will be deleted不,您可以在清单文件中设置一个标志,这样做会在卸载时询问用户是否应保留私人数据。 -
The customer support team will be there who will manage this storage and push files to this location manually.我不明白。我认为该应用程序会创建它的文件。他们怎么能等于支持有什么? -
我们的应用生成的应用文件对其他应用没有意义。但是这些文件包含一些硬件的配置文件,如果我们选择范围存储,卸载应用程序将删除所有这些文件,但我们不能删除这些文件并丢失我们所有的配置数据。