【问题标题】:Ionic 5 w/ Capacitor 'plugin_not_installed'Ionic 5 带电容器“plugin_not_installed”
【发布时间】:2021-03-10 16:13:31
【问题描述】:

带有电容器的 Ionic 5 使用插件“cordova.plugins.diagnostic”获得“plugin_not_installed”。尝试使用this doc 安装。

我有:

  • config.xml<plugin name="cordova.plugins.diagnostic" spec="^5.30.0" />
  • package.json
"cordova": {
    "plugins": {
      ...
      "cordova.plugins.diagnostic": {}
      ...
    }
 }

"dependencies": {
    ...
    "@ionic-native/diagnostic": "^5.30.0",
    ...
    "cordova.plugins.diagnostic": "^6.0.2",
    ...
}

这是我对cordova plugin list 的输出

com.googlemaps.ios 3.9.0 "Google Maps SDK for iOS"
cordova-plugin-add-swift-support 2.0.2 "AddSwiftSupport"
cordova-plugin-device 2.0.2 "Device"
cordova-plugin-geolocation 4.1.0 "Geolocation"
cordova-plugin-googlemaps 2.7.1 "cordova-plugin-googlemaps"
cordova-plugin-ionic-keyboard 2.2.0 "cordova-plugin-ionic-keyboard"
cordova-plugin-ionic-webview 4.2.1 "cordova-plugin-ionic-webview"
cordova-plugin-nativegeocoder 3.4.1 "NativeGeocoder"
cordova-plugin-splashscreen 5.0.2 "Splashscreen"
cordova-plugin-statusbar 2.4.2 "StatusBar"
cordova-plugin-whitelist 1.3.3 "Whitelist"
cordova.plugins.diagnostic 6.0.2 "Diagnostic"

并尝试过这些命令:

ionic capacitor sync ios
cordova build
ionic build
ionic cordova run ios -l

【问题讨论】:

    标签: ios cordova ionic-framework capacitor ionic5


    【解决方案1】:

    首先,在电容器项目中使用 Cordova 插件时,请使用此命令。

    npm install cordova.plugins.diagnostic @ionic-native/diagnostic
    

    参考docs for details

    其次,删除您已经创建的platformios 文件夹。 然后,对于 Capacitor,请遵循这些命令。

    ionic capacitor add ios
    ionic build
    ionic capacitor sync ios
    ionic capacitor open ios
    

    对于代码的任何后续更改,您只需运行

    ionic build && ionic capacitor sync ios(如果您添加了任何新的包/插件)

    ionic build && ionic capacitor copy ios(如果只更改了代码)

    您说您的项目是建立在电容器上的,那么您不必运行ionic cordova run ios 命令或任何cordova 命令

    参考这个command docs

    【讨论】:

    • 感谢您非常详细的回复。不幸的是,我开始收到此错误:mainviewcontroller.h' file not found。并且偶然发现了这个帖子:forum.ionicframework.com/t/… 看来GoogleMaps 插件与Capacitor 有问题。
    • 所以我想我必须切换到纯 Cordova 设置?
    • 一点也不..不要使用cordova插件..谷歌地图也可以成功集成到电容器应用程序中..但是您必须使用web SDK而不是cordova的本机SDK插件使用..阅读这篇文章joshmorony.com/google-maps-in-ionic-2-native-or-web也,按照这个教程freakyjolly.com/…
    • 所以,我实际上是按照这两篇相同的文章到达了现在的位置。我不确定我是否错误地遵循了它们,但实际上我从 Angular 自己那里找到了这个 Web SDK 实现,作为 Material 的一部分。由于我使用的是 Angular 项目,因此使用它似乎很有意义。 github.com/angular/components/tree/master/src/google-maps
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-04-12
    • 2021-01-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-03-18
    相关资源
    最近更新 更多