我需要在查询Android日历中的事件之前检查权限。 要做到这一点,Android工作室警告我需要在查询之前进行检查。 自动生成的代码是这片:使用android.content.Context.checkPermission检查权限时出现空指针异常
if (ActivityCompat.checkSelfPermission(this, Manifest.permission.READ_CALENDAR) != PackageManager.PERMISSION_GRANTED) {
System.out.println("NO ACCESS TO CALENDAR!! Abort mission, abort mission!!");
}
当试图运行它,我得到这个错误:
Attempt to invoke virtual method 'int
android.content.Context.checkPermission(java.lang.String, int, int)' on a null object reference
所以很清楚,什么是空在这一点上,我试图以不同的方式获得应用程序的上下文,但它仍然是一样的错误。 我想是这样的代码,其他的事情,这是应该处理的目标低于Android的6:
if (ContextCompat.checkSelfPermission(this, Manifest.permission.READ_CALENDAR) != PackageManager.PERMISSION_GRANTED) {
ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.READ_CALENDAR},
MY_PERMISSIONS_REQUEST_READ_CONTACTS);
}
仍然得到同样的错误,任何人可以帮助我吗?
从哪里调用?这个对象涉及到 –
它是一个单独的类,控制器:公共类DummyData延伸活动{...} –
以及你应该使用AppCompatActivity类不是活动 –