Android(Java)项目支持Kotlin语言开发

Android(Java)项目通过相关Kotlin设置后,允许同时使用Java语言和Kotlin语言进行开发代码的。

示例环境:

Android Studio Giraffe | 2022.3.1 Patch 3
Java 8
Kotlin 1.9.20

设置Kotlin选项:

第一步:在项目根目录下build.gradle配置,增加对Kotlin 1.9.20版本的支持:id ‘org.jetbrains.kotlin.android’ version “1.9.20” apply false ,示例代码:

plugins {id 'com.android.application' version '8.1.3' apply falseid 'org.jetbrains.kotlin.android' version "1.9.20" apply false  //支持Kotlin
}

示例截图:
Android(Java)项目支持Kotlin语言

第二步: app目录下build.gradle配置,增加对Kotlin 1.9.20版本的支持
1)在plugins{} 中添加:id ‘org.jetbrains.kotlin.android’ ,示例代码:

plugins {id 'com.android.application'id 'org.jetbrains.kotlin.android'
}

2)在android{}中添加kotlinOptions选项,示例代码:

kotlinOptions {jvmTarget = "1.8"
}

3)在dependencies{}中添加kotlin,示例代码:

//Android(Java)项目支持Kotlin语言
implementation "org.jetbrains.kotlin:kotlin-stdlib:1.9.20"
// 支持 Java 8
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.9.20"
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.9.20"

查看build.gradle (:app)整体示例代码:

