按 "Reset app preferences" 后我的应用程序的所有权限都被撤销

All the permissions of my app are revoked after pressing "Reset app preferences"

我开发了一个应用程序并支持 Android 6.0。当我在设置 -> 应用程序 -> 重置应用程序首选项中重置应用程序首选项时,我的应用程序的所有权限都被撤销并且应用程序不会重新启动。撤销权限后未能重新启动应用程序可能会导致许多意外崩溃。

我该如何处理?

当我手动撤销其权限(设置 -> 应用程序 -> 我的应用程序 -> 权限)时,应用程序重新启动。

我可以重现问题。我已就此提交 an issue

How should I handle this case?

因为这是一个概率相当低的事件(有多少用户会找到那个选项,更不用说跳过警告对话框并实际去做了?),就个人而言,我不会太担心它。

由于没有记录在案的 setOnPermissionChangeListener()ACTION_DUDE_YOUR_PERMS_WUZ_WHACKED 或任何有关权限更改的信息,因此您在这里可以做的事情并不多。让 checkSelfPermission() 调用尽可能接近调用受保护的 API 将有助于减少 window 您面临权限被背后撤销风险的时间。