2017-09-18 33 views
0

我創建使用離子1.科爾多瓦 - 插件-FCM和離子平臺添加IOS導致錯誤代碼65

的版本列表一個Android/iOS應用程序。

cordova: 7.0.1 
ionic: 2.2.2 
ios-deploy: 1.9.1 
ios-sim: 6.0.0 
node: v8.3.0 

我使用的插件列表。

cordova-plugin-compat 1.1.0 "Compat" 
cordova-plugin-console 1.0.7 "Console" 
cordova-plugin-device 1.1.6 "Device" 
cordova-plugin-facebook4 1.7.4 "Facebook Connect" 
cordova-plugin-file 4.3.3 "File" 
cordova-plugin-file-transfer 1.6.3 "File Transfer" 
cordova-plugin-firebase 0.1.24 "Google Firebase Plugin" 
cordova-plugin-geolocation 2.4.3 "Geolocation" 
cordova-plugin-ignore-lint-translation 0.0.1 "cordova-plugin-ignore-lint-translation" 
cordova-plugin-image-picker 1.1.1 "ImagePicker" 
cordova-plugin-inappbrowser 1.7.1 "InAppBrowser" 
cordova-plugin-splashscreen 4.0.3 "Splashscreen" 
cordova-plugin-statusbar 2.2.3 "StatusBar" 
cordova-plugin-whitelist 1.3.2 "Whitelist" 
cordova.plugins.diagnostic 3.5.0 "Diagnostic" 
ionic-plugin-keyboard 2.2.1 "Keyboard" 
phonegap-plugin-push 1.10.5 "PushPlugin" 

我使用fcm實現了推送通知,並且android push使用phonegap-plugin-push成功實現了。

但是ios push不能通過phonegap-plugin-push工作,所以我安裝了一個額外的插件。但在ionic run時失敗。

(注意,在安裝額外的插件前,同時在Android/IOS成功的離子運行。)

如果我安裝科爾多瓦-插件-FCM和運行ionic platform add ios命令,出現以下錯誤。

duplicate symbol _OBJC_METACLASS_$_GtalkSelectiveAck in: 
    /Users/pbh/project/frontend/luxlab_front/platforms/ios/Pods/GoogleCloudMessaging/Libraries/libGcmLib.a(GtalkExtensions.pb.o) 
    럭스랩/Plugins/cordova-plugin-fcm/FirebaseMessaging.framework/FirebaseMessaging(GtalkExtensions.pb_3df3b2963f0a00a0a06e6bc7758c4642.o) 
ld: 33 duplicate symbols for architecture arm64 
clang: error: linker command failed with exit code 1 (use -v to see invocation) 


** ARCHIVE FAILED ** 


The following build commands failed: 
    Ld /Users/pbh/Library/Developer/Xcode/DerivedData/럭스랩-frtekduffawmjpcdcfcknnsswolo/Build/Intermediates/ArchiveIntermediates/럭스랩/IntermediateBuildFilesPath/럭스랩.build/Debug-iphoneos/럭스랩.build/Objects-normal/arm64/럭스랩 normal arm64 
(1 failure) 

Error: Error code 65 for command: xcodebuild with args: -xcconfig,/Users/pbh/project/frontend/luxlab_front/platforms/ios/cordova/build-debug.xcconfig,-workspace,럭스랩.xcworkspace,-scheme,럭스랩,-configuration,Debug,-destination,generic/platform=iOS,-archivePath,럭스랩.xcarchive,archive,CONFIGURATION_BUILD_DIR=/Users/pbh/project/frontend/luxlab_front/platforms/ios/build/device,SHARED_PRECOMPS_DIR=/Users/pbh/project/frontend/luxlab_front/platforms/ios/build/sharedpch 

如果我跑ionic run android,我會得到一個錯誤,如下面。

:processDebugGoogleServices 

Found com.google.android.gms:play-services-gcm:11+, but version 9.0.0 is needed for the google-services plugin. 

:processDebugGoogleServices FAILED 




FAILURE: Build failed with an exception. 

* What went wrong: 

Execution failed for task ':processDebugGoogleServices'. 

