Uniapp 可以通過 DCloud 提供的 API 調用 Java 接口。具體步驟如下:
public class MyJavaInterface {
public void myMethod(String param1, int param2) {
// 執行具體的操作
}
}
@JApi
注解標記需要調用的方法。public class MyJavaInterface {
@JApi
public void myMethod(String param1, int param2) {
// 執行具體的操作
}
}
uni.requireNativePlugin
方法調用 Java 接口。uni.requireNativePlugin('MyPlugin').myMethod('param1', 2, function(res) {
console.log(res);
});
以上代碼中,MyPlugin
是在原生端注冊的插件名,myMethod
是 Java 類中的方法名。
在 Android 原生端的 UniAppMainActivity
類中,注冊插件。
import io.dcloud.feature.sdk.DCUniMPSDK;
public class UniAppMainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
DCUniMPSDK.getInstance().initialize(this);
DCUniMPSDK.getInstance().registerJsApi(MyJavaInterface.class);
setContentView(R.layout.activity_main);
}
}
通過 DCUniMPSDK.getInstance().registerJsApi
方法注冊 Java 類。
需要注意的是,以上代碼僅為示例,具體實現可能因項目結構和功能需求略有不同,請根據實際情況進行調整。