Cordova-plugin-firebasex: تعذر التحويل البرمجي على IOS - InAppMessagingDisplayResources.bundle مفقود

تم إنشاؤها على ٤ مارس ٢٠٢٠  ·  71تعليقات  ·  مصدر: dpa99c/cordova-plugin-firebasex

تقرير الشوائب

السلوك الحالي:

عند إنشاء بناء prod (أيوني) ، فإنه يتعطل مع:

error: Resource "/Users/rattkin/Library/Developer/Xcode/DerivedData/driverhood-fdggvwggwpvrhxbzlvxxdbhztdnu/Build/Products/Debug-iphonesimulator/FirebaseInAppMessaging/InAppMessagingDisplayResources.bundle" not found. Run 'pod install' to update the copy resources script.

The following build commands failed:
    PhaseScriptExecution [CP]\ Copy\ Pods\ Resources /Users/rattkin/Library/Developer/Xcode/DerivedData/driverhood-fdggvwggwpvrhxbzlvxxdbhztdnu/Build/Intermediates.noindex/driverhood.build/Debug-iphonesimulator/driverhood.build/Script-53D89128D701315A18804F16.sh

xcodebuild: Command failed with exit code 65

لقد قمت بعمل pod install في الأنظمة الأساسية / iOS ولكن لم يغير أي شيء. كما فعل pod repo update .

يبدو أن هناك مشكلة في Firebase/InAppMessaging pod؟

سلوك متوقع:
يجب أن تجمع بشكل صحيح.

خطوات التكاثر:
ionic cordova build ios --prod

معلومات البيئة

  • إصدار كوردوفا CLI
    9.0.0 ([email protected])
  • إصدار منصة كوردوفا
Installed platforms:
  android 8.1.0
  browser 6.0.0
  ios 5.1.1
Available platforms: 
  electron ^1.0.0
  osx ^5.0.0
  windows ^7.0.0
  • الإضافات والإصدارات المثبتة في المشروع (بما في ذلك هذا البرنامج المساعد)
call-number 0.0.2 "Cordova Call Number Plugin"
cordova-plugin-actionsheet 2.3.3 "ActionSheet"
cordova-plugin-androidx 1.0.2 "cordova-plugin-androidx"
cordova-plugin-androidx-adapter 1.1.0 "cordova-plugin-androidx-adapter"
cordova-plugin-camera 4.1.0 "Camera"
cordova-plugin-device 2.0.3 "Device"
cordova-plugin-dialogs 2.0.2 "Notification"
cordova-plugin-facebook4 6.3.0 "Facebook Connect"
cordova-plugin-firebasex 8.1.1 "Google Firebase Plugin"
cordova-plugin-geolocation 4.0.2 "Geolocation"
cordova-plugin-googleplus 8.4.0 "Google SignIn"
cordova-plugin-inappbrowser 3.2.0 "InAppBrowser"
cordova-plugin-ionic-webview 4.1.3 "cordova-plugin-ionic-webview"
cordova-plugin-market 1.2.0 "Market"
cordova-plugin-network-information 2.0.2 "Network Information"
cordova-plugin-sign-in-with-apple 0.0.1 "cordova-plugin-sign-in-with-apple"
cordova-plugin-splashscreen 5.0.3 "Splashscreen"
cordova-plugin-statusbar 2.4.3 "StatusBar"
cordova-plugin-whitelist 1.3.4 "Whitelist"
cordova-plugin-x-socialsharing 5.6.4 "SocialSharing"
es6-promise-plugin 4.2.2 "Promise"
ionic-plugin-deeplinks 1.0.20 "Ionic Deeplink Plugin"
uk.co.workingedge.phonegap.plugin.launchnavigator 5.0.4 "Launch Navigator"
  • نظام تشغيل وإصدار آلة Dev ، على سبيل المثال
    نظام التشغيل Mac OS 10.15.3 Catalina

_ مشكلة إنشاء نظام التشغيل iOS: _

  • إصدار Node JS
    v10.18.1
  • إصدار XCode
    11.3.1
Firebase SDK bug build issue ios

التعليق الأكثر فائدة

حسنًا ، كما تمت مناقشته ، يوجد الآن فرع cli_build تمت إزالة مكونات

cordova plugin add [email protected]

تم توضيح ذلك الآن

يوجد إصدار تصحيح مطابق من الفرع الرئيسي يعيد إضافة مكونات Inapp Messaging ويهدف إلى البناء من Xcode حتى يحين وقت إصلاح الإصدار الجديد cordova-ios مشكلات إنشاء CLI:

    cordova plugin add [email protected]

ال 71 كومينتر

يعمل عندما أعود إصدار cordova-plugin-firebasex إلى 8.0.1. يجب أن يكون دعم المراسلة داخل التطبيق في الإصدارات الأخيرة قد كسر شيئًا ما.

أيضا تواجه نفس المشكلة. حاولت تشغيل pod repo update و pod install في مرحلة تحضير cocoapods من بناء CI الخاص بي أيضًا ، ولكن دون جدوى:

      - run:
          name: Ionic - Prepare Cordova iOS & CocoaPods Dependencies
          command: |
            ionic cordova prepare ios --confirm --no-build
            cd platforms/ios/
            pod dependencies
            ionic cordova plugin rm cordova-plugin-firebasex
            ionic cordova plugin add cordova-plugin-firebasex
            ionic cordova prepare ios --confirm --no-build
            pod repo update
            pod install

إن تشغيل هذا المكون الإضافي ، كما ترى أعلاه ، هو عمل روتيني كبير. لا يمكن تشغيل CocoaPods ' pod dependencies ما لم يكن البرنامج المساعد موجودًا ، ولكن التثبيت الأولي للمكوِّن الإضافي فشل لأن CocoaPods غير مثبت بشكل صحيح. لذلك يجب على المرء أولاً إعداد نظام كوردوفا الأساسي وتثبيت البرنامج المساعد (في حالة فشل) ، والقيام بتبعية pod ، ثم إزالة المكون الإضافي وإضافته مرة أخرى وإعادة تجهيز النظام الأساسي ، والآن يبدو أيضًا pod repo update ثم قم بتشغيل pod install ...

يجب أن تكون هناك طريقة أسهل لتشغيل هذا المكون الإضافي ... Oo

في تقرير الخطأ الكامل:

PhaseScriptExecution [CP]\ Copy\ Pods\ Resources /Users/distiller/Library/Developer/Xcode/DerivedData/WICShopper-bvrgbdzwowyexyasjjjdflehrghx/Build/Intermediates.noindex/WICShopper.build/Release-iphonesimulator/WICShopper.build/Script-4C9A577E4E098CD9C9C43025.sh (in target 'WICShopper' from project 'WICShopper')
    cd /Users/distiller/project/platforms/ios
    /bin/sh -c /Users/distiller/Library/Developer/Xcode/DerivedData/WICShopper-bvrgbdzwowyexyasjjjdflehrghx/Build/Intermediates.noindex/WICShopper.build/Release-iphonesimulator/WICShopper.build/Script-4C9A577E4E098CD9C9C43025.sh
error: Resource "/Users/distiller/Library/Developer/Xcode/DerivedData/WICShopper-bvrgbdzwowyexyasjjjdflehrghx/Build/Products/Release-iphonesimulator/FirebaseInAppMessaging/InAppMessagingDisplayResources.bundle" not found. Run 'pod install' to update the copy resources script.

لا يبدو أن تشغيل الأمر الموصى به ، pod install ، له أي تأثير. لقد بحثت عن ملف .bundle المحدد ، ولا يمكنني العثور عليه في أي مكان. يبدو أن المكون الإضافي قد تعطل في الإصدار الأخير.

الحزمة موجودة ، في دليل platform / ios / build ، لكنها "مسطحة" ، بدلاً من وضعها في دليل فرعي يسمى FirebaseMessaging أو شيء من هذا القبيل. يبدو الأمر وكأن البرنامج النصي المرجعي له مسار خاطئ ، أو أن الحزمة لا تهبط في المكان الصحيح.

