无法解析符号 'ActivityCompat' 和 'content'
Cannot resolve symbol 'ActivityCompat' and 'content'
我是 android 的新手,正在学习如何实施基于位置的服务,但遇到以下错误 -
Cannot resolve symbol 'ActivityCompat'
in line 'import android.support.v4.app.ActivityCompat;'
Cannot resolve symbol 'content'
in the line 'import android.support.v4.content.ContextCompat;'
经过一些研究,我发现您需要将以下内容添加到 gradle.build 文件 compile 'com.android.support:support-v4:23.0.0'
所以我这样做了,但我仍然遇到同样的错误。我试过了,还是没有。
如何修复错误?
这是我要关注的link
https://www.tutorialspoint.com/android/android_location_based_services.htm#
这是我的 java 文件 -
package com.example.location;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.content.pm.PackageManager;
import android.Manifest;
import android.app.Activity;
import android.os.Bundle;
import android.support.v4.content.ContextCompat; # error
import android.support.v4.app.ActivityCompat; #error
import android.view.View;
import android.widget.Button;
import android.widget.Toast;
import android.app.Activity;
// Remaining code
这是我的gradle
apply plugin: 'com.android.application'
android {
compileSdkVersion 29
buildToolsVersion "29.0.2"
defaultConfig {
applicationId "com.example.location"
minSdkVersion 15
targetSdkVersion 29
versionCode 1
versionName "1.0"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation 'androidx.appcompat:appcompat:1.1.0'
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'androidx.test:runner:1.2.0'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
implementation 'com.android.support:support-compat:+'
implementation 'com.android.support:appcompat-v7:+'
implementation 'com.android.support:support-v4:26.1.0'
}
'''
你必须使用 androidx 类:
添加依赖:
implementation "androidx.core:core-ktx:+"
并更改您的导入:
import android.support.v4.app.ActivityCompat -> import androidx.core.app.ActivityCompat
import android.support.v4.content.ContextCompat -> import androidx.core.content.ContextCompat
同时删除 build.gradle
支持库依赖项:
//implementation 'com.android.support:support-compat:+'
//implementation 'com.android.support:appcompat-v7:+'
//implementation 'com.android.support:support-v4:26.1.0'
删除此
import android.support.v4.content.ContextCompat; # error
import android.support.v4.app.ActivityCompat; #error
并添加如下行,因为您使用的是 androidx
import androidx.appcompat.app.AppCompatActivity;
或者在删除以上两行后,只需单击 AppCompatActivity
上的 alt+enter
这在我这边为 AndroidX
工作
build.gradle
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'androidx.appcompat:appcompat:1.1.0'
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
}
位置活动
package com.example.location;
import androidx.appcompat.app.AppCompatActivity;
import androidx.core.app.ActivityCompat;
对于本机反应
运行 项目文件夹中的命令。
npx jetify
我是 android 的新手,正在学习如何实施基于位置的服务,但遇到以下错误 -
Cannot resolve symbol 'ActivityCompat' in line 'import android.support.v4.app.ActivityCompat;'
Cannot resolve symbol 'content' in the line 'import android.support.v4.content.ContextCompat;'
经过一些研究,我发现您需要将以下内容添加到 gradle.build 文件 compile 'com.android.support:support-v4:23.0.0'
所以我这样做了,但我仍然遇到同样的错误。我试过了,还是没有。
如何修复错误?
这是我要关注的link
https://www.tutorialspoint.com/android/android_location_based_services.htm#
这是我的 java 文件 -
package com.example.location;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.content.pm.PackageManager;
import android.Manifest;
import android.app.Activity;
import android.os.Bundle;
import android.support.v4.content.ContextCompat; # error
import android.support.v4.app.ActivityCompat; #error
import android.view.View;
import android.widget.Button;
import android.widget.Toast;
import android.app.Activity;
// Remaining code
这是我的gradle
apply plugin: 'com.android.application'
android {
compileSdkVersion 29
buildToolsVersion "29.0.2"
defaultConfig {
applicationId "com.example.location"
minSdkVersion 15
targetSdkVersion 29
versionCode 1
versionName "1.0"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation 'androidx.appcompat:appcompat:1.1.0'
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'androidx.test:runner:1.2.0'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
implementation 'com.android.support:support-compat:+'
implementation 'com.android.support:appcompat-v7:+'
implementation 'com.android.support:support-v4:26.1.0'
}
'''
你必须使用 androidx 类:
添加依赖:
implementation "androidx.core:core-ktx:+"
并更改您的导入:
import android.support.v4.app.ActivityCompat -> import androidx.core.app.ActivityCompat
import android.support.v4.content.ContextCompat -> import androidx.core.content.ContextCompat
同时删除 build.gradle
支持库依赖项:
//implementation 'com.android.support:support-compat:+'
//implementation 'com.android.support:appcompat-v7:+'
//implementation 'com.android.support:support-v4:26.1.0'
删除此
import android.support.v4.content.ContextCompat; # error
import android.support.v4.app.ActivityCompat; #error
并添加如下行,因为您使用的是 androidx
import androidx.appcompat.app.AppCompatActivity;
或者在删除以上两行后,只需单击 AppCompatActivity
alt+enter
这在我这边为 AndroidX
工作build.gradle
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'androidx.appcompat:appcompat:1.1.0'
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
}
位置活动
package com.example.location;
import androidx.appcompat.app.AppCompatActivity;
import androidx.core.app.ActivityCompat;
对于本机反应
运行 项目文件夹中的命令。
npx jetify