如何在Google Play App Store中设置具有系统级安全性的公共可用Xamarin Forms Android应用,例如删除所有应用缓存(freestorage)。
已经尝试过向清单添加权限。不知道我是否与我忘记添加的系统用户ID,Api等级23或更高,或者这些选项仅适用于危险但不适用于签名系统级别。
我看到许多新应用能够做到这一点。
亲切的问候,
答案 0 :(得分:0)
如何在Google Play App Store中设置具有系统级安全性的公共可用Xamarin Forms Android应用,例如删除所有应用缓存(freestorage)。
要在Api版本23之后注册危险的Android系统权限,我们需要在运行时请求权限。您可以在官方文档Requesting Permissions at Run Time中查看:
如果设备运行的是Android 6.0或更高版本,并且您的应用的目标SDK为23或更高:应用必须列出清单中的权限,并且必须在应用运行时请求其所需的每个危险权限。用户可以授予或拒绝每个权限,即使用户拒绝权限请求,应用也可以继续以有限的功能运行。
对于应用缓存,我认为你特意指向文件夹data/data/<packagename>/cache
中的缓存,然后无法从其他应用中删除它,因为所有应用都在沙盒中运行。 API 23中不再支持用于执行此操作的旧API,即Marshmallow。 Marshmallow中不推荐使用权限<uses-permission android:name="android.permission.CLEAR_APP_CACHE"/>
。所以我个人认为,对于内部存储缓存和外部存储缓存,它们现在只能由应用程序本身或系统清除。您还可以在此处查看讨论:How to delete other applications cache from our android app?
。
但通常开发人员通常会创建用于数据缓存其应用程序的文件夹,因为始终建议开发人员自己维护缓存文件并保持合理的空间限制,例如1MB。所以像这个应用程序的图像一样,通常保存在开发人员创建的文件夹中。可以删除此文件夹下的文件,您可能需要获得权限,例如READ_EXTERNAL_STORAGE
和WRITE_EXTERNAL_STORAGE
这样做。