Ionic 如何在Capacitor应用程序中设置Cordova插件变量?

o0lyfsai  于 2022-12-20  发布在  Ionic
关注(0)|答案(3)|浏览(267)

我正在尝试使用https://docs.wonderpush.com/docs/mobile-push-notifications-ionic上的文档设置Ionic的Wonderpush集成
说明书上说要安装插件:
第一个月
...但由于我的应用程序是电容器应用程序,我必须安装插件:
npm install wonderpush-cordova-sdk
我不知道如何设置CLIENT_ID,CLIENT_SECRET,和SENDER_ID当安装插件的方式(没有“--variable“标志为这个命令),我得到了一个运行时的错误,当运行应用程序在我的设备上说,这些变量丢失。你知道我可以如何填充这些值吗?提前感谢!

zbsbpyhn

zbsbpyhn1#

我找到了放置这些变量的位置,在capacitor.config.json中,我对"cordova": {}元素做了如下修改。

"cordova": {
    "preferences": {
      "WONDERPUSH_CLIENT_ID": "<YOUR-CLIENT-ID>",
      "WONDERPUSH_CLIENT_SECRET": "<YOUR-CLIENT-SECRET>",
      "WONDERPUSH_LOGGING": true,
      "WONDERPUSH_AUTO_INIT": true,
      "WONDERPUSH_REQUIRES_USER_CONSENT": false
    }
  }

然后,我运行ionic cap sync,从IDE启动应用程序,并成功!

gz5pxeao

gz5pxeao2#

Capacitor应用程序在安装插件时不支持变量。这是因为Capacitor应用程序更倾向于原生,不像Cordova那样通过命令行提供配置挂钩。

要使用插件添加变量,您需要手动更新Android的AndroidManifest.xml和iOS的Info.plist。您可以在此处获取更多详细信息https://www.joshmorony.com/using-cordova-plugins-that-require-install-variables-with-capacitor/

示例:<meta-data android:name="com.facebook.sdk.ApplicationId" android:value="@string/facebook_app_id"/>
虽然这些配置设置在当前的Ionic插件文档中缺失,但对于流行的插件,您可以检查其原生版本文档并相应地更新平台文件。

**Wondershare Android配置:**查找“指定配置选项的替代方法”,第节

https://docs.wonderpush.com/docs/android-sdk#alternate-ways-of-specifying-configuration-options

ilmyapht

ilmyapht3#

您可以使用Ionic's Trapeze tool自动更新Android的AndroidManifest.xml和iOS的Info.plist。

相关问题