لقد حاولت الرجوع إلى الإصدار 8.0.1 ، ولكن ما زلت أواجه مشكلات في الإنشاء. خطأ الإصدار الحالي هو هذا ، والذي يحدث سواء قمت بتشغيل pod install أم لا:

PhaseScriptExecution [CP]\ Check\ Pods\ Manifest.lock /Users/distiller/Library/Developer/Xcode/DerivedData/WICShopper-bvrgbdzwowyexyasjjjdflehrghx/Build/Intermediates.noindex/WICShopper.build/Release-iphonesimulator/WICShopper.build/Script-6CDB74AC9D91AFB94F3486DA.sh (in target 'WICShopper' from project 'WICShopper')
    cd /Users/distiller/project/platforms/ios
    /bin/sh -c /Users/distiller/Library/Developer/Xcode/DerivedData/WICShopper-bvrgbdzwowyexyasjjjdflehrghx/Build/Intermediates.noindex/WICShopper.build/Release-iphonesimulator/WICShopper.build/Script-6CDB74AC9D91AFB94F3486DA.sh
diff: /Podfile.lock: No such file or directory
diff: /Manifest.lock: No such file or directory
error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.

لقد تركتنا هذه القضية ميتين في الماء وغير قادرين على التقدم في تنميتنا. هل هناك فرصة للحصول على بعض الأفكار من مؤلفي البرنامج المساعد؟

تنظيف وإعادة ضبط المشروع بأكمله ، أفترض؟

كل بناء في CI لدينا هو من قائمة نظيفة. نقوم بسحب الريبو ، ثم نقوم بتشغيل الأوامر الأيونية / كوردوفا اللازمة للتحضير ، وتثبيت المكونات الإضافية ، وما إلى ذلك من البداية. نحن لا نتحقق من منصاتنا أو أدلة المكونات الإضافية (أحد أسباب توقفنا عن استخدام Cordova ، بدلاً من الانتقال إلى Capacitor ، حيث يتطلب Capacitor عادةً أن تتلاعب بكود محلي منخفض المستوى وينتهي بك الأمر إلى التحقق منه الكل في ... بليه.: P)

هل تستخدم نظام الإنشاء الحديث لـ XCode ، أو نظام الإنشاء القديم؟ هل لا يزال لديك cordova-plugin-cocoapodsx في مشروعك؟ لقد تم إسقاطه منذ بعض الوقت وربما يتعارض مع شيء ما ، إذا بقي.

هذا مشروع جديد نسبيًا ، بدأ في أواخر العام الماضي مع Ionic 4 و Cordova 9. ولا يستخدم cocoapodsx.

عمل المشروع بشكل جيد حتى الأسبوع الماضي ، ثم تعطل فجأة. لقد عملنا على تطوير ونشر البنيات لعدة أشهر ، حتى منتصف الأسبوع الماضي ربما. يبدو أن التغيير الوحيد هو FirebaseX.

لقد جربت الآن العديد من الإصدارات السابقة من البرنامج المساعد. لقد استعدت برنامج إنشاء CI الخاص بنا إلى ما كان عليه من قبل ، قبل أن أبدأ في العبث به لمحاولة حل هذه المشكلة. بدأنا في الأصل مع الإصدار 7.0.1 من هذا المكون الإضافي في نوفمبر من العام الماضي. لقد جربت 7.0.1 و 7.0.2 و 8.0.0 و 8.0.1. كل هذه الإصدارات تؤدي إلى نفس الخطأ:

CompileC /Users/distiller/Library/Developer/Xcode/DerivedData/WICShopper-bvrgbdzwowyexyasjjjdflehrghx/Build/Intermediates.noindex/WICShopper.build/Release-iphonesimulator/WICShopper.build/Objects-normal/x86_64/FirebasePlugin.o /Users/distiller/project/platforms/ios/WICShopper/Plugins/cordova-plugin-firebasex/FirebasePlugin.m normal x86_64 objective-c com.apple.compilers.llvm.clang.1_0.compiler (in target 'WICShopper' from project 'WICShopper')
    cd /Users/distiller/project/platforms/ios
    export LANG=en_US.US-ASCII
    /Applications/Xcode-11.3.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -x objective-c -target x86_64-apple-ios11.0-simulator -fmessage-length=0 -fdiagnostics-show-note-include-stack -fmacro-backtrace-limit=0 -std=c99 -fobjc-arc -fmodules -gmodules -fmodules-cache-path=/Users/distiller/Library/Developer/Xcode/DerivedData/ModuleCache.noindex -fmodules-prune-interval=86400 -fmodules-prune-after=345600 -fbuild-session-file=/Users/distiller/Library/Developer/Xcode/DerivedData/ModuleCache.noindex/Session.modulevalidation -fmodules-validate-once-per-build-session -Wno-trigraphs -fpascal-strings -Os -Wno-missing-field-initializers -Wno-missing-prototypes -Wunreachable-code -Wno-implicit-atomic-properties -Wno-objc-interface-ivars -Wno-arc-repeated-use-of-weak -Wimplicit-retain-self -Wduplicate-method-match -Wno-missing-braces -Wparentheses -Wswitch -Wunused-function -Wno-unused-label -Wno-unused-parameter -Wunused-variable -Wunused-value -Wempty-body -Wuninitialized -Wno-unknown-pragmas -Wno-shadow -Wno-four-char-constants -Wno-conversion -Wconstant-conversion -Wint-conversion -Wbool-conversion -Wenum-conversion -Wno-float-conversion -Wnon-literal-null-conversion -Wobjc-literal-conversion -Wshorten-64-to-32 -Wpointer-sign -Wno-newline-eof -Wno-selector -Wno-strict-selector-match -Wundeclared-selector -Wdeprecated-implementations -DOBJC_OLD_DISPATCH_PROTOTYPES=0 -isysroot /Applications/Xcode-11.3.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator13.2.sdk -fasm-blocks -fstrict-aliasing -Wprotocol -Wdeprecated-declarations -g -fvisibility=hidden -Wno-sign-conversion -Winfinite-recursion -Wcomma -Wblock-capture-autoreleasing -Wstrict-prototypes -Wno-semicolon-before-method-body -fobjc-abi-version=2 -fobjc-legacy-dispatch -iquote /Users/distiller/Library/Developer/Xcode/DerivedData/WICShopper-bvrgbdzwowyexyasjjjdflehrghx/Build/Intermediates.noindex/WICShopper.build/Release-iphonesimulator/WICShopper.build/WICShopper-generated-files.hmap -I/Users/distiller/Library/Developer/Xcode/DerivedData/WICShopper-bvrgbdzwowyexyasjjjdflehrghx/Build/Intermediates.noindex/WICShopper.build/Release-iphonesimulator/WICShopper.build/WICShopper-own-target-headers.hmap -I/Users/distiller/Library/Developer/Xcode/DerivedData/WICShopper-bvrgbdzwowyexyasjjjdflehrghx/Build/Intermediates.noindex/WICShopper.build/Release-iphonesimulator/WICShopper.build/WICShopper-all-target-headers.hmap -iquote /Users/distiller/Library/Developer/Xcode/DerivedData/WICShopper-bvrgbdzwowyexyasjjjdflehrghx/Build/Intermediates.noindex/WICShopper.build/Release-iphonesimulator/WICShopper.build/WICShopper-project-headers.hmap -I/Users/distiller/project/platforms/ios/build/emulator/include -I/Users/distiller/project/platforms/ios/build/emulator/usr/local/lib/include -I/Users/distiller/Library/Developer/Xcode/DerivedData/WICShopper-bvrgbdzwowyexyasjjjdflehrghx/Build/Intermediates.noindex/UninstalledProducts/include -I/Users/distiller/Library/Developer/Xcode/DerivedData/WICShopper-bvrgbdzwowyexyasjjjdflehrghx/Build/Intermediates.noindex/UninstalledProducts/iphonesimulator/include -I/Users/distiller/project/platforms/ios/build/emulator -I/Users/distiller/Library/Developer/Xcode/DerivedData/WICShopper-bvrgbdzwowyexyasjjjdflehrghx/Build/Intermediates.noindex/WICShopper.build/Release-iphonesimulator/WICShopper.build/DerivedSources-normal/x86_64 -I/Users/distiller/Library/Developer/Xcode/DerivedData/WICShopper-bvrgbdzwowyexyasjjjdflehrghx/Build/Intermediates.noindex/WICShopper.build/Release-iphonesimulator/WICShopper.build/DerivedSources/x86_64 -I/Users/distiller/Library/Developer/Xcode/DerivedData/WICShopper-bvrgbdzwowyexyasjjjdflehrghx/Build/Intermediates.noindex/WICShopper.build/Release-iphonesimulator/WICShopper.build/DerivedSources -F/Users/distiller/project/platforms/ios/build/emulator -include /Users/distiller/project/platforms/ios/build/sharedpch/SharedPrecompiledHeaders/749132040139485224/WICShopper-Prefix.pch -MMD -MT dependencies -MF /Users/distiller/Library/Developer/Xcode/DerivedData/WICShopper-bvrgbdzwowyexyasjjjdflehrghx/Build/Intermediates.noindex/WICShopper.build/Release-iphonesimulator/WICShopper.build/Objects-normal/x86_64/FirebasePlugin.d --serialize-diagnostics /Users/distiller/Library/Developer/Xcode/DerivedData/WICShopper-bvrgbdzwowyexyasjjjdflehrghx/Build/Intermediates.noindex/WICShopper.build/Release-iphonesimulator/WICShopper.build/Objects-normal/x86_64/FirebasePlugin.dia -c /Users/distiller/project/platforms/ios/WICShopper/Plugins/cordova-plugin-firebasex/FirebasePlugin.m -o /Users/distiller/Library/Developer/Xcode/DerivedData/WICShopper-bvrgbdzwowyexyasjjjdflehrghx/Build/Intermediates.noindex/WICShopper.build/Release-iphonesimulator/WICShopper.build/Objects-normal/x86_64/FirebasePlugin.o
