Cordova-plugin-firebasex: iOS ITMS-90381

에 λ§Œλ“  2019λ…„ 08μ›” 13일  Β·  7μ½”λ©˜νŠΈ  Β·  좜처: dpa99c/cordova-plugin-firebasex

μ•ˆλ…•ν•˜μ„Έμš”,

이 λ¬Έμ œμ— λŒ€ν•΄ https://github.com/dpa99c/cordova-plugin-firebasex/issues/28 λŒ“κΈ€μ„ λ‹¬μ•˜μ§€λ§Œ λ‹«νžŒ 문제λ₯Ό μ°Ύκ³  μžˆλŠ”μ§€ λͺ¨λ₯΄κ² μŠ΅λ‹ˆλ‹€.

Appleμ—μ„œ μ§€μ†μ μœΌλ‘œ λ‹€μŒ 였λ₯˜κ°€ λ°œμƒν•©λ‹ˆλ‹€.

ITMS-90381: λ„ˆλ¬΄ λ§Žμ€ 기호 파일 - 이 κΈ°ν˜Έμ—λŠ” λ°”μ΄λ„ˆλ¦¬μ— ν•΄λ‹Ήν•˜λŠ” μŠ¬λΌμ΄μŠ€κ°€ μ—†μŠ΅λ‹ˆλ‹€. -3127412E29CC.symbols, D3E7DBBA-5DA2-3BF4-A0DD-85364E53991C.symbols, D69417C6-7DC5-3C36-9731-D98035C10B75.symbols].

  • cordova plugin add cordova-plugin-firebasex --variable IOS_STRIP_DEBUG=true
  • 이것도 ν–ˆμŠ΅λ‹ˆκΉŒ? https://stackoverflow.com/questions/25755240/too-many-symbol-files-after-successfully-submitted-my-apps/48518656#48518656
  • Xcode Debug Information Format μ—μ„œ DWARF
  • cordova-plugin-cocoapod-supportx λ₯Ό μ„€μΉ˜ν•˜λ €κ³  ν–ˆμ§€λ§Œ Xcode둜 λΉŒλ“œν•  λ•Œ 'Firebase.h' file not found 였λ₯˜κ°€ λ°œμƒν–ˆμŠ΅λ‹ˆλ‹€. μ„€μΉ˜λœ 팝 쒅속성이 μ—†λŠ” 것 κ°™μŠ΅λ‹ˆλ‹€. pod dependencies μ—λŠ” 아무 것도 ν‘œμ‹œλ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

μœ„μ˜ ν”ŒλŸ¬κ·ΈμΈμ„ μ„€μΉ˜ν•˜μ§€ μ•Šμ„ λ•Œμ˜ λͺ¨λ“  ν¬λ“œ 쒅속성은 λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€.

- Crashlytics (3.12.0):
  - Fabric (~> 1.9.0)
- Fabric (1.9.0)
- Firebase/Auth (6.3.0):
  - Firebase/CoreOnly
  - FirebaseAuth (~> 6.1.2)
- Firebase/Core (6.3.0):
  - Firebase/CoreOnly
  - FirebaseAnalytics (= 6.0.2)
- Firebase/CoreOnly (6.3.0):
  - FirebaseCore (= 6.0.3)
- Firebase/Messaging (6.3.0):
  - Firebase/CoreOnly
  - FirebaseMessaging (~> 4.1.0)
- Firebase/Performance (6.3.0):
  - Firebase/CoreOnly
  - FirebasePerformance (~> 3.1.0)
- Firebase/RemoteConfig (6.3.0):
  - Firebase/CoreOnly
  - FirebaseRemoteConfig (~> 4.1.0)
- FirebaseABTesting (3.0.0):
  - FirebaseCore (~> 6.0)
  - Protobuf (~> 3.5)
- FirebaseAnalytics (6.0.2):
  - FirebaseCore (~> 6.0)
  - FirebaseInstanceID (~> 4.2)
  - GoogleAppMeasurement (= 6.0.2)
  - GoogleUtilities/AppDelegateSwizzler (~> 6.0)
  - GoogleUtilities/MethodSwizzler (~> 6.0)
  - GoogleUtilities/Network (~> 6.0)
  - "GoogleUtilities/NSData+zlib (~> 6.0)"
  - nanopb (~> 0.3)
- FirebaseAnalyticsInterop (1.2.0)
- FirebaseAuth (6.1.2):
  - FirebaseAuthInterop (~> 1.0)
  - FirebaseCore (~> 6.0)
  - GoogleUtilities/AppDelegateSwizzler (~> 6.2)
  - GoogleUtilities/Environment (~> 6.2)
  - GTMSessionFetcher/Core (~> 1.1)
