Как изменить общие идентификаторы пакетов в проекте Unity Android?

Мой подвал и я хочу
Я уже сделал и опубликовал игру в Google PlayStore. (предположим, что это идентификатор пакета com.mycompany.mygame1)
И я хочу начать свой следующий игровой проект с копии прошлой игры. моя версия единства - 2018.2.5f1 и использую внутреннюю (не gradle) сборку. в моей последней игре (mygame1) есть плагины gpg, admob.

моя работа
Сделайте новую страницу игровой консоли и страницу сервисной консоли gpg. Создайте новый репозиторий git и скопируйте Assets, папку ProjectSettings из последнего проекта. Используется та же версия Unity.
И поменял некстс.
1) измените идентификатор пакета на новую игру в инспекторе> настройки сборки> другие настройки> имя пакета (предположим, что новый идентификатор пакета - com.mycompany.mygame2)
2) создайте новый файл хранилища ключей jks и установите его в инспекторе> настройки сборки> настройки публикации 3) просто найдите и замените весь текст mygame1 на mygame2 в каждом AndroidManifest.xml
4) скопируйте ресурс достижения из новой консоли сервиса Google Play в редактор> окно> Игры Google Play> Настройка> Настройка Android и нажмите кнопку «Настройка».

Моя проблема
но когда я делаю 4), редактор спрашивает меня об этом;

Set Bundle Identifier?
The server configuration is using com.mycompany.mygame1, but the player setting is set to com.mycompany.mygame2. Set the bundle Identifier to com.mycompany.mygame1?
Ok / Cancel

Итак, я нажал "Отмена". потому что я не хочу использовать mygame1.

Но он генерирует файл ProjectSettings / GooglePlayGameSettings.txt с идентификатором пакета com.mycompany.mygame1.

Думаю, должно быть место с предыдущим идентификатором пакета store.

Поэтому я рекурсивно просматриваю каждый файл с текстом mygame1 с помощью TotalCommander. И он сказал 2 результата.

ProjectSettings / GooglePlayGameSettings.txt ProjectSettings / ProjectSettings.asset

первый - это сгенерированный файл (на основе некоторого сохраненного идентификатора пакета скрытый) .
а второй - двоичный, поэтому я не могу его взломать.

Вопрос Не знаю, где хранится com.mycompany.mygame1. Кто-нибудь, пожалуйста, помогите мне найти и изменить скрытый идентификатор пакета.

P.S.
В этом состоянии он может генерировать подписанный apk и, что удивительно, работает хорошо. Но я все же боюсь, что редактор хранит другой идентификатор пакета.

Вы можете изменить идентификатор пакета в ProjectSettings.asset следующим образом: «Редактировать»> «Настройки проекта»> «Проигрыватель»> «Android»> «Другие настройки»> «Имя пакета». Возможно, вы захотите изменить его для всех платформ, поскольку это поле является отдельным для каждой платформы.

JeanLuc 02.10.2018 10:23

ProjectSettings.asset является только двоичным, потому что он настроен таким образом. Вы можете изменить его в меню «Правка»> «Настройки проекта»> «Редактор»> «Сериализация активов» на «Только текст». Это также повторно сериализует все ваши активы (материалы, префабы и т. д.) В текстовом формате, называемом YAML.

JeanLuc 02.10.2018 10:23

Но это не ваша проблема, сообщения об ошибках приходят от play-games-plugin-for-единство. Это говорит о том, что ваш проект Google Play Games все еще связан с com.mycompany.mygame1. Проверьте под Связанные приложения, есть ли проблема.

JeanLuc 02.10.2018 10:35
0
3
1 887
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

спасибо за все комментарии.

Я уже изменил название пакета. но я наконец нашел ответ из ваших 2, 3 комментариев.

Во-первых, Закрывать Unity Editor.
И удалите файл ProjectSettings / GooglePlayGameSettings.txt.
И я также удалил папку Library, obj, Packages, чтобы сделать ее понятной. (Думаю, может и не понадобиться.)

И перезапустите Unity и измените платформу на Android, редактор говорит, что gpgs готов к использованию. И делаю 4) полностью работает!

Я думаю, что редактор хранит в памяти старые проанализированные данные ProjectSettings / GooglePlayGameSettings.txt. Поэтому очистите идентификатор пакета и настройку gpgs, отключите редактор единства.

Другие вопросы по теме