/Users/distiller/project/platforms/ios/WICShopper/Plugins/cordova-plugin-firebasex/FirebasePlugin.m:4:9: fatal error: 'Firebase.h' file not found
#import "Firebase.h"
        ^~~~~~~~~~~~

إذا قمت بتشغيل pod install ، فسأحصل على الخطأ الذي أبلغت عنه سابقًا ، حول Podfile.lock و Manifest.lock مفقودان.

نحن ميتون تماما في الماء هنا.

عند التحقيق ، يبدو أن هذا الخطأ يحدث فقط عند البناء من CLI (عبر أداة xcodebuild ) - البناء من Xcode يعمل بشكل جيد (وبالتالي - منذ أن قمت دائمًا بإنشاء Xcode - تم تفويت هذه المشكلة).
للمقارنة ، هنا (فشل) إخراج وحدة تحكم بناء CLI) مقابل إخراج وحدة تحكم بناء Xcode (الناجح)

حول سبب حدوث هذا الخطأ ، ليس لدي أي فكرة حاليًا.
تمت إضافة مكون Inapp Messaging عن طريق دمج PR # 312 وعلى وجهه إضافة بسيطة - مجرد إضافة مكون Firebase SDK عبر مرجع Cocoapods الخاص به مع عدم وجود تغييرات في رمز المكون الإضافي.
فشل بناء CLI لأنه لم يتم العثور على InAppMessagingDisplayResources.bundle . يبدو أن هذا مكونًا ضمنيًا من Firebase SDK (مقابل شيء تم تحديده صراحة بواسطة هذا المكون الإضافي).
ومن ثم ، لا يبدو أن هناك الكثير الذي يمكن القيام به من المكون الإضافي لحل هذا القصور من إزالة مكون Inapp Messaging الخاص بـ Firebase SDK من هذا المكون الإضافي ، والذي سيفقد بالطبع هذه الوظيفة المرتبطة.

في غضون ذلك ، يتمثل الحل البديل في الإنشاء من Xcode بدلاً من CLI.

لقد حاولت تحديث podspecs للإشارة إلى أحدث إصدار v6.18.0 من

ليس لدينا خيار البناء باستخدام XCode في بناء CI (التكامل المستمر). يجب أن يكون سطر الأوامر. لذلك لا يمكن أن يكون هذا هو الحل الموصى به. كلا الإصدارين القديم والإصدار الحالي معطلان حاليًا. لا أعرف ما إذا كان ذلك بسبب تحديث Firebase SDK الذي عطّل جميع الإصدارات السابقة للإصدار 8.1.1 ، أو أي شيء آخر ... لكننا نستخدم Firebase Analytics و Cloud Messaging ، وتوقف تطويرنا حاليًا بسبب التغييرات هنا.

هل هناك طريقة ما للحصول على الإصدار السابق ، 8.0.1 ، الذي يعمل دون الوقوع في أي من الأخطاء التي نشرتها أعلاه؟ لا نحتاج إلى المراسلة داخل التطبيق ، ولكن لا يبدو أن 8.0.1 يتم إنشاؤها في سطر الأوامر أفضل من 8.1.1 ...

لقد حاولت تحديث podspecs للإشارة إلى أحدث إصدار v6.18.0 من

هل من الممكن الرجوع إلى إصدار سابق؟ هل من الممكن أن نحصل على 8.0.2 تشير إلى نفس إصدار SDK الذي كان يعمل قبل 8.1.1؟

v8.0.1 يبني بشكل جيد من CLI - راجع إخراج وحدة التحكم هذا من بنائي.

إنها إضافة مكون Inapp Messaging الذي تسبب في حدوث مشكلة مع CLI يبني على iOS.

موافق. اضطررت إلى البحث عن جميع مراجع الإصدار الخاصة بالمكوِّن الإضافي Firebasex وتحديثها وتعيينها على 8.0.1 ، والإشارة صراحةً إلى 8.0.1 عند إعادة تثبيت المكون الإضافي ، بعد إلغاء تثبيته (لأن التثبيت الأول للمكوِّن الإضافي فشل بسبب عدم وجود البودات مثبتًا ، ولكن لا يمكن تثبيت البودات حتى يتم تثبيت المكون الإضافي ...) ، قبل تحديث البودات ، لتشغيل كل شيء. بمجرد تكوين جميع أرقام الإصدارات بشكل صريح إلى 8.0.1 في جميع الأماكن ، بدأ البناء أخيرًا في العمل.

TL ؛ DR: إذا كان البناء باستخدام CLI ، فيمكن تثبيت الإصدار 8.0.1 حتى يحين وقت إصدار التصحيح لإصلاح هذه المشكلة مع 8.1.x
إذا كنت تقوم بالبناء باستخدام Xcode ، فلا بأس من التحديث إلى الإصدار 8.1.1 الأحدث

يبدو أن هذه المشكلة ليست خاصة بهذا المكون الإضافي أو بالإصدار المحدد من مكون Inapp Messaging SDK الذي يشير إليه:
بإمكاني إعادة إظهار المشكلة باستخدام Firebase / InAppMessagingDisplay v 6.3.0 ) باستخدام الأوامر التالية:

cordova create test && cd test
cordova plugin add cordova-plugin-firebase-inappmessaging
cordova platform add ios
cordova build ios

والذي (كما يوضح إخراج وحدة التحكم هذا) فشل مع نفس الخطأ:

error: Resource "/Users/dave/Library/Developer/Xcode/DerivedData/HelloCordova-gvppvcmxenjfsnfvmssmvbuwhnay/Build/Products/Debug-iphonesimulator/FirebaseInAppMessagingDisplay/InAppMessagingDisplayResources.bundle" not found. Run 'pod install' to update the copy resources script.

كما هو الحال مع هذا البرنامج المساعد ، فإن البناء في Xcode ناجح

