无法解析符号 ActivityCompat

Cannot Resolve symbol ActivityCompat

无法解析符号 'ActivityCompat' 我正在尝试通过我的应用程序发送短信。 我也添加了 AndroidManifest.xml 的使用权限

A​​ctivityCompat 没有解析帮我解决。

编译SDK版本为25

    try {
        SmsManager smsManager = SmsManager.getDefault();
        smsManager.sendTextMessage(phoneNo, null, message, null, null);
        if (ContextCompat.checkSelfPermission(sendSMS2.this, Manifest.permission.SEND_SMS)
                != PackageManager.PERMISSION_GRANTED) {
            // Permission is not granted
            // Ask for permision
            ActivityCompat.requestPermissions(this,new String[] { Manifest.permission.SEND_SMS}, 1);
        }

这里是 build.gradle

apply plugin: 'com.android.application'

android {
    compileSdkVersion 25
    buildToolsVersion '25.0.0'

    defaultConfig {
        applicationId "com.example.somme.testproj2"
        minSdkVersion 19
        targetSdkVersion 25
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    compile 'com.android.support:design:25.0.0'
    compile 'com.android.support.constraint:constraint-layout:1.0.2'
    compile 'com.android.support:appcompat-v7:+'

}

您尚未在项目中添加支持 v4 appcompat 库,

A​​ctivityCompat class 属于 v4 支持库,从这里查看文档

https://developer.android.com/reference/android/support/v4/app/ActivityCompat

将以下库添加到您的模块中build.gradle

compile 'com.android.support:support-compat:+'

尝试使用这个,

compile 'com.android.support:support-compat:25.0.0'

万一有人转安卓x了, 导入

androidx.core.app.ActivityCompat;

而不是

android.support.v4.app.ActivityCompat;

如果对哪个新的 androidx class 替换旧的支持库 class 感到困惑,请参考 this androidx 迁移 class 映射并搜索 class你要替换替换成对应的androidxclass.

P.S。 - 我知道这本身并不能回答这个问题。只是把它留给其他可能因为问题标题而登陆这里的人。