我在我的ionic项目中使用onesignal-cordova-plugin。我已经遵循了文档并添加了插件。
ionic cordova plugin add onesignal-cordova-plugin
npm install @ionic-native/onesignal
但一旦我建好了应用日志显示
Native: tried calling OneSignal.startInit, but the OneSignal plugin is not installed.
我试过删除android和reading,但不工作。plugin list do show onesign.
Ionic:
Ionic CLI : 6.13.1 (/home/raj/.nvm/versions/node/v12.2.0/lib/node_modules/@ionic/cli)
Ionic Framework : @ionic/angular 5.6.6
@angular-devkit/build-angular : 0.1102.12
@angular-devkit/schematics : 11.2.12
@angular/cli : 11.2.12
@ionic/angular-toolkit : 3.1.1
Cordova:
Cordova CLI : 10.0.0
Cordova Platforms : android 9.1.0
Cordova Plugins : cordova-plugin-ionic-keyboard 2.2.0, cordova-plugin-ionic-webview 4.2.1, (and 7 other plugins)
Utility:
cordova-res : 0.15.3
native-run : 1.3.0
System:
Android SDK Tools : 26.1.1 (/home/raj/android/android-sdk-linux/)
NodeJS : v12.2.0 (/home/raj/.nvm/versions/node/v12.2.0/bin/node)
npm : 6.14.9
OS : Linux 4.4
4条答案
按热度按时间ljsrvy3e1#
根据新的OneSignal版本更新(3.0+):startInit方法已删除,请改用setAppId。
例如:window[“plugins”].OneSignal.setAppId(environment.OnesignalAppId);
查看您的OneSignal版本:在3.0+中有很多API的变化(迁移指南:https://documentation.onesignal.com/docs/step-by-step-cordova-2x-to-300-upgrade-guide)
uxh89sit2#
使用以下命令验证插件是否未安装:
或
一个可能的解决方案可以用下面的命令来解决:
hgc7kmma3#
@ionic-native/onesignal
不适用于最新的OneSignal SDK(和Cordova插件)。从3.0.0开始,出现了破坏性的变化,并且在此 Package 器中定义的方法不再工作。这些更改记录在API中,并且有很多不推荐的方法和需要更改:https://documentation.onesignal.com/docs/40-api-android-native
官方文档显示了正确设置的新方法的使用:https://documentation.onesignal.com/docs/ionic-sdk-setup
polkgigr4#
尝试这样做: