Xamarin表单系统级Android(java)应用程序Google Play

时间:2017-07-29 11:12:45

标签: android caching permissions xamarin.forms system

如何在Google Play App Store中设置具有系统级安全性的公共可用Xamarin Forms Android应用,例如删除所有应用缓存(freestorage)。

已经尝试过向清单添加权限。不知道我是否与我忘记添加的系统用户ID,Api等级23或更高,或者这些选项仅适用于危险但不适用于签名系统级别。

我看到许多新应用能够做到这一点。

亲切的问候,

1 个答案:

答案 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_STORAGEWRITE_EXTERNAL_STORAGE这样做。