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 插件类,从菜单中选择"将 Java 文件转换为 Kotlin 文件"选项。Android Studio 将引导你配置项目以支持 Kotlin。完成后,再次右键点击 Java 类并重新选择转换选项,将其转换为 Kotlin 类。
插件基础
Android 上的 Capacitor 插件是一个简单的 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);
}
}