لقد قمت بتثبيت الإصدار 8.0.1 ولكن لا يزال لدي أخطاء - المشكلة هي أن FirebaseCore.h غير موجود (كما هو مذكور في # 330)
يبدو أنها مشكلة في الرؤوس أو شيء مشابه. الأمر الذي أقوم بتشغيله هو:

xcodebuild -j "$(sysctl -n hw.ncpu)" \
           -project "platforms/ios/app.xcodeproj" \
           -scheme "app-scheme" \
           -configuration Release clean archive \
           -archivePath "platforms/ios/app.xcarchive" \
           PROVISIONING_PROFILE="$uuid_dbg" \
           CODE_SIGN_IDENTITY="$identity_dbg"

أي تلميح كيف يمكنني حل هذه المشكلة؟

@ Javinator9889 يبدو أنك تستدعي xcodebuild مباشرة؟

بدلاً من عبر كوردوفا CLI الذي يولد شيئًا مثل:

xcodebuild -workspace FirebaseTest.xcworkspace -scheme FirebaseTest -configuration Debug -sdk iphonesimulator -destination platform=iOS Simulator,name=iPhone 11 Pro Max build CONFIGURATION_BUILD_DIR=/Users/dave/Documents/projects/@scratch/cordova-plugin-firebasex-test/platforms/ios/build/emulator SHARED_PRECOMPS_DIR=/Users/dave/Documents/projects/@scratch/cordova-plugin-firebasex-test/platforms/ios/build/sharedpch

الاستدعاء المباشر لـ xcodebuild ليس شيئًا يمكنني دعمه بشكل مباشر في سياق هذا المكون الإضافي نظرًا لوجود العديد من الاختلافات المحتملة.

كل ما يمكنني قوله هو أن المشروع النموذجي يبني بشكل جيد مع v8.0.1 عبر كوردوفا CLI وجيد مع v8.1.1 عبر Xcode ، لذا استخدم ذلك كمرجع عمل.

@ dpa99c سألقي نظرة على استخدام Cordova CLI - شكرًا مقدمًا :)

@ dpa99c أذهب إلى كوردوفا للمرة الأولى - كنت أعمل في مشروع منذ فترة.

هل تمانع إذا طلبت منك أن ترشدني حول كيفية إنشاء xcarchive باستخدام Cordova CLI؟

cordova build ios --device --release
stat platforms/ios/<YourAppName>.xcarchive

@ dpa99c عملت 😮

شكرا جزيلا لك <3

آسف على بدس! أعتقد أنه يمكننا حلها باستخدام XCode ، ولكن هل هناك إصلاح مخطط لهذه المشكلة؟ تأخذ الإنشاءات باستخدام XCode طريقة أكثر من استخدام CLI

nnimis إذا كنت تتبع المحادثة، يمكنك أن ترى أن تتمكن من تجميع من قبل تعلق على firebasex المساعد ل_v8.0.1_

بالإضافة إلى ذلك ، إنه عمل قيد التقدم (تم فتحه منذ أقل من يوم واحد) وسيتم إصلاحه على الأرجح عندما يكون ذلك ممكنًا. أنا أشجعك على قراءة المشكلة بأكملها لإصلاح المشكلات المحتملة

أعتقد أنه يتعين علينا انتظار الإصدار الجديد من Firebase SDK ، أو الإصدار الجديد من cordova / cordova-ios. لا يزال دعم Cocoapods مهتزًا بعض الشيء.

في هذه المرحلة ، ليس لدي أي فكرة عن سبب المشكلة ، لذلك لم يتم التخطيط لإصلاح حتى يمكنني تحديد السبب - كما هو موضح هنا ، هذا الخطأ ليس خاصًا بهذا المكون الإضافي.
أي مساعدة في العثور على السبب ستجعل حل المشكلة أسرع.

شكرًا لكم جميعًا ، لا داعي للاندفاع ، أردت فقط معرفة ما إذا كان هناك إصلاح مخطط ليتم تنفيذه في أي وقت.
@ Javinator9889 التخفيض لم ينجح في حالتي ، آسف

nnimis ما هو الخطأ الذي واجهتك؟

تم توضيح السبب المحدد لهذه المشكلة في https://github.com/apache/cordova-ios/issues/659 :

CONFIGURATION_BUILD_DIR الوسيطة

على سبيل المثال ، يؤدي تشغيل cordova build ios في بيئتي تشغيل الأمر xcodebuild من platforms/ios/ باستخدام الوسيطات التالية:

xcodebuild -workspace FirebaseTest.xcworkspace -scheme FirebaseTest -configuration Debug -sdk iphonesimulator -destination platform="iOS Simulator,name=iPhone 11 Pro Max" build CONFIGURATION_BUILD_DIR=/Users/dave/Documents/projects/cordova-plugin-firebasex-test/platforms/ios/build/emulator SHARED_PRECOMPS_DIR=/Users/dave/Documents/projects/cordova-plugin-firebasex-test/platforms/ios/build/sharedpch

إذا قمت بتشغيل هذا الأمر يدويًا ولكن قمت بإزالة الوسيطة CONFIGURATION_BUILD_DIR ، فإن الإنشاء ينجح:

xcodebuild -workspace FirebaseTest.xcworkspace -scheme FirebaseTest -configuration Debug -sdk iphonesimulator -destination platform="iOS Simulator,name=iPhone 11 Pro Max" build SHARED_PRECOMPS_DIR=/Users/dave/Documents/projects/cordova-plugin-firebasex-test/platforms/ios/build/sharedpch

هذا خطأ في الإصدارات الحالية من كوردوفا في كيفية تعامله مع هذه القرون.
لا توجد حاليًا طريقة لإخبار كوردوفا CLI بحذف الوسيطة CONFIGURATION_BUILD_DIR ، لذا فإن الخيارات الوحيدة التي يمكن إنشاؤها مباشرة في Xcode أو استدعاء الأمر xcodebuild يدويًا (الاستيلاء عليها من الإخراج الفاشل لـ cordova build ios ) واحذف الوسيطة CONFIGURATION_BUILD_DIR

شكرا لك على هذا التحقيق المفصل ، أقدر كثيرا.

يعمل الإصدار 8.01 على إصلاحه عند التشغيل الأصلي (Ionic 3) ويقلل بشكل كبير وقت الإنشاء من 8.1.0 (أكثر من 12 دقيقة) إلى دقيقة إلى دقيقتين فقط.

تم الآن نشر الإصدار 9.0.0 والذي يحل هذه المشكلة عن طريق إزالة مكونات Inapp Messaging SDK من هذا المكون الإضافي

لم يساعد كثيرا ، للأسف. الخطأ الآن (في 9.0.0) تحول إلى:

error: Resource "Build/Products/Debug-iphonesimulator/GoogleTagManager/TagManagerResources.bundle" not found. Run 'pod install' to update the copy resources script.

يبدو وكأنه مشكلة منهجية.

اللعنة ، لقد نسيت إضافة مكون GoogleTagManager iOS بواسطة PR # 318.