- FirebaseAuthInterop (1.0.0)
- FirebaseCore (6.0.3):
  - GoogleUtilities/Environment (~> 6.0)
  - GoogleUtilities/Logger (~> 6.0)
- FirebaseInstanceID (4.2.2):
  - FirebaseCore (~> 6.0)
  - GoogleUtilities/Environment (~> 6.0)
  - GoogleUtilities/UserDefaults (~> 6.0)
- FirebaseMessaging (4.1.1):
  - FirebaseAnalyticsInterop (~> 1.1)
  - FirebaseCore (~> 6.0)
  - FirebaseInstanceID (~> 4.1)
  - GoogleUtilities/AppDelegateSwizzler (~> 6.2)
  - GoogleUtilities/Environment (~> 6.2)
  - GoogleUtilities/Reachability (~> 6.2)
  - GoogleUtilities/UserDefaults (~> 6.2)
  - Protobuf (~> 3.1)
- FirebasePerformance (3.1.0):
  - FirebaseCore (~> 6.0)
  - FirebaseInstanceID (~> 4.2)
  - FirebaseRemoteConfig (~> 4.1)
  - GoogleToolboxForMac/Logger (~> 2.1)
  - "GoogleToolboxForMac/NSData+zlib (~> 2.1)"
  - GoogleUtilities/Environment (~> 6.0)
  - GoogleUtilities/ISASwizzler (~> 6.0)
  - GoogleUtilities/MethodSwizzler (~> 6.0)
  - GTMSessionFetcher/Core (~> 1.1)
  - Protobuf (~> 3.5)
- FirebaseRemoteConfig (4.1.0):
  - FirebaseABTesting (~> 3.0)
  - FirebaseCore (~> 6.0)
  - FirebaseInstanceID (~> 4.2)
  - GoogleUtilities/Environment (~> 6.0)
  - "GoogleUtilities/NSData+zlib (~> 6.0)"
  - Protobuf (~> 3.5)
- GoogleAppMeasurement (6.0.2):
  - GoogleUtilities/AppDelegateSwizzler (~> 6.0)
  - GoogleUtilities/MethodSwizzler (~> 6.0)
  - GoogleUtilities/Network (~> 6.0)
  - "GoogleUtilities/NSData+zlib (~> 6.0)"
  - nanopb (~> 0.3)
- GoogleToolboxForMac/Defines (2.2.1)
- GoogleToolboxForMac/Logger (2.2.1):
  - GoogleToolboxForMac/Defines (= 2.2.1)
- "GoogleToolboxForMac/NSData+zlib (2.2.1)":
  - GoogleToolboxForMac/Defines (= 2.2.1)
- GoogleUtilities/AppDelegateSwizzler (6.2.3):
  - GoogleUtilities/Environment
  - GoogleUtilities/Logger
  - GoogleUtilities/Network
- GoogleUtilities/Environment (6.2.3)
- GoogleUtilities/ISASwizzler (6.2.3)
- GoogleUtilities/Logger (6.2.3):
  - GoogleUtilities/Environment
- GoogleUtilities/MethodSwizzler (6.2.3):
  - GoogleUtilities/Logger
- GoogleUtilities/Network (6.2.3):
  - GoogleUtilities/Logger
  - "GoogleUtilities/NSData+zlib"
  - GoogleUtilities/Reachability
- "GoogleUtilities/NSData+zlib (6.2.3)"
- GoogleUtilities/Reachability (6.2.3):
  - GoogleUtilities/Logger
- GoogleUtilities/UserDefaults (6.2.3):
  - GoogleUtilities/Logger
- GTMSessionFetcher/Core (1.2.2)
- nanopb (0.3.901):
  - nanopb/decode (= 0.3.901)
  - nanopb/encode (= 0.3.901)
- nanopb/decode (0.3.901)
- nanopb/encode (0.3.901)
- Protobuf (3.9.0)

μž‘λ™ν•˜κ²Œ ν•˜κΈ° μœ„ν•΄ λ‚΄κ°€ ν•  수 μžˆλŠ” 일이 μžˆμŠ΅λ‹ˆκΉŒ?
μ—¬μ „νžˆ 앱을 κ²Œμ‹œν•  수 μžˆλŠ”μ§€ μ•„λ‹ˆλ©΄ 거뢀될 것인지 μ•Œκ³  κ³„μ‹­λ‹ˆκΉŒ?
μ΅œμ‹  버전(6.0.6)μœΌλ‘œλ„ μ‹œλ„ν–ˆμ§€λ§Œ 운이 μ—†μŠ΅λ‹ˆλ‹€.

μΌν•΄μ£Όμ…”μ„œ κ°μ‚¬ν•©λ‹ˆλ‹€

bug build issue ios

κ°€μž₯ μœ μš©ν•œ λŒ“κΈ€

