无法解析符号“ActivityCompat”和“内容”

新手上路,请多包涵

我是 android 的新手,正在学习如何实现基于位置的服务,但遇到以下错误 -

无法解析行“import android.support.v4.app.ActivityCompat;”中的符号“ActivityCompat”

无法解析“import android.support.v4.content.ContextCompat;”行中的符号“content”

在做了一些研究后,我发现你需要将以下内容添加到 gradle.build 文件中 compile 'com.android.support:support-v4:23.0.0'

所以我这样做了,但我仍然遇到同样的错误。我试过干净仍然没有。

我该如何修复错误?

这是我要关注的链接

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

这是我的毕业典礼

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'
}
'''

原文由 Rakshith Jk 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.5k
2 个回答

你必须使用 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'

原文由 Gabriele Mariotti 发布,翻译遵循 CC BY-SA 4.0 许可协议

删除这个

import android.support.v4.content.ContextCompat; # error
import android.support.v4.app.ActivityCompat;    #error

并添加如下行,因为您正在使用 androidx

 import androidx.appcompat.app.AppCompatActivity;

或者在删除以上两行后,只需单击 alt+enter on AppCompatActivity

原文由 YuvrajsinhJadeja 发布,翻译遵循 CC BY-SA 4.0 许可协议

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