إنها بالفعل مشكلة منهجية مع النظام الأساسي cordova-ios في إضافة دعم لـ Cocoapods ؛ لا يدعم نظام إنشاء CLI بشكل كامل تكوين الإنشاء المطلوب لبعض البودات مثل هذه (كما هو موضح في https://github.com/apache/cordova-ios/issues/659).

أنا (وآخرون) أستخدم الآن GTM عبر هذا المكون الإضافي في الإنتاج ، لذا فإن إزالة هذا المكون لنظام iOS أيضًا (على الرغم من أنه يعمل على إصلاح مشكلة إنشاء CLI) ليس خيارًا.

أحتاج إلى إعادة التفكير في استراتيجيتي لإدارة هذا: يعمل البناء في Xcode بشكل جيد عندما يتم تضمين مكونات GTM و Inapp Messaging SDK - إنها مجرد إنشاءات Cordova CLI هي المشكلة وهذا يرجع إلى مشكلة داخل Cordova CLI عملية البناء على iOS.

لذلك ، أقترح إنشاء فرع جديد من هذا الريبو - cli_build - والذي يزيل على وجه التحديد مكونات GTM و Inapp Messaging SDK لكلا النظامين الأساسيين (على الرغم من أن iOS هي المشكلة وأن Android يبني بشكل جيد مع CLI ، فأنا لا '' ر تريد إنشاء تناقضات عبر الأنظمة الأساسية). سيكون هذا الفرع بخلاف ذلك هو نفسه الرئيسي وسيتم الاحتفاظ به بالتوازي ولكن إصدارات npm ستكون خارج الفرع الرئيسي لذلك ستحتوي على مكونات GTM و Inapp Messaging SDK.
لذلك ، إذا كنت ترغب في البناء باستخدام Cordova CLI ، فستحتاج إلى الرجوع إلى الفرع مباشرةً في مشروعك:

cordova plugin add https://github.com/dpa99c/cordova-plugin-firebasex#cli_build

إذا قام إصدار جديد من cordova-ios بحل مشكلة الإنشاء الأساسية التي تحدث عند تضمين بعض البودات مثل هذه ، فيمكن لمن يستخدمون إصدارات CLI التبديل مرة أخرى إلى الفرع الرئيسي.

هذه هي أفضل طريقة يمكنني التفكير بها لإدارة هذه المشكلة - بعد كل شيء ، إنها مشكلة ناجمة عن عملية بناء Cordova CLI ويعمل البناء باستخدام Xcode بشكل جيد - لذلك لا أرغب في تقييد وظيفة المكون الإضافي لأولئك القادرين على البناء منها Xcode لصالح أولئك الذين لا يستطيعون.

هذا يبدو وكأنه حل معقول ، شكرا لك. نأمل أن يتمكن cordova-ios من إصدار إصدار جديد قريبًا ، لأن المشاكل تتراكم على جانب iOS مؤخرًا.

@ dpa99c هل هناك أي فرصة لنشر إصدارات cli على علامة npm؟ لا أعرف مدى مرونة علامات npm ... لقد استخدمت ألفا وبيتا بنفسي ، لكنني أعتقد من الناحية الفنية أنها يمكن أن تكون أي شيء. سيكون من الرائع حقًا إذا كان لا يزال بإمكانك نشر إصدار cli إلى npm الرسمي الخاص بك لهذه الوحدة ، فقط تحت علامة مختلفة. نأمل أن يسمح لك ذلك باستخدام نفس الإصدار مع لاحقة بديلة (مثل 8.2.0-cli مقابل 8.2.0) ، ونشر cli واحد تحت علامة cli في npm ، وبعد ذلك يمكننا ببساطة تغيير الإصدار الذي نستخدمه في package.json لدينا لإضافة -cli إلى نهاية الإصدار.

@ jrista فكرة جيدة -

حسنًا ، كما تمت مناقشته ، يوجد الآن فرع cli_build تمت إزالة مكونات

cordova plugin add [email protected]

تم توضيح ذلك الآن

يوجد إصدار تصحيح مطابق من الفرع الرئيسي يعيد إضافة مكونات Inapp Messaging ويهدف إلى البناء من Xcode حتى يحين وقت إصلاح الإصدار الجديد cordova-ios مشكلات إنشاء CLI:

    cordova plugin add [email protected]

شكرا @ dpa99c! سعيد لأن لاحقة الإصدار البديل عملت! هذا رائع!

@ dpa99c لقد أضفت cordova plugin add [email protected] إلى مشروعي ونجحت في إنشاء أول مرة لنظام iOS. ومع ذلك ، إذا قمت بتشغيل الأمر build ionic cordova build ios ، فإنني أتلقى الخطأ مرة أخرى بأن InAppMessagingDisplayResources.bundle "غير موجود.

@ PatrickJung94 [email protected] لا يحتوي على أي إشارات إلى مكون Inapp Messaging SDK لذا أتوقع أن لديك مرجعًا لإصدار غير CLI في مكان ما في التكوين الخاص بك والذي يتسبب في سحب هذا الإصدار بدلاً من ذلك.

تحقق من ملفات تكوين مشروعك وأيضًا plugins/cordova-plugin-firebasex/plugin.xml لمعرفة الإصدار الموجود بالفعل في مشروعك.

@ dpa99c لقد غيرت <plugin id="cordova-plugin-firebasex" version="9.0.1" إلى <plugin id="cordova-plugin-firebasex" version="9.0.1-cli" في plugins/cordova-plugin-firebasex/plugin.xml وما زلت أتلقى الخطأ بعد البناء. هل يمكن أن يكون هناك مرجع آخر يمكنني البحث عنه؟

حتى عند إزالة platforms/ios و plugins و node_modules وإعادة التثبيت باستخدام npm install وإعادة البناء مرة أخرى باستخدام ionic cordova build ios ، استمرت المشكلة.

@ PatrickJung94 تحقق أيضًا من package.json . سأقوم ببحث نصي متكرر لجميع ملفات المشروع للتأكد من أنك لم تفوت أي منها.

@ dpa99c package.json لديه الإدخال التالي: "cordova-plugin-firebasex": "^9.0.1-cli" الرغم من وجوده في package-lock.json لدي:

"cordova-plugin-firebasex": {
      "version": "9.0.1",
      "resolved": "https://registry.npmjs.org/cordova-plugin-firebasex/-/cordova-plugin-firebasex-9.0.1.tgz",
      "integrity": "sha512-VUFJjd7PLeeHQ6ZIbtjxGhTCUtKmWB4vhzl8QaJ0rUcr6rwhjE8FYg6n68MODaKlbSU1emlB2QcV8vvL354UCQ==",
      "requires": {
        "plist": "^3.0.1",
        "xcode": "^2.0.0",
        "xml-js": "^1.6.11"
      }
    }

لا يؤدي حذف ملف القفل وتشغيل تثبيت npm مرة أخرى إلى تحديث ملف القفل الذي تم إنشاؤه حديثًا.

@ PatrickJung94 ، حاول تشغيل cmd ionic cordova plugin rm cordova-plugin-firebasex --force

بعد ذلك ، تأكد من عدم وجود مجلد "your_project_name / plugin / cordova-plugin-firebasex". إذا كان لا يزال موجودًا ، فقد قمت بحذفه يدويًا.

ثم قم بتشغيل ionic cordova plugin add [email protected] .

بعد ذلك ، قم بتشغيل cmd npm install @ionic-native/firebase-x .

بعد ذلك ، تحقق باستخدام cmd ionic cordova plugin . يجب أن يسرد
cordova-plugin-firebasex 9.0.1-cli "Google Firebase Plugin" .

يجب عليك أيضًا التحقق من "your_project_name / plugin / cordova-plugin-firebasex / package.json" حيث سيتم الإشارة إلى 9.0.1-cli كل مكان ... وهو ما تريده. أخيرًا ، حدد "your_project_name / package.json" وابحث عن cordova-plugin-firebasex": "^9.0.1-cli .

بعد ذلك ، حاول إنشاء تطبيقك مرة أخرى sudo ionic cordova build ios .

مهلا،

فقط لمعلوماتك ، واجهت نفس المشكلة وتمكنت من حلها باتباع تعليمات @ kennethtck + عن طريق إزالة نظام ios الأساسي تمامًا> إعادة إضافته> إزالة المكون الإضافي> إعادة إضافته:

cordova platform remove ios;
cordova platform add ios@latest;
cordova plugin remove cordova-plugin-firebasex;
cordova plugin add [email protected];

واجهت مشاكل مماثلة وقمت بحلها بالتبديل إلى الإصدار 9.0.1-cli.

ومع ذلك ، فقد تسبب هذا في زيادة وقت إنشاء IOS بنسبة تزيد عن 400٪ (مقارنة بالإصدار 6.1.0 من المكون الإضافي). لقد تحققت من زيادة مماثلة عند تجميع نموذج التطبيق بهذين الإصدارين.

لقد لاحظت تعليقًا أعلاه من patrickchoi يقترح أن القفزة في أوقات البناء جاءت بين الإصدارين 8.0.1 و 8.1.0. حاولت الرجوع إلى 8.0.1 وهذا يبني بنجاح وبشكل أسرع بشكل كبير. في الوقت الحالي ، سأستخدم هذا الإصدار (8.0.1) لأنني لست بحاجة إلى أي من الميزات في الإصدارات اللاحقة ، كما أن أوقات الإنشاء المتزايدة تمثل مشكلة كبيرة ، خاصة في بيئة CI الخاصة بنا حيث نستخدم أجهزة Mac صغيرة الحجم ضعيفة نسبيًا.

هل يعرف أي شخص ما إذا كان هناك أي طريقة لتخفيف تباطؤ وقت الإنشاء في أحدث إصدارات المكون الإضافي؟ أدرك أن هذا ربما لا يمثل مشكلة في المكون الإضافي نفسه ... المزيد مع مكونات Firebase sdk (؟؟) هل هناك أي طريقة لتعديل هذا في وقت الإنشاء (ومن الأفضل إخراج هذا من الإعداد / البرنامج النصي / CLI)؟

لدينا تطبيق كوردوفا ولكننا نعمل أيضًا على إنشاء تطبيق ساعة أصلي لمشروع iOS الخاص بنا. لقد واجهنا الكثير من المشكلات أثناء محاولة استخدام Cordova CLI لإنشاء iOS عند الرغبة في التجميع في تطبيق الساعة (بسبب قيود CLI للتعامل مع كل من تطبيقات iOS والساعة أثناء عملية الإنشاء / الأرشفة - خاصة للتوقيع ، إذا كنت أتذكر). لهذا السبب ، نحتاج إلى إجراء عمليات إنشاء تطبيق iOS + watch يدويًا باستخدام xcodebuild.

واجهت نفس أخطاء الإنشاء كما توضح هذه المشكلة ، لكنني تمكنت أخيرًا من تشغيلها باستخدام ما يلي.

cd platforms/ios

xcodebuild -workspace PROJECTNAME.xcworkspace -scheme PROJECTNAME -configuration Release -destination generic/platform=iOS -archivePath PROJECTNAME.xcarchive archive SHARED_PRECOMPS_DIR=build/sharedpch ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES=YES

# exportOptions.plist was generated using XCode (archive app)
cp ../../build/ios/exportOptions.plist .

xcodebuild -exportArchive -archivePath PROJECTNAME.xcarchive -exportOptionsPlist exportOptions.plist -exportPath build/device

نحن نستخدم v8.0.1 من هذا البرنامج المساعد. واجهت بعض المشكلات الأخرى عند محاولة استخدام 9.0.1-cli ( error: Build input file cannot be found: gRPCCertificates-Cpp.bundle/gRPCCertificates-Cpp ).

أعلم أن وضعنا ربما يكون فريدًا ولكن ربما يمكن أن يساعد هذا الآخرين في المستقبل. شكر!

@ kennethtck لقد نسيت أن أخبرك أن زميلي قد أصلح مشكلتنا باتباع خطواتك. شكرا لك على الخطوات المقدمة!

@ dpa99c مرحبًا ، يبدو أنه تم دمج InAppMessaging و GoogleTagManager مرة أخرى في فرع 9.0.3-cli من الرئيسي في https://github.com/dpa99c/cordova-plugin-firebasex/commit/b21213f3cb4d461f87980694fb2a2869ba979996. نتيجة لذلك بدأنا في الحصول على هذا الخطأ مرة أخرى.

@ dpa99c ، maxtacco ، أنا كذلك.

`cd [MYPATH] / منصات / ios
/ bin / sh -c [MYPATH] / Library / Developer / Xcode / DerivedData / [APPNAME] -aanowkqndskebrfkxmvdfhcnksye / Build / Intermediates.noindex / [APPNAME] .build / Debug-iphonesimulator / [APPNAME] .FC / Script-2DA7BADC1B ش
خطأ: لم يتم العثور على المورد "[MYPATH] / Library / Developer / Xcode / DerivedData / [APPNAME] -aanowkqndskebrfkxmvdfhcnksye / Build / Products / Debug-iphonesimulator / FirebaseInAppMessaging / InAppMessagingDisplayResources.bundle". قم بتشغيل 'pod install' لتحديث البرنامج النصي لموارد النسخ.

* فشل البناء *

فشلت أوامر البناء التالية:
PhaseScriptExecution [CP] موارد النسخ Pods [MYPATH] / Library / Developer / Xcode / DerivedData / [APPNAME] -aanowkqndskebrfkxmvdfhcnksye / Build / Intermediates.noindex / [APPNAME] .build / Debug-iphonesimulator / [APPBFC] .build / Script-2D45D72 .sh
(1 فشل)
xcodebuild: فشل الأمر مع رمز الخروج 65`

أنا أستخدم المكون الإضافي cordova webpack وأفضل استخدام CLI.

في صحتك!

* تعديل *

لقد فعلت خدعة orenagiv ونجحت . يبدو أن التراجع إلى [email protected] هل

@ jh-gh هل حصلت على تجميع أسرع؟ بالنسبة لي ، يستغرق الأمر على جهاز Macbook Air 2012 الخاص بي 23 دقيقة مع CLI (كوردوفا تشغيل ios) للبدء !! ويبدو دائمًا أنه يعيد بناء كل شيء.

في صحتك.

Phrensoua لا ، لم أجد أي طريقة لجعله يجمع بشكل أسرع على تيار 9.X. ما زلت أبقى مع 8.0.1 في الوقت الحالي لأن هذا الإصدار لا يزال يبني في فترة زمنية معقولة لنظام iOS بينما يستغرق الإصدار 9.0.1-cli 4 أضعاف الوقت الذي يستغرقه الإنشاء (لم تجرب أي إصدارات لاحقة 9.X) .

لقد لاحظت تعليقًا أعلاه من patrickchoi يشير إلى أن القفزة في أوقات البناء جاءت بين 8.0.1 و 8.1.0. حاولت الرجوع إلى 8.0.1 وهذا يبني بنجاح وبشكل أسرع بشكل كبير. في الوقت الحالي ، سأستخدم هذا الإصدار (8.0.1) لأنني لست بحاجة إلى أي من الميزات في الإصدارات اللاحقة ، كما أن أوقات الإنشاء المتزايدة تمثل مشكلة كبيرة ، خاصة في بيئة CI الخاصة بنا حيث نستخدم أجهزة Mac صغيرة الحجم ضعيفة نسبيًا.

عفواً @ jh-gh هل قمت بحل المشكلة بمجرد إزالة المكون الإضافي وتثبيته مرة أخرى بهذه الطريقة؟

cordova plugin add [email protected]

منصة كوردوفا إزالة ios ؛
منصة كوردوفا تضيف ios @ latest ؛
كوردوفا البرنامج المساعد إزالة cordova-plugin-firebasex ؛
إضافة [email protected] ؛

شكرا لك orenagiv هذا عملت بالنسبة لي.

@ jh-gh ، شكرًا لك على ردك. من جانبي ، لقد عقدت العزم على التنفيذ في Xcode في الوقت الحالي. لا يعيد البناء في كل مرة على الأقل ...

في صحتك

لقد لاحظت تعليقًا أعلاه من patrickchoi يشير إلى أن القفزة في أوقات البناء جاءت بين 8.0.1 و 8.1.0. حاولت الرجوع إلى 8.0.1 وهذا يبني بنجاح وبشكل أسرع بشكل كبير. في الوقت الحالي ، سأستخدم هذا الإصدار (8.0.1) لأنني لست بحاجة إلى أي من الميزات في الإصدارات اللاحقة ، كما أن أوقات الإنشاء المتزايدة تمثل مشكلة كبيرة ، خاصة في بيئة CI الخاصة بنا حيث نستخدم أجهزة Mac صغيرة الحجم ضعيفة نسبيًا.

عفواً @ jh-gh هل قمت بحل المشكلة بمجرد إزالة المكون الإضافي وتثبيته مرة أخرى بهذه الطريقة؟

cordova plugin add [email protected]

ilclaudio لقد قمت بتحديث إصدار التبعية في package.json وقمت ببناء نظيف (rm node_modules ، npm install ، rm platform / plugins ، (أيوني) cordova build ios).

واجهت مشاكل مماثلة وقمت بحلها بالتبديل إلى الإصدار 9.0.1-cli.

ومع ذلك ، فقد تسبب هذا في زيادة وقت إنشاء IOS بنسبة تزيد عن 400٪ (مقارنة بالإصدار 6.1.0 من المكون الإضافي). لقد تحققت من زيادة مماثلة عند تجميع نموذج التطبيق بهذين الإصدارين.

لقد لاحظت تعليقًا أعلاه من patrickchoi يقترح أن القفزة في أوقات البناء جاءت بين الإصدارين 8.0.1 و 8.1.0. حاولت الرجوع إلى 8.0.1 وهذا يبني بنجاح وبشكل أسرع بشكل كبير. في الوقت الحالي ، سأستخدم هذا الإصدار (8.0.1) لأنني لست بحاجة إلى أي من الميزات في الإصدارات اللاحقة ، كما أن أوقات الإنشاء المتزايدة تمثل مشكلة كبيرة ، خاصة في بيئة CI الخاصة بنا حيث نستخدم أجهزة Mac صغيرة الحجم ضعيفة نسبيًا.

هل يعرف أي شخص ما إذا كان هناك أي طريقة لتخفيف تباطؤ وقت الإنشاء في أحدث إصدارات المكون الإضافي؟ أدرك أن هذا ربما لا يمثل مشكلة في المكون الإضافي نفسه ... المزيد مع مكونات Firebase sdk (؟؟) هل هناك أي طريقة لتعديل هذا في وقت الإنشاء (ومن الأفضل إخراج هذا من الإعداد / البرنامج النصي / CLI)؟

حصلت على مشكلة بناء مع 9.1.1 أيضًا ولكن البناء باستخدام 9.1.1-cli كان ناجحًا. هذه الإصدارات لها نفس مشكلة وقت البناء. ربما يستغرق الأمر 15-20 دقيقة. لذلك قمت بخفض إصدار 8.0.1 وتم بناؤه في 2-3 دقائق. شكرا للاختبار وتلميح 8.0.1.

تضمين التغريدة
شكرا!
إضافة [email protected]

عملت بشكل مثالي ، وقت التجميع هو المشكلة الوحيدة حاليًا

نصيحة: لا تعلقها هكذا:
"cordova-plugin-firebasex": "^9.1.1-cli"
لأنه سيكون افتراضيًا إلى غير cli. استخدمه مباشرة.
"cordova-plugin-firebasex": "9.1.1-cli"

يبدو واضحًا ، لكنني أضعت بعض الوقت اليوم في خدش رأسي ، لماذا لا يزال يلقي بالخطأ القديم.

هل هناك فرق بين البناء باستخدام CLI cordova run ios --device وباستخدام Xcode؟

sboudouk نعم ، موثق هنا ) بينما يعمل بشكل جيد عند البناء في Xcode ، ومن هنا جاءت الحاجة إلى -cli فرع