plugins {id 'com.android.application'id 'org.jetbrains.kotlin.android'   //支持Kotlin
}android {namespace 'com.devtps.ddsdprintdemo'compileSdk 33defaultConfig {applicationId "com.devtps.ddsdprintdemo"minSdk 24targetSdk 33versionCode 1versionName "1.0"testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"}buildTypes {release {minifyEnabled falseproguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'}}compileOptions {sourceCompatibility JavaVersion.VERSION_1_8targetCompatibility JavaVersion.VERSION_1_8}//支持KotlinkotlinOptions {jvmTarget = "1.8"}}dependencies {implementation fileTree(dir: 'libs', include: ['*.jar', '*.aar'])implementation "androidx.appcompat:appcompat:1.4.1"implementation 'com.google.android.material:material:1.8.0'implementation 'androidx.constraintlayout:constraintlayout:2.1.4'testImplementation 'junit:junit:4.13.2'androidTestImplementation 'androidx.test.ext:junit:1.1.5'androidTestImplementation 'androidx.test.espresso:espresso-core:3.5.1'//Android(Java)项目支持Kotlin语言implementation "org.jetbrains.kotlin:kotlin-stdlib:1.9.20"// 支持 Java 8implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.9.20"implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.9.20"}

通过以上设置后,Android(Java)项目支持Java语言和Kotlin语言开发。

测试Kotlin开发

当添加Activity时,可以选择java语言或Kotlin语言创建了,如下图所示:
Activity同时支持java语言和Kotlin语言

说明Android(Java)项目同时支持Java语言和Kotlin语言了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/660690.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

LeetCode 110.平衡二叉树(Java/C/Python3/Go实现含注释说明,Easy)

标签 树深度优先搜索递归 题目描述 给定一个二叉树,判断它是否是高度平衡的二叉树。 本题中,一棵高度平衡的二叉树定义为: 一个二叉树每个节点的左右两个子树的高度差的绝对值不超过1。 原题:LeetCode 110.平衡二叉树 思路及…

FSNotes for Mac v6.7.1中文激活:轻量级笔记管理工具

FSNotes for Mac,一款专为Mac用户打造的轻量级笔记管理工具,让您的笔记管理变得简单而高效。 FSNotes for Mac v6.7.1中文激活版下载 它采用Markdown文件格式,让您轻松创建和编辑富文本笔记,无需担心格式问题。同时,FS…

浅论汽车研发项目数字化管理之道

随着汽车行业竞争不断加剧,汽车厂商能否快速、高质地推出贴合市场需求的新车型已经成为车企竞争的重要手段,而汽车研发具备流程复杂、专业领域多、协作难度大、质量要求高等特点,企业如果缺少科学健全的项目管理体系,将会在汽车研…

vue3 jspdf,element table 导出excel、pdf,横板竖版分页

多个表格需要,pdf需要的格式与原本展示的表格样式不同 1.创建一个新的表格,设置pdf需要的样式,用vue的h函数放入dom中 2.excel用xlxs插件直接传入新建el-table的dom,直接导出 3.pdf导出类似excel黑色边框白底黑字的文件,把el-t…

口袋实验室--使用AD2学习频谱参数测试

目录 1. 简介 2. 频谱相关参数 2.1 频谱相关基本概念 2.1.1 采样时间间隔 2.1.2 采样频率 2.1.3 采样点数 2.1.4 采样时间长度 2.1.5 谱线数 2.1.6 奈奎斯特频率 2.1.7 频谱分辨率 2.1.8 最高分析频率 2.1.9 频谱泄露 2.2 窗函数 2.2.1 AD2的窗函数 2.2.2 测试矩…

基于uniapp vue3.0 uView 做一个点单页面(包括加入购物车动画和左右联动)

1、实现效果&#xff1a; 下拉有自定义组件&#xff08;商品卡片、进步器、侧边栏等&#xff09;源码 2、左右联动功能 使用scroll-view来做右边的菜单页&#xff0c;title的id动态绑定充当锚点 <scroll-view :scroll-into-view"toView" scroll-with-animation…

linus下Anaconda创建虚拟环境pytorch

一、虚拟环境 1.创建 输入下面命令 conda create -n env_name python3.8 输入y 2.激活环境 输入 conda activate env_name 二、一些常用的命令 在Linux的控制平台 切换到当前的文件夹 cd /根目录/次目录 查看conda目录 conda list 查看pip目录 pip list查看历史命…

【JAVA】javadoc,如何生成标准的JAVA API文档

目录 1.什么是JAVA DOC 2.标签 3.命令 1.什么是JAVA DOC 当我们写完JAVA代码&#xff0c;别人要调用我们的代码的时候要是没有API文档是很痛苦的&#xff0c;只能跟进源码去一个个的看&#xff0c;一个个方法的猜&#xff0c;并且JAVA本来就不是一个重复造轮子的游戏&#…

基于JSP/Servlet校园二手交易平台

摘 要 本系统采用JSP/servlet技术&#xff0c;是使用Java编程语言编写的一套校园网二手交易平台软件。系统采用的是最近几年流行的B/S开发模式&#xff0c;以互联网方式运行&#xff0c;服务器端只需要安装本系统&#xff0c;而客户端用户只要可以上网&#xff0c;就可以非常方…

软考之零碎片段记录(二十九)+复习巩固(十七、十八)

学习 1. 后缀式&#xff08;逆波兰式&#xff09; 2. c/c语言编译 类型检查是语义分析 词法分析。分析单词。如单词的字符拼写等语法分析。分析句子。如标点符号、括号位置等语言上的错误语义分析。分析运算符、运算对象类型是否合法 3. java语言特质 即时编译堆空间分配j…

idea生成双击可执行jar包

我这里是一个生成xmind,解析sql的一个main方法,可以通过配置文件来修改有哪些类会执行 我们经常会写一个处理文件的main方法,使用时再去寻找,入入会比较麻烦,这里就可以把我们写过的main方法打成jar包,放到指定的目录来处理文件并生成想要的结果 1.写出我们自己的main方法,本地…

记一次使用Notepad++正则表达式批量替换SQL语句

目录 一、需求二、解决方案三、正则解析 一、需求 存在如下SQL建表脚本&#xff1a; CREATE TABLE "BUSINESS_GOODS" ( "ID" VARCHAR(32) NOT NULL, "GOODS_CODE" VARCHAR(50), "GOODS_NAME" VARCHAR(100), ... NOT CLUSTER PRIMARY…