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原创谢绝转载

相关推荐
2501_916008899 小时前
iOS应用开发工具全面解析:如何选择与优化开发效率
ide·vscode·ios·objective-c·个人开发·swift·敏捷流程
执明wa13 小时前
LayoutInflater详解: XML是如何变成View的?
android·xml·开发语言·android studio
404_coder13 小时前
源码视角下的 Android 开机流程:从 Zygote、SystemServer 到 Launcher
android
二流小码农13 小时前
鸿蒙开发:以登录案例了解代码架构MVVM
android·ios·harmonyos
用户693717500138414 小时前
从代码生产者到 AI 协作者:软件工程师的角色重构
android·前端·后端
GitLqr15 小时前
别在 Flutter 的 main() 里乱锁屏幕方向,小心 iPad 分屏功能被你搞没了
android·flutter·ios
sg_knight15 小时前
MySQL 存储过程详解:从入门到实战
android·数据库·mysql·database·dba·关系型数据库·db
爱笑鱼15 小时前
Binder(四):ioctl(BINDER_WRITE_READ) 之后,事务怎样到达目标进程?
android
AFinalStone15 小时前
Android 7系统休眠唤醒(二)开机全链路—BootROM到Launcher
android·电源管理·休眠唤醒