我正在尝试使用cordova-plugin-fcm在Android设备中运行我的Ionic应用程序但是当我尝试安装它(cordova plugin add cordova-plugin-fcm
)或运行它时,我收到以下错误(ionic cordova run android
)。尽管有错误,插件仍列在cordova插件中。
(node:2360)UnhandledPromiseRejectionWarning:未处理的promise拒绝(拒绝ID:1):TypeError:无效的数据,chunk必须是字符串或缓冲区,而不是对象(node:2360)[DEP0018] DeprecationWarning:不推荐的拒绝承诺拒绝。将来,未处理的承诺拒绝将使用非零退出代码终止Node.js进程。
版本:
离子CLI:3.19.0
cordova:8.0.0
cordova-android:7.0.0
答案 0 :(得分:1)
问题在于您安装的cordova-android版本。 我用android@6.3.0尝试了它并安装了插件而没有任何错误
答案 1 :(得分:0)
使用cordova-android@7.0.0,目录结构已发生变化,但降级不应该是一种选择。
请在cordova-plugin-fcm GitHub存储库中查看我对该问题的评论: https://github.com/fechanique/cordova-plugin-fcm/issues/213#issuecomment-357162384
答案 2 :(得分:0)
cordova 8.0和android 7.0都遇到了相同的问题
解决方法是更新插件文件夹中的fcm_config_files_process.js。 进行以下更改:
用“ platforms / android / app / src / main / res / values / strings.xml”替换“ platforms / android / res / values / strings.xml”
将“ platforms / android / google-services.json”替换为“ platforms / android / app / google-services.json”
就像其他人所说的那样,问题在于目录路径已更改。但是,仅在该js文件中更新它们并不难。我很惊讶他们现在还没有解决这个问题。