解决Android studio环境配置出现的问题-minSdk、程序包不存在的问题

目录

一、问题一:"the minSdk version should not be declared in the android manifest file"

1、全部报错:​编辑

2、报错原因:

3、解决过程:

二、问题二:“程序包org.apache.http不存在”

1、报错如下:

2、解决方法:


一、问题一:"the minSdk version should not be declared in the android manifest file"

1、全部报错:

2、报错原因:

minSdk版本不应该在android清单文件中声明。

3、解决过程:

点击上图中蓝色字体“Remove minSdkVersion and sync project"

再点击下图红圈内容

红圈内里面有minSdkVersion的定义,将其删除(如果有targetSdkVersion的定义,也要一并删除)删除后如下图:

二、问题二:“程序包org.apache.http不存在”

1、报错如下:

2、解决方法:

在项目build.gradle中,defaultConfig上边,加入代码:useLibrary 'org.apache.http.legacy'这样问题就解决了!

### 如何在 Android Studio 中使用 Kotlin DSL 编写构建脚本 #### 修改项目配置文件以支持 Kotlin DSL 为了使项目能够识别并编译 Kotlin 脚本,需更改 `build.gradle` 文件名为 `build.gradle.kts`。这一步骤告知 IDE 及 Gradle 构建工具应按照 Kotlin 语法规则解析该文件[^2]。 ```kotlin // build.gradle.kts (Project Level) plugins { id("com.android.application").version("7.0.0").apply(false) } ``` #### 将 Groovy 语法转换成 Kotlin 语法 当完成上述更名操作之后,在初次尝试同步时可能会遇到错误提示;这是因为旧版本的 Groovy 语法再适用新环境下的解释器。此时应当着手将原有的 Groovy 表达方式逐步调整为兼容于 Kotlin 的形式。 例如: - **Groovy** ```groovy android { compileSdkVersion 30 defaultConfig { applicationId "com.example.myapp" minSdkVersion 21 targetSdkVersion 30 versionCode 1 versionName "1.0" } } ``` - **Kotlin** ```kotlin // build.gradle.kts (Module Level) import org.jetbrains.kotlin.config.KotlinCompilerVersion plugins { id("com.android.application") kotlin("android") } android { compileSdk = 30 defaultConfig { applicationId = "com.example.myapp" minSdk = 21 targetSdk = 30 versionCode = 1 versionName = "1.0" testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" } compileOptions { sourceCompatibility(JavaVersion.VERSION_1_8) targetCompatibility(JavaVersion.VERSION_1_8) } kotlinOptions { jvmTarget = JavaVersion.VERSION_1_8.toString() } } dependencies { implementation(fileTree(mapOf("dir" to "libs", "include" to listOf("*.jar")))) implementation(kotlin("stdlib")) ... } ``` 通过以上方法可以实现从传统基于 Groovy 的 Gradle 配置向现代 Kotlin DSL 方式的迁移过程。 #### 实现特定功能——自动重启应用程序前终止其进程 对于希望在每次启动应用之前先关闭现有实例的需求,则可以在模块级别的 `build.gradle.kts` 添加如下代码片段来定义自定义任务[^1]: ```kotlin tasks.register<Exec>("stopApp") { val packageName = "your.package.name.here" commandLine( "adb", "shell", "am", "force-stop", packageName ) } preBuild.dependsOn(tasks.named("stopApp")) ``` 此段代码创建了一个新的执行命令型的任务 (`stopApp`) ,用于调用 ADB 命令停止指定包名的应用程序,并将其设置为依赖项之一使得每当触发预构建阶段(`preBuild`)都会先行运行这个清理工作流。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

edgarrrr

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值