#java #android #flutter #dart #cross-platform
#java #Android #flutter #dart #кросс-платформенный
Вопрос:
Я опубликовал собственное приложение с именем пакета, например (com.hamzamuazzam.foo) в Google Playstore, и я хочу обновить свое приложение, которое теперь создано на flutter, а также внес все необходимые изменения в свой код.
новое приложение flutter создано с тем же именем пакета (com.hamzamuazzam.foo), что и старое родное приложение, которое уже опубликовано в Google playstore.
Теперь мой главный вопрос заключается в том, могу ли я обновить свое новое приложение flutter с помощью собственного приложения без изменения имени пакета в Google Play Store ,
позволит ли мне консоль Google play обновлять приложение flutter с тем же именем пакета в том же собственном приложении?
Ответ №1:
Да, вы можете обновить свое приложение. Вообще говоря, для обновлений применяются только три правила:
- Имя пакета должно быть идентичным.
- Значение
versionCode
должно быть больше, чем уversionCode
ранее выпущенного приложения. - Приложение должно быть подписано тем же ключом подписи, что и раньше.
Кроме того, не имеет значения, создаете ли вы свой пакет приложений APK или Android с помощью Kotlin / Java, Flutter, Xamarin, React Native, Cordova или любой другой технологии.
Ответ №2:
Ответ @Alex идеален, но я хотел бы подробно изложить информацию следующим образом (для сценария Flutter):
-
Да, имя пакета должно быть идентичным, и это можно проверить в файле Android (версия Flutter)
AndroidManifest.xml
. -
Когда мы говорим об
versionCode
иversionName
, эта информация получена изpubspec.yaml
файла Flutter сversion
атрибутом. Этот атрибут имеет форму0.3.2 3
, где0.3.2
соответствуетversionName
и3
(число послеversionCode
. И да, значениеversionCode
должно быть больше, чем уversionCode
ранее выпущенного приложения
И, наконец, keystore-password-alias
версия, используемая для подписи Android Flutter, должна совпадать с версией, используемой для подписи родной версии Android.
Принимая все это во внимание, вы сможете выполнить обновление плавно.