Упакуйте ресурсы .bundle внутри так, чтобы они не были видны во время распространения - PullRequest
2 голосов
/ 26 мая 2020

Я пытаюсь создать Stati c Библиотеку (MyLibrary) с пакетом (Resources), который будет содержать такие ресурсы, как изображения и CoreData файл модели, используемый в библиотеке stati c.

Я создал и создал 2 файла в папке Products , libMyLibrary.a и Resources.bundle. Я предполагаю, что во время распространения мне нужно отправить эти 2 клиента.

Я заметил, что только отправка libMyLibrary.a не будет работать, и мне нужно добавить папку с именем MyLibrary.swiftmodule как хорошо, чтобы приложение могло идентифицировать фреймворк.

Итак, чтобы уменьшить все это (и проблему для обеспечения совместимости библиотеки Stati c как с устройством, так и с симулятором), я преобразовал Stati c Library в Stati c Framework с использованием скрипта , который в итоге генерирует MyLibrary.framework . Я добавляю это в приложение, которое использует эту библиотеку, добавляю:

Параметры сборки -> Путь поиска -> Путь компиляции = $ (PROJECT_DIR) /MyLibrary.framework

и все вроде работает.

Моя единственная проблема в том, что Resources.bundle, который я предоставил клиенту, который использует MyLibrary, клиент может видеть содержимое внутри этого пакета

enter image description here

Есть ли способ как-то скрыть все эти ресурсы от клиента, например, для MyLibrary.framework, клиент не видит кода.

Может быть, какая-то упаковка или что-то в этом роде, но так, чтобы библиотека все еще могла получить доступ к Resources.bundle

...