React-Native Offline Bundle - изображения, не показывающие
У меня есть приложение React-Native, которое я пытаюсь развернуть в режиме выпуска на свой телефон. Я могу связать приложение с телефоном. База данных, видео и аудио активы находятся там, но изображения не отображаются в пользовательском интерфейсе.
Я сделал следующее, чтобы "связать" мое приложение:
- в папке проекта в терминальном запуске
react-native bundle --platfrom ios --dev false --entry-file index.ios.js --bundle-output main.jsbundle
- Перетащите ссылку на файл
main.jsbundle
в XCode в папке myapp
- В XCode откройте
AppDelegate.m
и раскомментируйте jsCodeLocation = [[NSBundle mainBundle]…
- Откройте
Product > Scheme > Edit Scheme
, затем измените Build Configuration
на Release
- Выберите
myapp
в навигаторе проекта, а затем:
под TARGETS: myappTests
> Build Phases
> Link Binary With Libraries
нажмите +
выберите Workspace
> libReact.a
и Add
Когда я пытаюсь скомпилировать в XCode с параметром ../node_modules/react-native/packager/react-native-xcode.sh
в myapp > targets > myapp > Bundle React Native code and images
, он не работает с error code 1
.
Я видел LOADS сообщений об этом, и я пробовал:
- чтобы проверить
Run script only when installing
- приложение затем устанавливает, но без изображений
- добавление
source ~/.bash_profile
в реакцию-native-xcode.sh - сбой сборки приложения
Любая помощь будет принята с благодарностью!
Ответы
Ответ 1
- это изображения в xcode или в файловой системе?, я не вижу --assets-dest
в ваших параметрах пакета
react-native bundle --minify --dev false --assets-dest ./ios --entry-file index.ios.js --platform ios --bundle-output ios/main.jsbundle
также добавьте папку с ресурсами в xcode, например, в пакет.
обратите внимание, что объекты изображения копируются только в том случае, если они требуются правильно, см. документацию
Ответ 2
Когда вы создаете пакет, также поместите --assets-dest./
"response-native bundle --platform ios --assets-dest./--dev false --entry-file index.ios.js --bundle-output iOS/main.jsbundle"
Он будет генерировать папку main.jsbundle и Assets. Перейдите в свой Xcode правой кнопкой мыши, добавьте файлы в проект и добавьте файл main.jsbundle в проект. Также перетащите папку "Активы" и выберите "Создать по ссылке" (примечание: не выбирайте группу "Создать" ).
i использовал реакцию 0,33,
main.jsbundle использует папку ресурсов (небольшая a), но генерирует активы (Caps A). Я просто сменил сгенерированную папку с Assets на активы и импортировал ее в xcode и начал работать