Android Studio编译旧的app代码错误及解决方法

'android.injected.build.density' is deprecated.

The option 'android.injected.build.density' is deprecated.

It was removed in version 8.0 of the Android Gradle plugin.

Density property injection from Android Studio has been removed.

解决

app/build.gradle

apply plugin: 'com.android.application'

改成

plugins {

id 'com.android.application'

}

Deprecated Gradle features were used in this build, making it incompatible with Gradle 7.0.

Deprecated Gradle features were used in this build, making it incompatible with Gradle 7.0. FAILURE: Build failed with an exception.

  • What went wrong:
    A problem occurred configuring project ':app'.

Failed to notify project evaluation listener.

'org.gradle.api.file.RegularFileProperty org.gradle.api.file.ProjectLayout.fileProperty(org.gradle.api.provider.Provider)'

  • Try:

    Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

  • Get more help at https://help.gradle.org

BUILD FAILED in 46s

Deprecated Gradle features were used in this build, making it incompatible with Gradle 7.0.

Use '--warning-mode all' to show the individual deprecation warnings.

See https://docs.gradle.org/6.8/userguide/command_line_interface.html#sec:command_line_warnings

解决

build.gradle

buildscript {

apply from: 'dependencies.gradle'

dependencies {

classpath gradlePlugins.android

}

}

改成

dependencies {

classpath 'com.android.tools.build:gradle:7.1.1'

}

Failed to apply plugin 'com.android.internal.version-check'.

Failed to apply plugin 'com.android.internal.version-check'. Minimum supported Gradle version is 7.2. Current version is 6.8. If using the gradle wrapper, try editing the distributionUrl in xx/gradle/wrapper/gradle-wrapper.properties to gradle-7.2-all.zip

解决

删除.idea .gradle

点击Android studio中的 File->Invalidate cache删除cache

如果不存在gradle/wrapper/gradle-wrapper.properties

则创建此目录mkdir -p gradle/wrapper

并新建 gradle/wrapper/gradle-wrapper.properties

如果存在则直接修改

distributionBase=GRADLE_USER_HOME

distributionPath=wrapper/dists

zipStoreBase=GRADLE_USER_HOME

zipStorePath=wrapper/dists

distributionUrl=https://services.gradle.org/distributions/gradle-7.2-all.zip

Could not get unknown property 'versions' for extension 'android' of type

Could not get unknown property 'versions' for extension 'android' of type com.android.build.gradle.internal.dsl.BaseAppModuleExtension.

解决

修改app/build.gradle文件中的compileSdkVersion versions.compileSdk为compileSdkVersion 28

Could not get unknown property 'libraries' for object of type

Could not get unknown property 'libraries' for object of type org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler.

解决

修改app/build.gradle

这行compile libraries.supportAppCompat

改为

implementation('com.android.support:support-v4:23.0.+')

Could not find method compile() for arguments [directory 'libs'] on object of type org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandle

org.gradle.internal.metaobject.AbstractDynamicObject$CustomMessageMissingMethodException: Could not find method compile() for arguments [directory 'libs'] on object of type org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandle

解决

build.gradle中

compile fileTree(include: ['.jar'], dir: 'libs')
改为
implementation fileTree(dir: "libs", include: ["
.jar"])

SDK Build Tools version (28.0.3) is ignored

The specified Android SDK Build Tools version (28.0.3) is ignored, as it is below the minimum supported version (30.0.3) for Android Gradle Plugin 7.1.1.

Android SDK Build Tools 30.0.3 will be used.

解决

app/build.gradle中

buildToolsVersion '28.0.3'

改为

buildToolsVersion "30.0.3"

错误: 程序包android.support.v7.app不存在

程序包android.support.v7.app不存在 import android.support.v7.app.NotificationCompat;

错误: 程序包android.support.v4.app.NotificationCompat不存在

解决

app/build.gradle的dependencies中添加

implementation('com.android.support:support-v4:23.0.+')

找不到符号 ContextCompat.startForegroundService

找不到符号

ContextCompat.startForegroundService(context,todayStepIntent);

符号: 方法 startForegroundService(Context,Intent)

位置: 类 ContextCompat

解决

代码ContextCompat.startForegroundService(context,todayStepIntent);改成

context.startForegroundService(todayStepIntent);

AAPT: error: style attribute 'attr/colorPrimary

ERROR:TodayStepCounter/app/src/main/res/values/styles.xml:4:5-9:13: AAPT: error: style attribute 'attr/colorPrimary (aka com.example.android.todaystepcounter:attr/colorPrimary)' not found.

解决

app/build.gradle中加

implementation 'com.android.support:appcompat-v7:26.1.0'

注意如果是比较旧的安卓程序,有些代码比较旧只能用v7:26.1.0,不能用

implementation 'com.android.support:appcompat-v7:28.0.0'

作者:帅得不敢出门 csdn原创谢绝转载

相关推荐
炒空心菜菜9 分钟前
MapReduce 实现 WordCount
java·开发语言·ide·后端·spark·eclipse·mapreduce
未来之窗软件服务24 分钟前
医院药品展示大屏:开启多维度服务与管理新窗口—仙盟创梦IDE
ide·智慧大屏幕·信发系统·仙盟创梦ide
千里马-horse1 小时前
android vlc播放rtsp
android·media·rtsp·mediaplayer·vlc
難釋懷1 小时前
Android开发-文本输入
android·gitee
MonkeyKing_sunyuhua2 小时前
在 Visual Studio Code (VSCode) 中配置 MCP(Model Context Protocol)
ide·vscode·编辑器
smileNicky2 小时前
在 VSCode 中运行 Vue.js 项目
ide·vue.js·vscode
Growthofnotes3 小时前
VSCode中Node.js 使用教程
ide·vscode·node.js
志存高远663 小时前
(面试)Android各版本新特性
android
遗憾皆是温柔3 小时前
MyBatis—动态 SQL
java·数据库·ide·sql·mybatis
IT从业者张某某3 小时前
信奥赛-刷题笔记-队列篇-T3-P3662Why Did the Cow Cross the Road II S
android·笔记