yoomoney / yookassa-payments-swift

This library allows implementing payment acceptance into mobile apps on iOS and works as an extension to the YooMoney API
https://yookassa.ru/developers
MIT License
41 stars 41 forks source link

ThreatMetrixAdapter.framework is invalid. The Info.plist file is missing the required key: CFBundleVersion. #104

Closed pavlof01 closed 3 years ago

pavlof01 commented 3 years ago

Frameworks/ThreatMetrixAdapter.framework is invalid. The Info.plist file is missing the required key: CFBundleVersion.

Верси 5.3.0, добавил все новые файлы, в режиме дебаг нормально работает.

Ошибку выдает при выгрузке в test flight, я вручную добавил версию, но это нельзя назвать решением, приходится каждый раз добавлять после архивации

oltv00 commented 3 years ago

@pavlof01

Решили не выпускать новую версию, а подменить текущую ThreatMetrixAdapter 2.0.0 с добавлением CFBundleVersion в Info.plist

Чтобы обновить ThreatMetrixAdapter локально, думаю будет достаточно выполнить:

pod update ThreatMetrixAdapter

Если проблема сохранится, можно почистить pod-repo и потом установить зависимости:

rm -rf ~/.cocoapods/repos/yoomoney-tech/
pod install
abdulgamidov commented 3 years ago

@pavlof01

Решили не выпускать новую версию, а подменить текущую ThreatMetrixAdapter 2.0.0 с добавлением CFBundleVersion в Info.plist

Чтобы обновить ThreatMetrixAdapter локально, думаю будет достаточно выполнить:

pod update ThreatMetrixAdapter

Если проблема сохранится, можно почистить pod-repo и потом установить зависимости:

rm -rf ~/.cocoapods/repos/yoomoney-tech/
pod install

Данное решение не помогло =(

oltv00 commented 3 years ago

@abdulgamidov Такая же ошибка ? И ошибка на CI или локально ? 100% уверен в том что это кэш.

Если локально, то можно еще попробовать удалить папку Pods/

т.е.

rm -rf ~/.cocoapods/repos/yoomoney-tech/
rm -rf Pods/
pod install

Еще возможно в первом пункте вместо pod update ThreatMetrixAdapter выполнить pod update YooKassaPayments

abdulgamidov commented 3 years ago

Продела все выше указанное, но все равно при выгрузке билда выдает такую же ошибку - The Info.plist file is missing the required key: CFBundleVersion. Такой вопрос, нужно ли все таки вручную добавлять версию ?

pavlof01 commented 3 years ago

@oltv00 не помогает, ни через fastlane, ни через Xcode

bits84 commented 3 years ago

кто нашел решение?

pavlof01 commented 3 years ago

@bits84 пока-что вручную или скриптом проставлять версию, ждем официального решения

bits84 commented 3 years ago

@pavlof01 подскажи где проставлять надо? /ThreatMetrixAdapter/ThreatMetrixAdapter.xcframework/Info.plist тут?

pavlof01 commented 3 years ago

@bits84 нет, когда сбилдил апку, заходишь в его через show package content, ищешь папку ThreatMetrixConnection и там в info.plist проставляешь версию любую. Либо: https://developer.apple.com/forums/thread/23778 find . -name 'Info.plist' -not -path "*.storyboard*" | while read file; do echo $file; { plutil -p $file | grep CFBundleVersion; } || echo Failed $file; done;

pavlof01 commented 3 years ago

@oltv00 any updates???

oltv00 commented 3 years ago

@bits84 нет, когда сбилдил апку, заходишь в его через show package content, ищешь папку ThreatMetrixConnection и там в info.plist проставляешь версию любую. Либо: https://developer.apple.com/forums/thread/23778 find . -name 'Info.plist' -not -path "*.storyboard*" | while read file; do echo $file; { plutil -p $file | grep CFBundleVersion; } || echo Failed $file; done;

Подождите, а при чем тут ThreatMetrixConnection ? Проблема была в зависимости ThreatMetrixAdapter, в info.plist не было ключа CFBundleVersion. В текущей версии ThreatMetrixAdapter 2.0.0 этот ключ есть.

У кого воспроизводится проблема локально, предлагаю следующий алгоритм решения: В папке с проектом выполнить в консоли:

rm -rf ~/.cocoapods/repos/yoomoney-tech/
rm -rf ~/Library/Caches/CocoaPods/
rm -rf Pods/
pod install

Дальше попробовать собрать Archive и сделать Validate.

pavlof01 commented 3 years ago

@oltv00 спасибо, помогло