#android #unity3d #keystore
#Android #unity3d #хранилище ключей
Вопрос:
Фон:
Мне было поручено перенести существующую игру для Android (созданную с использованием Cocos2D) в Unity.
Разработчик оригинального приложения предоставил мне APK-файл «debug» оригинальной игры и «debug.файл keystore», который использовался для его подписи.
По его словам, отладка.файл хранилища ключей не требует пароля. Но, по-видимому, в Unity невозможно оставить поле пароля пустым, потому что оно будет жаловаться.
Итак, в Unity я добавил эту отладку.файл хранилища ключей в проигрывателе> Настройки публикации и ввел пароль по умолчанию «android». Для псевдонима (andrioddebugkey) я также ввел пароль по умолчанию «android». (По-видимому, это значения по умолчанию для debug.файлы хранилища ключей, после проведения некоторых исследований)
Проблема:
Когда я пытаюсь имитировать обновление приложения, установив новый (Unity) apk для перезаписи старого приложения, я получаю ошибку INSTALL_FAILED_UPDATE_INCOMPATIBLE / «подписи не соответствуют ранее установленной версии».
Почему это происходит, даже если я использую ту же отладку.файл хранилища ключей как исходный apk?
Я уже увеличил версию и код версии пакета, чтобы быть уверенным, но все равно не повезло.
Ответ №1:
Вероятно, приложение, которое вы пытаетесь установить, уже установлено. Удалите его и повторите попытку.
Комментарии:
1. Да, я знаю, что это сработает, но я пытаюсь имитировать обновление приложения, потому что мне нужно проверить, успешно ли сохранены данные из старого приложения в новой версии приложения. Поэтому удаление не имело бы смысла.
2. Он не подписан с тем же хранилищем ключей, поэтому его необходимо сначала удалить. Я не думаю, что есть какой-либо другой способ. После удаления и установки с новым ключом хранилища ключей вы можете использовать тот же ключ и протестировать обновление по своему усмотрению.
3. Как уже упоминалось, я использую тот же файл хранилища ключей, который использует исходное приложение. Таким образом, нет никаких оснований для того, чтобы подписи были разными.
4. Если он говорит, что подписи разные, значит, это другой мой друг. Вот другой способ. Попросите владельца файла хранилища ключей ввести к нему пароль (я думаю, вы можете ввести пароль к файлу хранилища ключей в android studio, минимум 6 символов), а затем передать его вам. Затем вы можете использовать тот же ключ и использовать этот пароль для его подписи.
5. Я изучу это. Спасибо за помощь, человек.