#ios #xcode #go #gomobile
#iOS #xcode #Вперед #gomobile
Вопрос:
Возможно ли сгенерировать файл .xcframework с помощью gomobile?
Я создал файл .framework с помощью gomobile с помощью следующей команды:
привязка к gomobile -целевой ios -o ../frameworks/MyFramework.framework
После этого я попытался создать файл .xcframework с помощью этой команды
xcodebuild -создать-xcframework -фреймворк «MyFramework.framework» — вывести «MyFramework.xcframework»
Но он показывает ошибку:
ошибка: двоичные файлы с несколькими платформами не поддерживаются ‘/Users/nicco/MyFramework/MyFramework.framework/MyFramework’
Похоже, проблема в процессе генерации фреймворка gomobile.
Итак, я вижу 2 решения:
- Сгенерировать файл .xcframework с помощью gomobile.
- Измените процесс сборки .framework, чтобы можно было конвертировать сгенерированный файл .framework в .xcframework
Как это сделать?
Ответ №1:
это может помочь сгенерировать и xcframework
вам необходимо сгенерировать фреймворк для каждой архитектуры
mkdir arm64
gomobile bind -ldflags="-w -s" -target=ios/arm64 -o ./arm64/Openpgp.framework github.com/jerson/openpgp-mobile/openpgp
mkdir amd64
gomobile bind -ldflags="-w -s" -target=ios/amd64 -o ./amd64/Openpgp.framework github.com/jerson/openpgp-mobile/openpgp
а затем просто объедините с помощью команды xcode
xcodebuild -create-xcframework
-framework ./arm64/Openpgp.framework
-framework ./amd64/Openpgp.framework
-output Openpgp.xcframework
и это все, надеюсь, это поможет