Как изменить "Bundle Identifier" внутри React Native?

Запустив новый проект, инициирующий реакцию, xcode-проект получает идентификатор связки "org.reactjs.native.example.XYZApp". XYZ - это место для моего настоящего названия проекта.

Есть ли способ изменить этот идентификатор связки на стороне реакции? Конечно, я могу изменить его в XCode. Но это небезопасно, потому что его можно переоценить, когда response-native обновит xcode-проект, который может произойти в любое время, а также при восстановлении проекта.

Ответы

Ответ 1

На основе используемой на основе реакции версии вы используете кучу файлов, которые необходимо изменить на обеих платформах (Android и ios)

Список файлов для редактирования:

IOS

  1. [application_build_scheem].plist (это файл dict/xml, который содержит ключи, которые используются по умолчанию, если в проект не добавлены изменения (проект типа init-native-cli init)

ANDROID

  1. strings.xml (изменить значение ключа app_name)
  2. manifest.xml (изменить атрибут пакета)
  3. build.gradle (изменить значение applicationId)
  4. MainActivity.java (сменить пакет java-класса)
  5. MainApplication.java (сменить пакет класса java)

Стоит отметить:

есть модуль npm @https://www.npmjs.com/package/react-native-ci-tools, он, как оказалось, использует все вышеперечисленные функции и делает жизнь легкой.

Ответ 2

Для тех, кто хочет простой способ сделать именно это, я создаю action-native-app-id, он будет в основном редактировать упомянутые файлы. response-native-ci-tools фактически разветвляли мой код, чтобы создать устаревший отредактированный action-native-app-id-fixed, который не будет работать с последним реагированием native. Моя же будет..

https://github.com/kyle-ssg/react-native-app-id

использование так же просто, как react-native-app-id com.foo.bar

Ответ 3

К сожалению нет. Фактически мы просто обсуждали это сегодня в группе реагирования Native Facebook. https://m.facebook.com/groups/586400221495560?view=permalink&id=738954276240153&comment_id=739065029562411&notif_t=group_comment_reply&ref=m_notif

Лучший вариант сейчас - выбрать вариант "d" при обновлении, чтобы проверить файлы, прежде чем разрешить переопределение.