λ¬Έμ œκ°€ 10.1.2둜 λ‹€μ‹œ λ°œμƒν•œ 것 κ°™μŠ΅λ‹ˆλ‹€.
λˆ„κ΅¬λ“ μ§€ 확인할 수 μžˆμŠ΅λ‹ˆκΉŒ? IOS_STRIP_DEBUGλ₯Ό true둜 μ„€μ •ν•˜κ³  10.0.1μ—μ„œ 10.1.2둜 μ—…κ·Έλ ˆμ΄λ“œν•œ ν›„ λ°œμƒν•©λ‹ˆλ‹€.
PodFile이 μ˜¬λ°”λ₯΄κ²Œ μ„€μ •λ˜μ—ˆμŠ΅λ‹ˆλ‹€.

post_install do |installer|
    installer.pods_project.targets.each do |target|
        target.build_configurations.each do |config|
            config.build_settings['DEBUG_INFORMATION_FORMAT'] = 'dwarf'
        end
    end
end

λͺ¨λ“  7 λŒ“κΈ€

μ•—, 이건 제 λΆ€μ£Όμ˜ λ•Œλ¬Έμž…λ‹ˆλ‹€.
#22λ₯Ό ν•΄κ²°ν•˜κΈ° μœ„ν•΄ cordova-plugin-cocoapod-supportx 에 λŒ€ν•œ 쒅속성을 μ œκ±°ν•˜λ©΄ 디버그 기호λ₯Ό μ œκ±°ν•˜κΈ° μœ„ν•΄ Podspec에 μ½”λ“œ 블둝을 μΆ”κ°€ν•˜λŠ” κΈ°λŠ₯이 μ œκ±°λ˜μ—ˆμŠ΅λ‹ˆλ‹€.
λ”°λΌμ„œ 기본적으둜 IOS_STRIP_DEBUG ν”ŒλŸ¬κ·ΈμΈ λ³€μˆ˜λŠ” ν˜„μž¬ 이 ν”ŒλŸ¬κ·ΈμΈμ˜ μ΅œμ‹  λ²„μ „μ—μ„œ 아무 것도 ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.
κ°€μž₯ 쒋은 해결책은 Podspec에 μΆ”κ°€ν•˜λŠ” μ½”λ“œλ₯Ό 이 ν”ŒλŸ¬κ·ΈμΈμ˜ 후크 슀크립트둜 μ΄μ‹ν•˜μ—¬ IOS_STRIP_DEBUG κ°€ λ‹€μ‹œ μž‘λ™ν•˜κΈ° μ‹œμž‘ν•˜λŠ” κ²ƒμž…λ‹ˆλ‹€.

v6.0.7μ—μ„œ 이에 λŒ€ν•œ μˆ˜μ • 사항을 κ²Œμ‹œν–ˆμŠ΅λ‹ˆλ‹€.
νšŒκ·€ ν…ŒμŠ€νŠΈλ₯Ό μˆ˜ν–‰ν•˜κ³  ν•΄λ‹Ή 버전에 μ—¬μ „νžˆ λ¬Έμ œκ°€ 있으면 μ•Œλ €μ£Όμ‹­μ‹œμ˜€.

λ©°μΉ  λ™μ•ˆ Pod μ’…μ†μ„±μœΌλ‘œ 인해 λ°œμƒν–ˆλ‹€κ³  μƒκ°ν•œ 문제λ₯Ό μΆ”μ ν•œ ν›„ λ§ˆμΉ¨λ‚΄ 이 버전 6.0.7이 더 이상 μž‘λ™ν•˜μ§€ μ•ŠλŠ”λ‹€λŠ” 것을 μ•Œμ•„λƒˆμŠ΅λ‹ˆλ‹€. after_prepare ν›„ν¬λŠ” κ·Έλƒ₯ μ£½μŠ΅λ‹ˆλ‹€. λ”°λΌμ„œ ios용으둜 λΉŒλ“œ/싀행을 μ‹œλ„ν•  λ•Œλ§ˆλ‹€ 였λ₯˜ λ©”μ‹œμ§€ 없이 이 λ‹¨κ³„μ—μ„œ λλ‚©λ‹ˆλ‹€. λ‚΄ envμ—μ„œ ν•„μš”ν•œ 것을 μ•Œλ €μ£Όμ‹­μ‹œμ˜€. 감사 ν•΄μš”.

μ €μ—κ²ŒλŠ” 이 λ²„μ „μ—μ„œ μž‘λ™ν•˜μ§€λ§Œ λ•Œλ‘œλŠ” μƒˆλ‘œ μ„€μΉ˜(ν”ŒλŸ¬κ·ΈμΈ, ν”Œλž«νΌ 및 node_modules 제거)ν•  λ•Œ μž‘λ™ν•˜λ„λ‘ ν•˜λ €λ©΄ λ§ˆμ§€λ§‰μ— 이 ν”ŒλŸ¬κ·ΈμΈμ„ μ œκ±°ν•˜κ³  μ„€μΉ˜ν•΄μ•Ό ν•©λ‹ˆλ‹€.

