【问题标题】:Android M requestPermissions(ACCESS_COARSE_LOCATION),don't show dialog?Android M requestPermissions(ACCESS_COARSE_LOCATION),不显示对话框?
【发布时间】:2015-10-22 10:14:42
【问题描述】:

AndroidManifest.xml 已添加:

<uses-permission android:name="android.permisssion.ACCESS_COARSE_LOCATION"/>

ActivityCompat.requestPermissions()

int permissionCheck = ContextCompat.checkSelfPermission(this,
                Manifest.permission.ACCESS_COARSE_LOCATION);
if (!(permissionCheck == PackageManager.PERMISSION_GRANTED)) {

    // Should we show an explanation?
    if (ActivityCompat.shouldShowRequestPermissionRationale(this,
            Manifest.permission.ACCESS_COARSE_LOCATION)) {

    } else {
        // do request the permission
        ActivityCompat.requestPermissions(this,
                new String[]{Manifest.permission.ACCESS_COARSE_LOCATION},
                8);
    }
}

onRequestPermissionsResult()

@Override
public void onRequestPermissionsResult(int requestCode,
        String permissions[], int[] grantResults) {
    switch (requestCode) {
        case 8: {
            // grantResults[0] = -1
            if (grantResults.length > 0
                && grantResults[0] == PackageManager.PERMISSION_GRANTED) {

            } else {

            }
            return;
        }
    }
}

requestPermissions(ACCESS_COARSE_LOCATION) 不显示任何对话框,onRequestPermissionsResult 返回 -1。

相反,requestPermissions(Manifest.permission.CAMERA) 工作正常。

另一个问题Android M 6.0 - Manifest.permission.WRITE_SETTINGS Error

【问题讨论】:

标签: android permissions runtime android-6.0-marshmallow


【解决方案1】:

uses-permission 名称中有错字,权限为 3 个

从此改变:

<uses-permission android:name="android.permisssion.ACCESS_COARSE_LOCATION"/>

到这里:

<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-02-05
    • 1970-01-01
    • 2015-10-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多