在新的 api 版本的 android (API 23) 中,我们现在需要在运行时请求权限。如果请求的权限是应用程序级别或活动,我有一个非常基本的疑问。根据此文档,您必须在每次执行需要该权限的操作时检查您是否拥有该权限。那么这是否意味着在应用程序级别授予权限,但建议在活动级别进行检查?此外,建议按以下方式检查权限:
// Assume thisActivity is the current activity
int permissionCheck = ContextCompat.checkSelfPermission(thisActivity,
Manifest.permission.WRITE_CALENDAR);
在这里,我们清楚地看到权限的检查是通过传递活动的上下文来完成的。如果给定的权限是在应用程序级别,为什么我们需要活动上下文而不是应用程序上下文?(尽管该方法有可能在内部从活动上下文中获取应用程序上下文。)