هل من الممكن توفير حزمة بعلامة "latest-cli"؟

مرحبا

لدي مشكلة كبيرة مع هذا البرنامج المساعد على iOS عند التجميع. لم أرغب في بدء موضوع جديد لأنني لا أعتقد أنه مشكلة في المكون الإضافي ولكن مع مكتبة pods. يقوم بإنشاء خطأ في البناء يقول أن القرص ممتلئ في مراحل مختلفة من البناء. أنا أستخدم خادم mac بعيدًا ولا يمكن أن يساعدني دعمهم بعيدًا عن إنشاء خادم جديد يمكنني القيام به ولكني أشعر أنه ربما نفس المشكلة. أعتقد أنها مشكلة كاملة في قرص ذاكرة الوصول العشوائي لأن مكتبة البود هذه ضخمة وتجعل وقت الترجمة يستغرق وقتًا أطول. لقد بحثت عبر الإنترنت عن شيء ما لإصلاح هذه المشكلة في تنظيف بناء xcode وما إلى ذلك ، لكنني ما زلت غير قادر على إنشاء هذا الإصدار. هل هناك شخص يمكنه أن يوجهني إلى حل لماذا يعطي هذا الخطأ وما الذي يمكنني فعله لإصلاحه؟ يعمل البناء بشكل جيد وسريع بدون هذا البرنامج المساعد