이 λ¬Έμ œλŠ” v9.1.1 및 v9.1.2둜 λ‹€μ‹œ λŒμ•„μ™”μŠ΅λ‹ˆλ‹€.

ITMS-90381: Too many symbol files - These symbols have no corresponding slice in any binary [F7A3D24C-0053-356A-925F-23FCCEF501B8.symbols, C8AB4DDC-DA83-3864-8727-0000AD058D38.symbols, 0DBE7F20-71F5-34BB-BA31-1C10A7043860.symbols, B55B0AA4-F4D5-3FC9-BD29-2C02DA4CDBB6.symbols, C59522FA-0221-3343-A076-24A5FAC42FFE.symbols, 029BD029-F164-3B7E-919C-B4DEE01AC9BF.symbols, B185E998-AA6D-3C7E-A85C-AB946C18B0BE.symbols, BA72F66F-E462-3539-9228-AC2E056F780E.symbols, 9E0D58C4-D873-3361-B585-E3EFAC2F9A51.symbols, C6D937EC-46C8-3D3F-A123-26374459270C.symbols, 518BF45A-5050-38F7-9496-13B6A0CC05DF.symbols, 347BC345-29AD-3C30-945C-3694D1915858.symbols, 39584FAB-2582-39B3-A4EA-293905D0817C.symbols].

"IOS_STRIP_DEBUG": "true"κ°€ 있고 μ²˜μŒλΆ€ν„° μ½”λ₯΄λ„λ°” ν”Œλž«νΌμ„ μž¬κ΅¬μΆ•ν•˜λ €κ³  μ‹œλ„ν–ˆμŠ΅λ‹ˆλ‹€. λ§ˆμ§€λ§‰ 두 λ²„μ „μ—μ„œ λ°œμƒν–ˆμŠ΅λ‹ˆλ‹€.

μ–΄λ–€ 아이디어?

@jpduckwo IOS_STRIP_DEBUG κ°€ true 둜 μ„€μ •λ˜λ©΄ ν”ŒλŸ¬κ·ΈμΈ 은 μ μ ˆν•œ λΉŒλ“œ 섀정을 Podfile ν•©λ‹ˆλ‹€.

platforms/ios/Podfile λ₯Ό ν™•μΈν•˜μ—¬ 이것이 μ„±κ³΅ν–ˆλŠ”μ§€ 확인할 수 μžˆμŠ΅λ‹ˆλ‹€. μ—¬κΈ°μ—λŠ” λ‹€μŒμ΄ ν¬ν•¨λ˜μ–΄μ•Ό ν•©λ‹ˆλ‹€.

post_install do |installer|
    installer.pods_project.targets.each do |target|
        target.build_configurations.each do |config|
            config.build_settings['DEBUG_INFORMATION_FORMAT'] = 'dwarf'
        end
    end
end

λ‚˜λ₯Ό μœ„ν•΄ 이것은 예제 ν”„λ‘œμ νŠΈλ‘œ ν…ŒμŠ€νŠΈν•  λ•Œ ν”ŒλŸ¬κ·ΈμΈμ˜ v9λ₯Ό μ‚¬μš©ν•˜λŠ” iOSμ—μ„œ 잘 μž‘λ™ν•©λ‹ˆλ‹€.

λ¬Έμ œκ°€ 10.1.2둜 λ‹€μ‹œ λ°œμƒν•œ 것 κ°™μŠ΅λ‹ˆλ‹€.
λˆ„κ΅¬λ“ μ§€ 확인할 수 μžˆμŠ΅λ‹ˆκΉŒ? IOS_STRIP_DEBUGλ₯Ό true둜 μ„€μ •ν•˜κ³  10.0.1μ—μ„œ 10.1.2둜 μ—…κ·Έλ ˆμ΄λ“œν•œ ν›„ λ°œμƒν•©λ‹ˆλ‹€.
PodFile이 μ˜¬λ°”λ₯΄κ²Œ μ„€μ •λ˜μ—ˆμŠ΅λ‹ˆλ‹€.

post_install do |installer|
    installer.pods_project.targets.each do |target|
        target.build_configurations.each do |config|
            config.build_settings['DEBUG_INFORMATION_FORMAT'] = 'dwarf'
        end
    end
end
이 νŽ˜μ΄μ§€κ°€ 도움이 λ˜μ—ˆλ‚˜μš”?
0 / 5 - 0 λ“±κΈ‰