Android Studio创建HelloWorld(kotlin版本)

本文目录

新建HelloWorld项目

创建项目的细节就不说了,大部分都会。可以参考:Android Studio创建Hello word超详细

关闭代理,配置镜像仓库地址

关闭代理有三个地方。

第一个地方 ,Proxy Settings提示框。选择No。

第二个地方C:\Users\你的windows用户名\.gradle 目录下,有个gradle.properties文件,如下图。

用notepad++打开,把代理内容前面加#,都注释掉。如下图:

第三个地方 ,在Android studio打开File, Settings, Appearance & Behavior, System Settings, HTTP Proxy。如下图,选择No proxy, 点击OK。

代理彻底关闭之后,配置镜像才起作用。

找到settings.gradle文件,如下图:

在settings.gradle文件中,找到repositories 增加下面的4行:

gradle 复制代码
        maven { url 'https://maven.aliyun.com/repository/google' }    // 替代google()
        maven { url "https://maven.aliyun.com/repository/central" }
        maven { url 'https://maven.aliyun.com/repository/public' }  // 替代mavenCentral()
        maven { url 'https://maven.aliyun.com/repository/gradle-plugin' } // 插件仓库

其他默认仓库也不要注释掉,保留。

完整如下:

gradle 复制代码
pluginManagement {
    repositories {
        maven { url 'https://maven.aliyun.com/repository/google' }        // 替代google()
        maven { url "https://maven.aliyun.com/repository/central" }
        maven { url 'https://maven.aliyun.com/repository/public' }       // 替代mavenCentral()
        maven { url 'https://maven.aliyun.com/repository/gradle-plugin' } // 插件仓库
        google()
        mavenCentral()
        gradlePluginPortal()
    }
}
dependencyResolutionManagement {
    repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
    repositories {
        maven { url 'https://maven.aliyun.com/repository/google' }        // 替代google()
        maven { url "https://maven.aliyun.com/repository/central" }
        maven { url 'https://maven.aliyun.com/repository/public' }       // 替代mavenCentral()
        maven { url 'https://maven.aliyun.com/repository/gradle-plugin' } // 插件仓库
        google()
        mavenCentral()
    }
}

rootProject.name = "GradleDemo"
include ':app'

解决AGP、SDK、依赖库版本冲突

  • 删除无用的testImplementationandroidTestImplementation,androidTestImplementation 依赖。
  • 调整依赖库的版本,和AGP匹配。下面是我的配置:
    Android Studio版本:2022.3.1
    gradle: gradle-8.0-bin.zip
    Android Gradle plugin: 8.1.4
    调好的gradle文件
groovy 复制代码
plugins {
    id 'com.android.application'
    id 'org.jetbrains.kotlin.android'
}

android {
    namespace 'com.example.gradledemo'
    compileSdk 34

    defaultConfig {
        applicationId "com.example.gradledemo"
        minSdk 24
        targetSdk 34
        versionCode 1
        versionName "1.0"

        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
        vectorDrawables {
            useSupportLibrary true
        }
    }

    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
        }
    }
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
    kotlinOptions {
        jvmTarget = '1.8'
    }
    buildFeatures {
        compose true
    }
    composeOptions {
        kotlinCompilerExtensionVersion '1.4.3'
    }
    packaging {
        resources {
            excludes += '/META-INF/{AL2.0,LGPL2.1}'
        }
    }
}

dependencies {

    implementation 'androidx.core:core-ktx:1.12.0'
    implementation 'androidx.activity:activity-compose:1.7.2'
    implementation platform('androidx.compose:compose-bom:2023.10.01')
    implementation 'androidx.compose.ui:ui'
    implementation 'androidx.compose.ui:ui-graphics'
    implementation 'androidx.compose.ui:ui-tooling-preview'
    implementation 'androidx.compose.material3:material3'

}

调好的项目我上传到Gitee上,https://gitee.com/zhagnjinaaaa/kotlin-hello-world 可以下载参考。

生成apk

打开gradle面板,找到里面有个三角形的小窗口,点击。如下图:

弹出的窗口,输入assembleDebug,选择:app:assembleDebug点击执行,如下图:

打包完成后,可以看到apk文件,如下图:

相关推荐
传奇开心果编程35 分钟前
【Jetpack Compose基础语法学与练】第8课 rememberSaveable,页面旋转/系统重建保留状态
android·学习·ui·kotlin·android jetpack
>Andre<1 小时前
UFS5.0标准中文全译·卷一:范围、术语与架构
android·linux·嵌入式硬件
事圆则缓2 小时前
Java 8 Lambda、Stream、Optional 与 Android 边界:从回调语法到运行时兼容
android·java
mmsx2 小时前
Android 地图十万要素不卡顿:空间网格 + 渐进式加载的移动端实践
android·大数据·opengl
Godikov3 小时前
Android 工业终端保活实战:前台服务 + 开机自启 + 更新自启的三重保障
android
字节暗面4 小时前
SO加固强度怎么量化?腾讯ACE与FairGuard静态分析实测
android·逆向
传奇开心果编程5 小时前
【Jetpack Compose基础语法学与练】第7课 if条件渲染 + 列表基础(LazyColumn)
学习·ui·kotlin·android jetpack
ai2work5 小时前
ch12 系统能力接入:TTS、剪贴板、分享、文件选择器
kotlin
终端安全笔记5 小时前
描述文件、企业证书、MDM 不是三个名字,是三层
android·ios·智能手机
字节暗面5 小时前
一次游戏安全SO静态分析记录:腾讯ACE与FairGuard加固强度对比
android·逆向工程·游戏加固