Language
한국어
프로그래밍 관련 질문 사항을 올려주세요. 도움을 받기 위해서는 최대한 질문을 상세하게 작성하고 도움을 준 분께는 감사의 표시를 합시다.
  • 안드로이드 정복 310~318페이지 - 퍼미션 관련 질문
  • 조회 수: 522, 2016-11-25 19:12:30(2016-11-25)
  • 예시에 나온 실습 소스를 직접 테스트를 해 보았으나

    대화상자나 팝업이 뜨지 않는 상황입니다.


    아래는 317페이지의 예시입니다.

    @Override
    public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) {
    super.onRequestPermissionsResult(requestCode, permissions, grantResults);

    switch(requestCode) {
    case READ_CONTACT_CODE:
    if (grantResults.length > 0 && grantResults[0] ==
    PackageManager.PERMISSION_GRANTED) {
    Toast.makeText(this, "사용자가 퍼미션 허가함",
    Toast.LENGTH_SHORT).show();
    outContact();
    } else {
    Toast.makeText(this, "사용자가 퍼미션 거부함",
    Toast.LENGTH_SHORT).show();
    // todo : 다른 대책을 찾거나 에러 처리한다.
    }
    }
    }

    onRequestPermissionsResult가 제대로 작동하지 않는 것이 아닐까 생각이 듭니다.

    grantResults[0]가 -1이 리턴이 되고 있습니다.

    제가 제대로 이해한 것이 맞다면 매니페스트에 권한을 주지 않아도

    허가를 요청하는 과정으로 해결이 되는 것으로 압니다.


    1.

    혹시나 퍼미션 정책 이슈로 그런 것인지 싶은데 Dangerous Permission이 아닌 경우에는

    이 체크가 되지 않는 것인가요??


    2.

    compileSdkVersion 문제라고 하는 분들도 있더군요.

    아래는 제 그래들 소스 입니다.

    android {
    compileSdkVersion 25
    buildToolsVersion "25.0.0"
    defaultConfig {
    applicationId "com.example.jongkook.chap03_output_permission2"
    minSdkVersion 21
    targetSdkVersion 25
    versionCode 1
    versionName "1.0"
    testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
    release {
    minifyEnabled false
    proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    }
    }
    }

    dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
    exclude group: 'com.android.support', module: 'support-annotations'
    })
    compile 'com.android.support:appcompat-v7:25.0.0'
    testCompile 'junit:junit:4.12'
    }


    'shouldShowRequestPermissionRationale'가 제대로 작동안하는

    AlertDialog가 뜨지 않는 이유가 궁금합니다.

    무엇이 문제일까요??




댓글 0

현재 게시판 기능 테스트중입니다. 디자인이나 게시판 구성은 언제든지 예고없이 변경될 수 있습니다.