هنا مثال
خطأ: الوصول إلى قاعدة بيانات البناء
"/users/user915171/Library/Developer/Xcode/DerivedData/Astra-albjvigcqvqixkbzncjokuhaaees/Build/Intermediates.noindex/XCBuildData/build.db": قاعدة البيانات أو القرص ممتلئ

أي شخص لديه هذه المشكلة ، يرجى إضافة المكون الإضافي التالي بنفس الإصدار:
cordova-plugin-androidx-adaptor 1.1.1.1 تحديث
كوردوفا-البرنامج المساعد- androidx 1.0.2
كوردوفا-البرنامج المساعد- فايرباسكس 9.0.1-cli

هناك حاجة إلى cordova-plugin-androidx و cordova-plugin-androidx-adaptor لهذا البرنامج المساعد.

مهلا

تواجه مشكلات مماثلة في البناء مع كوردوفا كلي. ومع ذلك ، لم أتمكن من حلها عن طريق التغيير إلى أي إصدار من المكوّن الإضافي -cli. أو عن طريق الرجوع إلى الإصدار 8.0.1 الذي كان يعمل لدي سابقًا.

تفشل تصميماتي دائمًا مع الرسالة التالية بغض النظر عن إصدار المكون الإضافي الذي أستخدمه الآن. إذا قمت بإزالة المكون الإضافي بالكامل ، ينجح البناء.

لست متأكدًا من الكيفية التي لا تزال بها هذه البودات تتسلل إلى بنيتي حتى عند استخدام المكون الإضافي -cli أو المكون الإضافي 8.0.1. سوف أنشر إذا وجدت حلا. إذا رأى أي شخص هذه المشكلة ، فيرجى إخبارنا بذلك.


أثناء إنشاء الوحدة النمطية 'nanopb' المستوردة من /Users/haydencassar/Code/AppTemplate/frontend/platforms/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCCTLibrary/Protogen/nanopb/cct.nanopb.h:22:
في ملف مضمن من: 1:
/ Users / haydencassar / Code / AppTemplate / frontend / platform / ios / Pods / Target Support Files / nanopb / nanopb-umbrella.h: 13: 9: خطأ: علامة اقتباس مزدوجة تتضمن "pb.h" في رأس إطار العمل ، الزاوية المتوقعة - أقواس بدلاً من ذلك [-خطأ ، -مقتبس-تضمين-في-رأس-إطار]

استيراد "pb.h"

    ^~~~~~
    <pb.h>

/ Users / haydencassar / Code / AppTemplate / frontend / platform / ios / Pods / Target Support Files / nanopb / nanopb-umbrella.h: 14: 9: خطأ: وضع علامة اقتباس مزدوجة تتضمن "pb_common.h" في رأس إطار العمل ، الزاوية المتوقعة - أقواس بدلاً من ذلك [-خطأ ، -مقتبس-تضمين-في-رأس-إطار]

استيراد "pb_common.h"

    ^~~~~~~~~~~~~
    <pb_common.h>

أثناء إنشاء الوحدة النمطية 'nanopb' المستوردة من /Users/haydencassar/Code/AppTemplate/frontend/platforms/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCCTLibrary/Protogen/nanopb/cct.nanopb.h:22:
في ملف مضمن من: 1:
في الملف مضمن من / Users / haydencassar / Code / AppTemplate / frontend / platform / ios / Pods / Target Support Files / nanopb / nanopb-umbrella.h: 14:
/Users/haydencassar/Code/AppTemplate/frontend/platforms/ios/Pods/nanopb/pb_common.h:8:10: خطأ: تتضمن علامات الاقتباس المزدوجة "pb.h" في رأس إطار العمل ، والزاوية المتوقعة بين قوسين بدلاً من ذلك [- خطأ ، مقتبس-تضمين-في-رأس إطار]

تشمل "pb.h"

     ^~~~~~
     <pb.h>

أثناء إنشاء الوحدة النمطية 'nanopb' المستوردة من /Users/haydencassar/Code/AppTemplate/frontend/platforms/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCCTLibrary/Protogen/nanopb/cct.nanopb.h:22:
في ملف مضمن من: 1:
/ Users / haydencassar / Code / AppTemplate / frontend / platform / ios / Pods / Target Support Files / nanopb / nanopb-umbrella.h: 15: 9: خطأ: وضع علامات اقتباس مزدوجة تتضمن "pb_decode.h" في رأس إطار العمل ، الزاوية المتوقعة - أقواس بدلاً من ذلك [-خطأ ، -مقتبس-تضمين-في-رأس-إطار]

استيراد "pb_decode.h"

    ^~~~~~~~~~~~~
    <pb_decode.h>

أثناء إنشاء الوحدة النمطية 'nanopb' المستوردة من /Users/haydencassar/Code/AppTemplate/frontend/platforms/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCCTLibrary/Protogen/nanopb/cct.nanopb.h:22:
في ملف مضمن من: 1:
في الملف مضمن من / Users / haydencassar / Code / AppTemplate / frontend / platform / ios / Pods / Target Support Files / nanopb / nanopb-umbrella.h: 15:
/Users/haydencassar/Code/AppTemplate/frontend/platforms/ios/Pods/nanopb/pb_decode.h:9:10: خطأ: تتضمن علامات الاقتباس المزدوجة "pb.h" في رأس إطار العمل ، ومن المتوقع وضع أقواس بين قوسين بدلاً من ذلك [- خطأ ، مقتبس-تضمين-في-رأس إطار]

تشمل "pb.h"

     ^~~~~~
     <pb.h>

أثناء إنشاء الوحدة النمطية 'nanopb' المستوردة من /Users/haydencassar/Code/AppTemplate/frontend/platforms/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCCTLibrary/Protogen/nanopb/cct.nanopb.h:22:
في ملف مضمن من: 1:
/ Users / haydencassar / Code / AppTemplate / frontend / platform / ios / Pods / Target Support Files / nanopb / nanopb-umbrella.h: 16: 9: خطأ: علامة اقتباس مزدوجة تتضمن "pb_encode.h" في رأس إطار العمل ، الزاوية المتوقعة - أقواس بدلاً من ذلك [-خطأ ، -مقتبس-تضمين-في-رأس-إطار]

استيراد "pb_encode.h"

    ^~~~~~~~~~~~~
    <pb_encode.h>

أثناء إنشاء الوحدة النمطية 'nanopb' المستوردة من /Users/haydencassar/Code/AppTemplate/frontend/platforms/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCCTLibrary/Protogen/nanopb/cct.nanopb.h:22:
في ملف مضمن من: 1:
في الملف مضمن من / Users / haydencassar / Code / AppTemplate / frontend / platform / ios / Pods / Target Support Files / nanopb / nanopb-umbrella.h: 16:
/Users/haydencassar/Code/AppTemplate/frontend/platforms/ios/Pods/nanopb/pb_encode.h:9:10: خطأ: تتضمن علامات الاقتباس المزدوجة "pb.h" في رأس إطار العمل ، والزوايا المتوقعة بين قوسين بدلاً من ذلك [- خطأ ، مقتبس-تضمين-في-رأس إطار]

تشمل "pb.h"

     ^~~~~~
     <pb.h>

أثناء إنشاء الوحدة النمطية 'nanopb' المستوردة من /Users/haydencassar/Code/AppTemplate/frontend/platforms/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCCTLibrary/Protogen/nanopb/cct.nanopb.h:22:
في ملف مضمن من: 1:
/ Users / haydencassar / Code / AppTemplate / frontend / platform / ios / Pods / Target Support Files / nanopb / nanopb-umbrella.h: 17: 9: خطأ: علامة اقتباس مزدوجة تتضمن "pb.h" في رأس إطار العمل ، الزاوية المتوقعة - أقواس بدلاً من ذلك [-خطأ ، -مقتبس-تضمين-في-رأس-إطار]

استيراد "pb.h"

    ^~~~~~
    <pb.h>

/ Users / haydencassar / Code / AppTemplate / frontend / platform / ios / Pods / Target Support Files / nanopb / nanopb-umbrella.h: 18: 9: خطأ: وضع علامة اقتباس مزدوجة تتضمن "pb_decode.h" في رأس إطار العمل ، الزاوية المتوقعة - أقواس بدلاً من ذلك [-خطأ ، -مقتبس-تضمين-في-رأس-إطار]

استيراد "pb_decode.h"

    ^~~~~~~~~~~~~
    <pb_decode.h>

/ Users / haydencassar / Code / AppTemplate / frontend / platform / ios / Pods / Target Support Files / nanopb / nanopb-umbrella.h: 19: 9: خطأ: وضع علامات اقتباس مزدوجة تتضمن "pb_common.h" في رأس إطار العمل ، الزاوية المتوقعة - أقواس بدلاً من ذلك [-خطأ ، -مقتبس-تضمين-في-رأس-إطار]

استيراد "pb_common.h"

    ^~~~~~~~~~~~~
    <pb_common.h>

/ Users / haydencassar / Code / AppTemplate / frontend / platform / ios / Pods / Target Support Files / nanopb / nanopb-umbrella.h: 20: 9: خطأ: علامة اقتباس مزدوجة تتضمن "pb.h" في رأس إطار العمل ، الزاوية المتوقعة - أقواس بدلاً من ذلك [-خطأ ، -مقتبس-تضمين-في-رأس-إطار]

استيراد "pb.h"

    ^~~~~~
    <pb.h>

/ Users / haydencassar / Code / AppTemplate / frontend / platform / ios / Pods / Target Support Files / nanopb / nanopb-umbrella.h: 21: 9: خطأ: وضع علامة اقتباس مزدوجة تتضمن "pb_encode.h" في رأس إطار العمل ، الزاوية المتوقعة - أقواس بدلاً من ذلك [-خطأ ، -مقتبس-تضمين-في-رأس-إطار]

استيراد "pb_encode.h"

    ^~~~~~~~~~~~~
    <pb_encode.h>

/ Users / haydencassar / Code / AppTemplate / الواجهة الأمامية / منصات / ios / Pods / Target Support Files / nanopb / nanopb-umbrella.h: 22: 9: خطأ: وضع علامات اقتباس مزدوجة تتضمن "pb_common.h" في رأس إطار العمل ، الزاوية المتوقعة - أقواس بدلاً من ذلك [-خطأ ، -مقتبس-تضمين-في-رأس-إطار]

استيراد "pb_common.h"

    ^~~~~~~~~~~~~
    <pb_common.h>

تم إنشاء 13 خطأ.
في الملف مضمن من /Users/haydencassar/Code/AppTemplate/frontend/platforms/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCCTLibrary/Protogen/nanopb/cct.nanopb.c:20:
/Users/haydencassar/Code/AppTemplate/frontend/platforms/ios/Pods/GoogleDataTransport/GoogleDataTransport/GDTCCTLibrary/Protogen/nanopb/cct.nanopb.h:22:10: خطأ فادح: تعذر إنشاء وحدة "nanopb"

تضمن

~ ~~~ ^
تم إنشاء 14 خطأ.

* فشل الأرشيف *

فشلت أوامر البناء التالية:
CompileC /Users/haydencassar/Library/Developer/Xcode/DerivedData/Vita_Plan-adyddjnjkyhpbddfhgtvyhypkbaq/Build/Intermediates.noindex/ArchiveIntermediates/Vita iphone / IntermediateData/Vita_Plan-adyddjnjkyhpbddfhgtvyhypkbaq/Build/Intermediates.noindex/ArchiveIntermediates/Vita iphone / IntermediateDataBuildFilesPath / .nanopb.o GoogleDataTransport / GoogleDataTransport / GDTCCTLibrary / Protogen / nanopb / cct.nanopb.c normal armv7 c com.apple.compilers.llvm.clang.1_0.compiler
(1 فشل)
xcodebuild: فشل الأمر مع رمز الخروج 65
[ERROR] حدث خطأ أثناء تشغيل العملية الفرعية cordova.

    cordova build ios --debug --device --buildConfig ./platforms/ios/build.json exited with exit code 65.

@ hcassar93 لقد رأيت مشاكل مماثلة. أقترح أن تحاول ترقية تثبيت cocoapods إلى الإصدار التجريبي (راجع https://stackoverflow.com/questions/63646607/xcode-12-using-firebase-pods-lexical-or-preprocessor-issue-pb-h -file-not-fou / 63648164 # 63648164). هذا أصلحها بالنسبة لي.

@ jh-gh شكرا جزيلا. حقا أقدر مساعدتك. تم إصلاحه لي أيضًا.

يعمل تثبيت إصدار المكون الإضافي في 8.0.1 بالنسبة لي أيضًا. بناء من CLI و CI.

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات