Вопрос или проблема
Я пробовал это:
Мой код podfile:
bitcode_strip_path = `xcrun --find bitcode_strip`.chop!
def strip_bitcode_from_framework(bitcode_strip_path, framework_relative_path)
framework_path = File.join(Dir.pwd, framework_relative_path)
command = "#{bitcode_strip_path} #{framework_path} -r -o #{framework_path}"
puts "Удаление бит-кода: #{command}"
system(command)
end
framework_paths = [ "Pods/hermes-engine/destroot/Library/Frameworks/macosx/hermes.framework/hermes",
"Pods/hermes-engine/destroot/Library/Frameworks/macosx/hermes.framework/Versions/Current/hermes",
"Pods/hermes-engine/destroot/Library/Frameworks/universal/hermes.xcframework/ios-arm64/hermes.framework/hermes",
"Pods/hermes-engine/destroot/Library/Frameworks/universal/hermes.xcframework/ios-arm64_x86_64-maccatalyst/hermes.framework/hermes",
"Pods/razorpay-pod/Pod/Razorpay.xcframework/ios-arm64/Razorpay.framework/Razorpay", # Добавьте путь Razorpay здесь]
framework_paths.each do |framework_relative_path|
strip_bitcode_from_framework(bitcode_strip_path, framework_relative_path)
end
Ответ или решение
Чтобы решить проблему с отсутствием файла SYM для Razorpay.framework в архиве, необходимо убедиться, что DWARF файл действительно включён в архив. Вот шаги, которые помогут исправить эту ситуацию:
-
Проверьте Podfile: Убедитесь, что вы импортируете Razorpay правильно в вашем Podfile. Если вы используете CocoaPods, убедитесь, что у вас последняя версия pod. Проверьте, добавлен ли
use_frameworks!
в ваш Podfile. -
Обновите CocoaPods: Убедитесь, что ваши библиотеки CocoaPods обновлены. Вы можете сделать это, выполнив команду:
pod repo update pod install
-
Настройка DWARF: Вам нужно убедиться, что DWARF-файлы создаются при сборке. Откройте ваш проект в Xcode и выполните следующие действия:
- Перейдите в настройки проекта (Project settings).
- Затем выберите вкладку "Build Settings".
- Найдите параметр "Debug Information Format" (Формат отладочной информации) и убедитесь, что он установлен на "DWARF with dSYM File".
-
Изменение скрипта: Убедитесь, что ваш скрипт для удаления биткода правильно настроен и действительно выполняется. Вот пример, как ваш скрипт может выглядеть:
bitcode_strip_path = `xcrun --find bitcode_strip`.chop! framework_paths = [ # Ваши пути к фреймворкам "Pods/razorpay-pod/Pod/Razorpay.xcframework/ios-arm64/Razorpay.framework/Razorpay" ] framework_paths.each do |framework_relative_path| command = "#{bitcode_strip_path} #{framework_relative_path} -r -o #{framework_relative_path}" puts "Stripping bitcode: #{command}" system(command) end
-
Проверка архива: После выполнения и успешного завершения сборки вам нужно убедиться, что в каталоге .xcarchive присутствуют файлы dSYM:
- Откройте Finder, зайдите в папку с вашим архивом.
- Правой кнопкой мыши нажмите на .xcarchive и выберите "Show Package Contents".
- Убедитесь, что вы видите папку "dSYMs" и в ней содержатся файлы соответствующие вашим фреймворкам.
- Сборка и отправка в App Store: После выполнения всех вышеперечисленных действий создайте архив снова и отправьте его в App Store. Убедитесь, что все необходимые файлы присутствуют в архиве и что он правильно настроен.
Если вы все сделали правильно и проблема сохраняется, проверьте логи Xcode на наличие ошибок или предупреждений, которые могут указать на дополнительные проблемы. Вы также можете обратиться к документации Razorpay для получения информации о поддержке и зависимости их фреймворка.
Если у вас возникнут дополнительные вопросы или если проблема не разрешится, не стесняйтесь задать их.