繁体   English   中英

如何将我的电容器插件导入 Ionic android 应用程序

[英]How to import my capacitor plugin to Ionic android app

我需要在我的 Ionic 应用程序中执行一些 android 本机代码,所以我尝试创建一个支持 android 的电容器插件。 我使用本指南在我的 Ionic 应用程序中添加了电容器: https://capacitor.ionicframework.com/docs/getting-started/with-ionic/ 我从本指南创建了一个插件: https://capacitor.ionicframework.com/docs/plugins/

这是我使用插件的代码:

// home.page.ts
import {Component} from '@angular/core';

import {Plugins} from '@capacitor/core';

@Component({
    selector: 'app-home',
    template: `
<ion-button (click)="onEchoBtnClick()">Submit</ion-button>
`
})
export class HomePage {

    src: string | undefined;

    constructor() {
    }

    onEchoBtnClick() {
        const {Echo} = Plugins;

        const echoPlugin = Echo;

        echoPlugin.echo({
            value: '333'
        }).then(res => {
            alert('ok ' + JSON.stringify(res));
        }).catch(err => {
            alert('err ' + err);
        });
    }

}

然后我构建 Ionic 应用程序: ionic build并运行:

npx cap copy
npx cap sync
npx cap open android

并在 Android Studio 中运行该项目。 当我运行该项目时,出现错误: Cannot read property 'echo' of undefined 我认为这是因为我需要在 MainActivity class 中添加插件:

// Other imports...
import com.example.myapp.EchoPlugin;

public class MainActivity extends BridgeActivity {
  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    // Initializes the Bridge
    this.init(savedInstanceState, new ArrayList<Class<? extends Plugin>>() {{
      // Additional plugins you've installed go here
      // Ex: add(TotallyAwesomePlugin.class);
      add(EchoPlugin.class);
    }});
  }
}

问题是我收到错误“包 com.example.myapp.EchoPlugin 不存在”。 我的插件位于“/echo”目录中。 android 项目位于“/android”目录下。 如何将 Echo 插件导入 android 项目?

我用这个 [https://capacitorjs.com/docs/android/custom-code][1]

com/example/myapp/的这条路径android/app/src/main/java中,我在 MainActivity.java 的同一级别创建了我的 PluginClass

完美调用customFunction。:[1]:https://capacitorjs.com/docs/android/custom-code

我遇到了同样的问题,我解决了从 Android Studio 重建项目的问题,因此它获得了插件的新编译配置。

Go 到 Android Studio构建菜单并单击“制作项目

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM