Что означает сообщение об ошибке публикации Google Play APK?

236

Я пытаюсь опубликовать новую версию приложения для Android в Google Play и получить следующую ошибку?

Эта конфигурация не может быть опубликована по следующей (-ым) причинам (-ам): Версия 1 не обслуживается ни для одной конфигурации устройства: все устройства, которые могут получить версию 1, получат версию 4

Я не понимаю это Что это означает?

введите описание изображения здесь

Nilzor
источник
Я думаю, это говорит о том, что ваша версия 1 не может быть установлена ​​на любом устройстве, потому что Google не может найти устройство, на котором оно может быть установлено, поэтому вместо него будет установлена ​​версия 4
Vytautas
Ну ... мне не разрешено публиковать v4 из-за этого сообщения об ошибке, так что это будет проблемой. Также я думаю, что вы не правы - v1 можно установить на все устройства.
Нильзор,
8
Я решил это в моем случае, так как, когда кнопка «Архив» принадлежит текущему APK, кнопка «Опубликовать» по умолчанию включена для вновь загруженного APK
Master Mind
2
Заархивируйте старый, или они будут сосуществовать, чтобы обслуживать различные конфигурации.
Эви Сонг
6
нажмите кнопку «Деактивировать», принадлежащую текущему APK, затем кнопка «Опубликовать» включена по умолчанию для вновь загруженного APK
Master Mind

Ответы:

302

Это случилось со мной, когда я опубликовал два APK (версии 3 и 4) за короткий промежуток времени. Нажав «Деактивировать» в раскрывающемся списке рядом с версией 3, казалось, чтобы это исправить.

Я предполагаю, что это очень плохо сформулированное сообщение об ошибке, означающее что-то вроде: «Ваш оригинальный APK еще не был опубликован на всех серверах обновлений, поэтому некоторые из них могут полностью пропустить эту версию». Но это немного догадка.

Крис Рей
источник
При нажатии Deactivateна предыдущую версию apk не включится Move to Productionв более новой версии. Похоже, старая версия говорит in Prod will be unpublished. Так стоит ли ждать, пока он не будет опубликован со всех серверов Google Play?
Викалп Патель
4
Но что, если я не хочу деактивировать старую версию и вместо этого сделать пошаговую версию новой? Поэтому они должны некоторое время сосуществовать, пока старая не будет полностью заменена
.///
6
@VikalpPatel это сработало для меня. Кнопка «Опубликовать сейчас» становится активной после деактивации старого apk.
Файзал
если вы находитесь на вкладке бета-тестирования, я не вижу опцию «деактивировать» в выпадающем списке рядом с тем, что было бы вашей «версией 3»
Лу Морда
1
@LouisMorda, если вы переключитесь в расширенный режим с помощью переключателя в верхнем левом углу на вкладке APK консоли разработчика, вы сможете деактивировать свой старый APK
Mr.Noob
114

По какой-то причине, когда вы загружаете новый APK без немедленного нажатия кнопки «опубликовать» (вы, вероятно, нажали кнопку «Сохранить черновик» в первый раз), Google считает , что вы хотите опубликовать ОБА apk одновременно .

Это обычно требуется, когда у вас несколько APK для разных конфигураций (скажем: версия для Android 2.x и другая для 3+ или версия для планшета и другая для телефона и т. Д.)

Однако в вашем случае вы просто загружаете обновление и хотите, чтобы оно заменило ваш предыдущий APK.

Решить :

  1. Нажмите на переключатель в расширенный режим в правом верхнем углу
  2. Нажмите « Действие» -> «Переместить старый» APK и выберите « Деактивировать ».
  3. Ошибка должна исчезнуть, и вы должны увидеть ваш старый apk в "ДРУГИХ APKS" и новый, готовый к публикации.
  4. Просто нажмите «Опубликовать», чтобы изменения вступили в силу, и дождитесь их распространения.

Предупреждение Google вводит в заблуждение. Надеюсь, это прояснит это.

Даниэле Сегато
источник
Кнопка «Опубликовать сейчас» находится в левом верхнем углу. Он не отображается в разделе «Действия». Только «перейти к бете» и «перейти к альфе» отображаются в разделе «Действия».
Уильям Нили
@WilliamNeely, вам сначала нужно переключиться в расширенный режим
Даниэле Сегато,
Привет @DanieleSegato это влияет на текущий APK, когда я "деактивировать"?
Ошадха
@Oshadha влияет на APK, который вы нажимаете, когда выбираете деактивировать.
Даниэле Сегато
8

Я решил ту же проблему с моим приложением. Я должен загрузить с версии 1.0 до версии 2.0. - Я загрузил v2.0 в бета-версии. - Когда он был загружен, я деактивировал v1.0 в PROD. - Следующим шагом было переместить v2.0 в PROD из бета-версии. - Затем кнопка PUBLISH была активирована для завершения процесса. Я надеюсь, что это помогает.!

user2684170
источник
5

Решение @Chris является правильным. Но что на самом деле означает сообщение:

  1. version1 и version4 имеют одинаковую конфигурацию: одинаковый уровень API, одинаковое разрешение экрана ... в основном все в манифесте ...

  2. Таким образом, это означает, что любое устройство может установить версию и установить версию4.

  3. Теперь все ясно: поскольку версия 4 имеет более высокий код версии, каждое устройство получит версию 4 вместо версии 1.

Там нет смысла все же положить version1 "в производство" больше. Ни при каких обстоятельствах ни одно устройство не получит эту версию. Так что вы должны «деактивировать» его.

FMY
источник
Это правильное объяснение. На мой взгляд, они должны добавить опцию «ОК - Отключить версию 1 и Включить версию 4 для выпуска», чтобы решить эту проблему.
Lkraider
1
каждый задается вопросом, почему это не происходит автоматически тогда, если это так определимо.
Майк Кэмпбелл
2

Это может быть взломом, но вы можете обойти это, выполнив поэтапное развертывание до 1-50%, а затем увеличить его до 100%.

В этом случае сообщение об ошибке не препятствует публикации вашего приложения, а также вам не нужно ничего деактивировать.

Marcell
источник
1

Это чисто предположение, но у вас есть предыдущая версия загружена? Если это так, возможно, он marketcodeустановлен на что-то выше, чем ваша новая сборка, например 4

ScouseChris
источник
Да, у меня есть предыдущая версия. Скриншот добавлен. Я начинаю думать, что это как-то связано с колонкой «ЭКРАННЫЕ СХЕМЫ». Я не понимаю, почему он ограничен только «большими, большими, средними и маленькими», хотя в моем файле манифеста таких ограничений нет
Nilzor
1

У меня была похожая проблема, но поскольку моя предыдущая версия имела более низкий максимальный andorid api, мне не разрешили вернуться к предыдущей версии.

В конце концов для меня это была проблема с затмением, которая не сохраняла изменения в файле manifext. Я перезапустил затмение, сохранил мой проект, сделал apk, а затем все заработало. Возможно, стоит попробовать, если приведенные выше ответы не удаются.

Марк Гилкрист
источник
0

Я просто переключился на основной вид. Который автоматически заменяет текущую версию новой версией немедленно. Это, конечно, не подходит для каждого сценария развертывания приложения. Но должно быть все в порядке в большинстве (простых) случаев.

j7nn7k
источник
0

Вы можете одновременно использовать только один APK. Перед загрузкой вы должны деактивировать текущий. То же самое относится и к альфа- и бета-тестированию APK - вы можете опубликовать только один APK для тестирования.

Я согласен, что сообщение об ошибке ужасно!

J.Churchill
источник
0

Я думаю, что консоль говорит вам, что у вас есть две версии, поддерживающие одни и те же устройства, поэтому нет причин использовать оба

Решение: удалите старую ...
ИЛИ,
если ваша старая версия поддерживает определенные устройства, отметьте это, и консоль примет это

SoliQuiD
источник
0

Я также получил эту проблему, когда я загрузил APK в первый раз, но я заметил, что уровень API 18-17 при просмотре деталей APK. Поэтому я добавил этот код в AndroidManifest.xml, чтобы указать максимальный уровень API

<uses-sdk android:minSdkVersion="18"
        android:targetSdkVersion="23"
        android:maxSdkVersion="23" />

После этого проблема решена :)

Канда Рунапонгса Сайкаев
источник
0

в моем случае старая версия apk была опубликована в бета-тестировании. пока я пытался обновить свое приложение поверх уже опубликованного приложения с новым apk.

Я переместил мой новый apk в бета-тестирование и отменил старый apk из бета-тестирования.

и затем, наконец, переместил новый apk из беты в prod

Сумит Джоши
источник
0

У меня была та же самая проблема, я просто ДЕАКТИВИРУЮ старый apk, который был активен в настоящее время, и затем загружаю новый apk. Это решило мою проблему

Пир Фахим Шах
источник
как вы деактивируете старые APK? кажется, что опция в пользовательском интерфейсе больше не существует
knocte
Перейти к выпуску приложения и проверить его там
Пир Фахим Шах
-1

Чтобы решить проблему, сделайте следующее:

  1. удалить новый apk, находящийся в черновом режиме
  2. очистить кэш истории браузера или использовать другой браузер и заново загрузить apk
Роберт
источник
-1

У меня была та же проблема, но я выполнил следующую команду в моем файле APK

jarsigner -verify -verbose -certs Myapp.apk

Затем я загрузил новый APK в игровой магазин, и он легко опубликовался.

rajkirpalsinj
источник
1
jarsigner -verifyкоманда только для чтения; это не меняет существующий APK, так что это ничего не изменит.
Мэтт Куигли,
-2

У меня была та же проблема, но я решил ошибки Block Lint.

См. Страницу ошибки Lint, значок упаковщика в правом углу, щелкните там и заблокируйте пакет. Когда вы щелкнете мышью, чтобы оставить ошибку lint, приложение выполнит экспорт подписанного пакета приложения.

введите описание изображения здесь

Виджей Маурья
источник
-3

это случилось со мной, когда я опубликовал новый APK, но случайно закрыл окно браузера без завершения отправки.

Мариус Интегратор
источник