Android 找不到方法 requestPermissions(MainActivity,String[],int)

在申请权限时报错
Error:(294, 27) 错误: 找不到符号
符号: 方法 requestPermissions(MainActivity,String[],int)
位置: 类 ActivityCompat
查过之后说可能是v4包的问题, 我尝试修改gradle编译版本, 也没有作用
代码部分:
private void checkPermissions(String[] needPermissions) {

    //获取权限列表
    List<String> needRequestPermissonList = findDeniedPermissions(needPermissions);
    if (null != needRequestPermissonList
            && needRequestPermissonList.size() > 0) {
        //list.toarray将集合转化为数组
        ActivityCompat.requestPermissions(this, needRequestPermissonList.toArray(new String[needRequestPermissonList.size()]),
                PERMISSON_REQUESTCODE);
    }
}

gradle的依赖部分:
dependencies {

    implementation fileTree(include: ['*.jar'], dir: 'libs')
    //noinspection GradleCompatible
    implementation 'com.android.support:appcompat-v7:26.0.0-beta1'
    implementation 'com.android.support.constraint:constraint-layout:1.0.2'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'com.android.support.test:runner:0.5'
    androidTestImplementation 'com.android.support.test.espresso:espresso-core:2.2.2'
    compile 'com.android.support:recyclerview-v7:26.0.0-alpha1'
    compile 'com.squareup.okhttp:okhttp:2.7.5'
    compile 'com.google.code.gson:gson:2.2.4'
    compile 'com.squareup.okhttp3:okhttp:3.4.2'
    compile 'com.zhy:autolayout:1.4.5'
    compile 'com.tencent.mm.opensdk:wechat-sdk-android-with-mta:+'
    compile 'com.youth.banner:banner:1.4.10'
    compile 'org.greenrobot:eventbus:3.1.1'
    compile 'com.github.bumptech.glide:glide:3.7.0'
    compile 'com.github.PhilJay:MPAndroidChart:v3.0.0-beta1'
    compile 'com.aliyun.dpa:oss-android-sdk:2.8.0'
    compile 'com.lzy.widget:imagepicker:0.6.1'
    compile 'com.xingliuhua:xlhratingbar_lib:1.0.1'
    compile 'com.tencent.mm.opensdk:wechat-sdk-android-with-mta:+'
    compile 'com.kyleduo.switchbutton:library:1.4.4'
    compile 'org.quanqi:CircularProgress:1.0.2'
    compile 'com.zhy:okhttputils:2.6.2'
    compile 'cn.aigestudio.wheelpicker:WheelPicker:1.1.2'
}

请问我现在应该怎么做, 才能不出现这个问题?

阅读 6.4k
2 个回答
新手上路,请多包涵

在gradle里添加以下代码
configurations.all {

    resolutionStrategy {
        force 'com.android.support:support-v4:27.1.1'
    }
}

目的是强制使用这个版本的包, 解决

新手上路,请多包涵
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题