Capacitor Android 插件指南
为 Android 构建 Capacitor 插件需要编写 Java 或 Kotlin 来与 Android SDK 交互。
开始
首先,按照插件指南的开始部分所述生成一个插件。
接下来,在 Android Studio 中打开 echo/android/。然后导航到插件的 .java 文件,该文件的位置取决于您在创建插件时使用的插件 ID 和插件类名。
例如,对于 ID 为 com.domain.echo、插件类名为 Echo 的插件,您可以在 android/src/main/java/com/domain/echo/EchoPlugin.java 找到 .java 文件。
使用 Kotlin
Capacitor 默认使用 Java,但您也可以选择使用 Kotlin。
生成插件后,在 Android Studio 中右键单击 Java 插件类,从菜单中选择"Convert Java file to Kotlin file"选项。Android Studio 将引导您完成项目的 Kotlin 支持配置。完成后,再次右键单击 Java 类并重新选择转换选项,将其转换为 Kotlin 类。
插件基础
Capacitor 的 Android 插件是一个简单的 Java 类,继承自 com.getcapacitor.Plugin,并带有 @CapacitorPlugin() 注解。它包含一些带有 @PluginMethod() 注解的方法,供 JavaScript 调用。
生成插件后,您可以打开以生成时选择的插件类名命名的文件,开始编辑。
简单示例
在生成的示例中,有一个简单的 echo 插件,包含一个 echo 函数,该函数简单地返回传入的值。
这个示例展示了 Capacitor 插件的几个核心组件:从插件调用中接收数据,以及将数据返回给调用者。
EchoPlugin.java
package android.plugin.test;
import com.getcapacitor.JSObject;
import com.getcapacitor.Plugin;
import com.getcapacitor.PluginCall;
import com.getcapacitor.PluginMethod;
import com.getcapacitor.annotation.CapacitorPlugin;
@CapacitorPlugin(name = "Echo")
public class EchoPlugin extends Plugin {
@PluginMethod()
public void echo(PluginCall call) {
String value = call.getString("value");
JSObject ret = new JSObject();
ret.put("value", value);
call.resolve(ret);
}
}