草庐IT

checkselfPermission

全部标签

安卓 M 权限 : checkSelfPermission() always returns -1

在我的应用程序中,我有一个需要多个权限的后台服务。因为MOS要求开发人员确保这些权限在运行时得到批准,所以我尝试使用以下代码检查权限。getApplicationContext().checkSelfPermission()我没有显示任何获得允许/拒绝的弹出窗口。相反,我在应用程序信息页面中允许了这些权限(在设置>应用程序>应用程序管理器>我的后台服务)但是尽管我在应用程序信息页面中启用了这些权限,上面的函数总是返回-1。如果我在应用程序信息页面上更改了权限批准,如何正确检查权限? 最佳答案 publicstaticfinalint

java - Android targetSdkVersion 23 checkSelfPermission方法

我在Android6.0(API23)中面临检查权限值的问题。即使从应用程序的设置中启用或禁用权限,也始终获得0值。下面是我采取的步骤。从设备设置->应用->我的应用->权限->禁用联系人权限手动禁用联系人权限。仍然在Android6.0中每次执行以下代码行时都得到0值。ContextCompat.checkSelfPermission(this,Manifest.permission.WRITE_CONTACTS)下面是我的代码。我在主启动器Activity类中定义//IdentifierforthepermissionrequestprivatestaticfinalintWRIT

android - contextcompat.checkselfPermission() 和 activitycompat.requestPermission() 有什么区别?

if(ContextCompat.checkSelfPermission(thisActivity,Manifest.permission.READ_CONTACTS)!=PackageManager.PERMISSION_GRANTED){//Shouldweshowanexplanation?if(ActivityCompat.shouldShowRequestPermissionRationale(thisActivity,Manifest.permission.READ_CONTACTS)){//Showanexplanationtotheuser*asynchronously

Android 的 ContextCompat.checkSelfPermission() 返回不正确的值

我正在尝试检查AndroidMarshmallow中用户授予/撤销的权限。不幸的是,ContextCompat.checkSelfPermission()(它是Context.checkCallingOrSelfPermission的变形器)似乎总是返回PackageManager.PERMISSION_GRANTED(0)如果你有无论权限的当前状态如何(例如,如果用户已撤销权限),都在您的list中包含该特定权限。我也尝试了someContext.checkCallingOrSelfPermission(),但结果是一样的。有人遇到过吗?我在nVidiaShield控制台上使用And

android - 尝试为 android M 实现相机权限,没有虚拟方法 checkSelfPermission

我尝试以这种方式实现相机权限:privatevoidcheckCameraPermissions(){if(checkCameraHardware(this)){if(checkSelfPermission(Manifest.permission_group.camera)!=PackageManager.PERMISSION_GRANTED){Crashlytics.log("Requestingcamerapermission");//Shouldweshowanexplanation?if(shouldShowRequestPermissionRationale(Manifest

android - checkSelfPermission 返回 PERMISSION_GRANTED 以撤销 targetSdkVersion <= 22 的权限

我正在研究AndroidMarshmallow的新权限模型,但遇到了一个我觉得很奇怪的问题。targetSdkVersion22的应用(因此尚未使用AndroidMarshmallow的新权限模型)在list中声明READ_CONTACTS权限:并尝试通过Intent.ACTION_PICK读取联系人的电话号码:Intentintent=newIntent(Intent.ACTION_PICK);intent.setType(ContactsContract.CommonDataKinds.Phone.CONTENT_TYPE);startActivityForResult(inten

android - 是否可以在最小 SDK < 23 上设置 checkSelfPermission?

Android-M中的新运行时权限要求至少23个API级别,但我的项目中仍然需要至少16个API级别。那么,如何让这段代码更加向前兼容呢?问候 最佳答案 UseContextCompat.checkSelfPermission(),ActivityCompat.requestPermissions(),和ActivityCompat.shouldShowPermissionRequestRationale(),来自support-v4库(v23或更高版本)。这些是向后兼容的;如果您在旧版本的Android上运行,它们会“做正确的事”

android - checkSelfPermission 方法在 targetSdkVersion 22 中不起作用

CheckSelfPermission方法没有按预期工作,它在android6.0(Marshmallow)中总是返回零。因为目标sdk是22并且我使用httpClient进行网络连接。以下是代码fragment。privatevoidinsertDummyContactWrapper(){ListpermissionsNeeded=newArrayList();finalListpermissionsList=newArrayList();if(!addPermission(permissionsList,Manifest.permission.ACCESS_FINE_LOCATIO
12