首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >不工作于IOS的Firebase插件(Ionic)

不工作于IOS的Firebase插件(Ionic)
EN

Stack Overflow用户
提问于 2020-05-22 09:27:34
回答 2查看 4.4K关注 0票数 2

我正在开发一个Ionic应用程序,我有一些问题的IOS应用程序和Firebase/FCM插件。

Android应用程序非常适合安装以下插件:

代码语言:javascript
运行
复制
ionic cordova plugin add cordova-plugin-fcm-with-dependecy-updated
npm install @ionic-native/fcm

至于IOS应用程序,我尝试了几个插件,但没有一个在运行:

备选案文1:

代码语言:javascript
运行
复制
ionic cordova plugin add cordova-plugin-fcm
npm install @ionic-native/fcm

该应用程序正在成功构建,但在iPhone上发布时却失败了。调试时,我收到以下错误消息:

代码语言:javascript
运行
复制
Terminating app due to uncaught exception 'com.firebase.core', reason: 'Configuration fails. It may be caused by an invalid GOOGLE_APP_ID in GoogleService-Info.plist or set in the customized options.'

备选案文2:

代码语言:javascript
运行
复制
ionic cordova plugin add cordova-plugin-fcm-with-dependecy-updated
npm install @ionic-native/fcm

在使用这个插件进行构建时,我在xCode中得到了以下错误:

代码语言:javascript
运行
复制
** ARCHIVE FAILED **


The following build commands failed:
        CompileC /Users/walid/Library/Developer/Xcode/DerivedData/Nutripro-aabwvacmftjwnefthwnyidfyxswx/Build/Intermediates.noindex/ArchiveIntermediates/Nutripro/IntermediateBuildFilesPath/Nutripro.build/Release-iphoneos/Nutripro.build/Objects-normal/arm64/FCMPlugin.o /Users/walid/Documents/www/nutripro/platforms/ios/Nutripro/Plugins/cordova-plugin-fcm-with-dependecy-updated/FCMPlugin.m normal arm64 objective-c com.apple.compilers.llvm.clang.1_0.compiler
(1 failure)
xcodebuild: Command failed with exit code 65
[ERROR] An error occurred while running subprocess cordova.

我寻找了很多方法来解决这个错误,但我找不到任何答案。

备选方案3:

代码语言:javascript
运行
复制
ionic cordova plugin add cordova-plugin-firebase
npm install @ionic-native/firebase

我可以使用这个插件成功地构建一个应用程序,我可以在我的iPhone上运行它,生成一个令牌,并且我可以正常地接收推送通知。但是,当将应用程序上传到App时,这里出现了一个问题

  • 在xCode上存档是成功的
  • 在分发/上传应用程序时,我会收到以下错误:
代码语言:javascript
运行
复制
ERROR ITMS-90771: "Missing Info.plist value. The Info.plist key 'BGTaskSchedulerPermittedIdentifiers' must contain a list of identifiers used to submit and handle tasks when 'UIBackgroundModes' has a value of 'processing'. For more information, refer to the Information Property List Key Reference at https://developer.apple.com/library/ios/documentation/General/Reference/InfoPlistKeyReference/Introduction/Introduction.html."

我在互联网上搜索,发现这篇文章声明我必须将下面的内容添加到我的info.plist文件中

代码语言:javascript
运行
复制
<key>BGTaskSchedulerPermittedIdentifiers</key>
<array>
    <string>com.nutripro.mobile</string>
</array>

在添加并重新提交我的应用程序后,我将收到一封来自苹果的电子邮件

代码语言:javascript
运行
复制
Dear Developer,

We identified one or more issues with a recent delivery for your app, "NutriPro" 1.1.11 (1.1.11). Please correct the following issues, then upload again.

ITMS-90809: Deprecated API Usage - New apps that use UIWebView are no longer accepted. Instead, use WKWebView for improved security and reliability. Learn more (https://developer.apple.com/documentation/uikit/uiwebview).

Best regards,

The App Store Team

如果我删除插件,应用程序将被上传和批准。

奇怪的是,关于@离子型本机/防火墙的文档说,他们已经摆脱了UIWebView,并且正在使用WKWebView。

N.B:在每个选项之后,我将卸载已安装的软件包和节点模块,并删除平台文件夹.

你们知道我怎么解决这个问题吗?我已经找了将近一周的解决办法了,我什么也找不到!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-06-04 07:20:14

经过大量的研究和失败的尝试,我找到了一个解决方案。

对于Android,我使用的是fcm-具有依赖性-更新

代码语言:javascript
运行
复制
ionic cordova plugin add cordova-plugin-fcm-with-dependecy-updated
npm install @ionic-native/fcm

对于IOS,我使用的是火基消息传递

代码语言:javascript
运行
复制
ionic cordova plugin add cordova-plugin-firebase-messaging
npm install @ionic-native/firebase-messaging
票数 2
EN

Stack Overflow用户

发布于 2022-04-21 09:17:27

我找到了解决办法。

rm -rf平台/android cordova插件删除cordova插件-firebase

安装这个插件firebase-lib

对于cordova-cli >= 9.x.x && (cordava-ios >= 5.0.1 \android >= 8.x.x)。只需运行以下命令即可使用最新的主要版本:

cordova插件添加cordova插件-firebase-lib

对于cordova-cli <= 8.1.1 & (cordava-ios <= 4.5.5 \x.x),运行以下命令使用v4.x版本:

cordova插件添加cordova插件-firebase-lib@4.1.0-保存

对于cordova-cli <= 7.1.0 && (cordava-ios <= 4.5.5 \cordova android <= 7.1.4)。在您的终端中运行以下命令:

cordova插件添加cordova插件-firebase-lib@3.3.0-保存

马蹄莲( Androidx )

cordova插件添加cordova- plugin -androidx cordova插件添加cordova- plugin -androidx适配器

For cocoaPods

如果您正在使用Xcode构建应用程序,请打开platform/ios/my- Cordova -project.xc工作区,而不是platform/ios/my-cordova-project.xcodeproj,以便Xcode可以同时加载Cordova应用程序和Pods。你的回购必须是最新的。为了保持它的最新,运行荚回购更新在您的终端任何地方。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61951838

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档