Как обновить нативное приложение Android до новой версии на основе NativeScript, сохранив данные из старого приложения? - PullRequest
0 голосов
/ 01 февраля 2019

Я хочу обновить существующее приложение Android (не с NativeScript), а новое (с NativeScript).

В старом приложении некоторые пользовательские данные хранились в базе данных SQLite.Я хочу, чтобы это пережило обновление.

Теперь у меня есть тот же идентификатор приложения в новом приложении, что и в старом, так что эта часть на месте.Чтобы проверить, сохранилась ли база данных, я запустил эмулятор Android со старым приложением, создал несколько записей, а затем опубликовал собственную версию сценария, используя

tns run android --bundle --device=1

, и это правильно заменяет старое приложение новымкод, но в то же время он, кажется, стирает базу данных, которая в противном случае правильно хранится в / data / data / app-id / database

Это из-за tnsразвертывание для отладки, возможно, начинающееся с очистки системы, или что-то еще?

Как вы, ребята, тестируете это?

Редактировать: Очевидно, что удаление после каждой компиляции, а не обновление - это известная вещь,отслеживается в их Github как выпуск # 3382

1 Ответ

0 голосов
/ 01 февраля 2019

tns run android --bundle создает версию APK для разработки, которая не будет соответствовать подписи вашей рабочей версии APK, созданной с использованием собственного Android.

Если вы используете тот же сертификат подписи, который вы использовали для производственного собственного приложения, показапустив app / build вашей {N} версии APK, вы по умолчанию выживете при обновлении.

Так что ваша команда может выглядеть как

tns [build|run] android --bundle --release --keyStorePath /path/to/keystore --keyStorePassword keystore-password --keyStoreAlias keystore-alias --keyStoreAliasPassword keystore-alias-passwrd

Подробнее о документах.

Редактировать: Похоже, что CLI имеет известную проблему с tns run, вместо замены APK он удаляет старую версию и устанавливает новую версию,Так что это не должно быть проблемой при публикации APK, созданного с tns build.Кредиты @ DimitarTachev.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...