8.7 发布—WinterCG 兼容性第一部分
了解更多

在应用程序中添加原生代码

有多种方法可以在 Android 应用程序中添加原生代码。可以添加 .jar.aar 文件,或者在 App_Resources/Android/libsApp_Resources/Android/src 中分别添加 Java/Kotlin 源代码文件。

bash
App_Resources/
├─ Android/
  ├─ app.gradle
  ├─ libs/
    ├─ HelloAndroidLib.aar  # Android Archive
    └─ HelloJavaLib.jar     # Java Archive
  └─ src/
     └─ main/
       ├─ java/
         ├─ com/example/HelloKotlin.kt  # Kotlin source code
         └─ com/example/HelloJava.java  # Java source code
       └─ res/
└─ ... more

添加 Java 代码

App_Resources/Android/src/main/java 中定义 Java 文件。

java
// HelloJava.java
package com.example;

public class HelloJava {
  public String getString() {
    return "Hello from Java!";
  }
}

鉴于上面的示例,JavaScript 或 TypeScript 代码可以使用完整的类名来引用 Java 代码

typescript
const helloJava = new com.example.HelloJava()
console.log('Java says: ' + helloJava.getString())
// prints: Java says: Hello from Java!

注意

使用 TypeScript 时,可能需要 生成类型,或者将顶级包名称声明为 any

typescript
declare const com: any

添加 Kotlin 代码

配置 Kotlin

启用 Kotlin

使用 Kotlin 时,必须先启用它。

App_Resources/Android/gradle.properties 中设置 useKotlin=true(如果不存在,请创建此文件)。

ini
useKotlin=true

配置 Kotlin 版本

App_Resources/Android/before-plugins.gradle 中配置应用程序中要使用的 Kotlin 版本(如果不存在,请创建此文件)。

groovy
project.ext {
  kotlinVersion = "1.9.10"
}

使用 Kotlin

App_Resources/Android/src/main/java 中定义 Kotlin 文件。

kotlin
// HelloKotlin.kt
package com.example

class HelloKotlin {
  val hello = "Hello from Kotlin!"
}

鉴于上面的示例,JavaScript 或 TypeScript 代码可以使用完整的类名来引用 Kotlin 代码

typescript
const helloKotlin = new com.example.HelloKotlin()
console.log('Kotlin says: ' + helloKotlin.hello)
// prints: Kotlin says: Hello from Kotlin!

注意

使用 TypeScript 时,可能需要 生成类型,或者将顶级包名称声明为 any

typescript
declare const com: any