> 
Please fix the version conflict either by updating the version of the google-services plugin (information about the latest version is available at https://bintray.com/android/android-tools/com.google.gms.google-services/) or updating the version of com.google.android.gms to 9.0.0. 

* Try: 
Run with 
--stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. 



BUILD FAILED 


Total time: 2.34 secs 

Error: /Users/pbh/project/frontend/luxlab_front/platforms/android/gradlew: Command failed with exit code 1 Error output: 
FAILURE: Build failed with an exception. 

* What went wrong: 
Execution failed for task ':processDebugGoogleServices'. 
> Please fix the version conflict either by updating the version of the google-services plugin (information about the latest version is available at https://bintray.com/android/android-tools/com.google.gms.google-services/) or updating the version of com.google.android.gms to 9.0.0. 

* Try: 
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. 

我再次嘗試使用cordova-plugin-firebase插件。 但構建應用程序時也失敗。

ionic run android

/Users/pbh/project/frontend/luxlab_front/platforms/android/res/values/strings.xml: Error: Found item String/google_app_id more than one time 

:mergeDebugResources 
FAILED 


FAILURE: Build failed with an exception. 


* What went wrong: 
Execution failed for task ':mergeDebugResources'. 

> /Users/pbh/project/frontend/luxlab_front/platforms/android/res/values/strings.xml: Error: Found item String/google_app_id more than one time 

* Try: 
Run with --stacktrace 
option to get the stack trace. Run with --info or --debug option to get more log output. 



BUILD FAILED 

Total time: 11.454 secs 

Error: /Users/pbh/project/frontend/luxlab_front/platforms/android/gradlew: Command failed with exit code 1 Error output: 
Note: Some input files use or override a deprecated API. 
Note: Recompile with -Xlint:deprecation for details. 
Note: Some input files use or override a deprecated API. 
Note: Recompile with -Xlint:deprecation for details. 

FAILURE: Build failed with an exception. 

* What went wrong: 
Execution failed for task ':mergeDebugResources'. 
> /Users/pbh/project/frontend/luxlab_front/platforms/android/res/values/strings.xml: Error: Found item String/google_app_id more than one time 

* Try: 
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. 

ionic run ios

duplicate symbol _OBJC_METACLASS_$_GtalkAppData in: 
    /Users/pbh/project/frontend/luxlab_front/platforms/ios/Pods/GoogleCloudMessaging/Libraries/libGcmLib.a(GtalkCore.pb.o) 
    럭스랩/Plugins/cordova-plugin-firebase/FirebaseMessaging.framework/FirebaseMessaging(GtalkCore.pbobjc_4adff0f7bd059c687019835bc9c59b23.o) 
ld: 42 duplicate symbols for architecture arm64 
clang: error: linker command failed with exit code 1 (use -v to see invocation) 


** ARCHIVE FAILED ** 


The following build commands failed: 
    Ld /Users/pbh/Library/Developer/Xcode/DerivedData/럭스랩-frtekduffawmjpcdcfcknnsswolo/Build/Intermediates/ArchiveIntermediates/럭스랩/IntermediateBuildFilesPath/럭스랩.build/Debug-iphoneos/럭스랩.build/Objects-normal/arm64/럭스랩 normal arm64 
(1 failure) 

Error: Error code 65 for command: xcodebuild with args: -xcconfig,/Users/pbh/project/frontend/luxlab_front/platforms/ios/cordova/build-debug.xcconfig,-workspace,럭스랩.xcworkspace,-scheme,럭스랩,-configuration,Debug,-destination,generic/platform=iOS,-archivePath,럭스랩.xcarchive,archive,CONFIGURATION_BUILD_DIR=/Users/pbh/project/frontend/luxlab_front/platforms/ios/build/device,SHARED_PRECOMPS_DIR=/Users/pbh/project/frontend/luxlab_front/platforms/ios/build/sharedpch 

我不知道是什麼問題。

有沒有人解決過同樣的問題?

這是phonegap-plugin-push和cordova-plugin-fcm或者cordovoa-plugin-firebase之間的衝突嗎?

+0

Android問題通常通過更新Android Studio中的Repistories和Google Play服務並檢查路徑變量來解決 – user7722867

回答

0

我解決了這個問題。

phonegap-plugin-push插件和cordova-plugin-fcm插件之間存在衝突。

如果我只安裝其中的一個,上述問題將被解決。