簡體   English   中英

無法解析符號“ActivityCompat”和“內容”

[英]Cannot resolve symbol 'ActivityCompat' and 'content'

我是 android 新手,正在學習如何實現基於位置的服務,但遇到以下錯誤 -

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

無法解析“import android.support.v4.content.ContextCompat;”行中的符號“內容”

在做了一些研究后,我發現您需要將以下內容添加到 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'
}
'''

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

對於反應原生

在項目文件夾中運行命令。

npx jetify

這適用於我的AndroidX

構建.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;

由於您使用的是 androidx,因此您必須添加此行。

import androidx.core.app.ActivityCompat;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM