Ошибка Android "Not_Market_Managed" - PullRequest
       24

Ошибка Android "Not_Market_Managed"

23 голосов
/ 17 августа 2010

Работаю над опцией службы рыночного лицензирования, и у меня возникают некоторые проблемы с примером приложения.

Когда я впервые запустил образец, я получил сообщение об ошибке, говорящее о том, что приложение не было лицензировано.,Я связал свой аккаунт с симулятором, чтобы он получил тестовый ответ, и теперь я получаю сообщение об ошибке «Ошибка приложения: NOT_MARKET_MANAGED»

Означает ли это, что мне нужно загрузить приложение на рынок?чтобы проверить, работает ли он?

Ответы [ 9 ]

9 голосов
/ 15 июня 2011

Может быть и другой способ. Комментарии на MainActivity образца:

 * The first thing you need to do is get your hands on your public key.
 * Update the BASE64_PUBLIC_KEY constant below with your encoded public key,
 * which you can find on the
 * <a href="http://market.android.com/publish/editProfile">Edit Profile</a>
 * page of the Market publisher site.
 * <p>
 * Log in with the same account on your Cupcake (1.5) or higher phone or
 * your FroYo (2.2) emulator with the Google add-ons installed. Change the
 * test response on the Edit Profile page, press Save, and see how this
 * application responds when you check your license.

И когда вы войдете в систему http://market.android.com/publish/editProfile, вы увидите вариант для изменения License Test Response:

enter image description here

Текстуально говоря:

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

Если вы щелкнете по этому списку выбора, вы увидите различные опции:

enter image description here

Полагаю, все, что вам нужно сделать для этой исходной учебной программы LVL, это изменить ответ с Respond normally на LICENSED или любой другой параметр, который вы хотите проверить.

ОБНОВЛЕНИЕ: Оказывается, что вышеуказанная мера недостаточна. Я все еще получаю ошибку NOT_MARKET_MANAGED. Я предполагаю, что «Пример лицензирования рынка» должен быть загружен в соответствии с предложенными предыдущими ответами. Обратите внимание, что это не может быть отладочная версия:

enter image description here

О , и вы не можете загрузить этот «Пример лицензирования рынка» как . Вы должны как минимум изменить название пакета:

enter image description here

Я вижу, как можно улучшить систему образцов / примеров Google, чтобы она стала более удобной для разработчиков ...

Странно. После загрузки приложения (просто загрузка и сохранение черновика, без заполнения каких-либо других обязательных полей) «Пример лицензирования рынка» перестает выдавать ошибку NOT_MARKET_MANAGED, несмотря на то, что явно выбран NOT_LICENSED. Вместо этого он отвечает сообщением Allow the user access. Я также попытался установить (для целей тестирования и обучения) значение ERROR_SERVER_FAILURE, но получаю то же сообщение Allow the user access.

Почему?

9 голосов
/ 17 августа 2010

Да, ваше приложение должно быть в продаже, и если оно уже есть, у вас должен быть код версии, который больше или равен уже опубликованному.

5 голосов
/ 20 августа 2010

Вы бы подумали, что "Сохраненный черновик" будет именно для этого. В противном случае вы продаете приложение, которое по определению не может быть полностью протестировано в реальном времени.

3 голосов
/ 06 января 2012

После небольшой борьбы я заработал.Вы не можете использовать образец LVL как есть.

Вот что я сделал:

  • изменил пакет проекта на что-то другое (я использовал: lvl.test)
  • установил BASE64_PUBLIC_KEY MainActivity в тот, что в вашем РазработчикеКонсольный профиль.
  • экспорт подписанного приложения
  • перейдите на консоль разработчика и загрузите приложение (создайте фиктивные образы, дайте ему фиктивное имя, описание и т. Д., Чтобы оно сохранялось и отображалось как «Неопубликованные»).)
  • установите экспортированное приложение (из вашей файловой системы) на тестовое устройство (например, adb install bin / path / to / your.apk)
  • на вашем устройстве, откройте Android Market и перейдите по адресу:Настройки> Учетные записи> и выберите ту, которая соответствует вашей учетной записи консоли разработчика
  • , теперь вы можете выбрать статический тестовый ответ на лицензию в своем профиле консоли разработчика и сохранить его.Когда вы запустите образец LVL на своем устройстве, ответ будет соответствовать выбранному вами!
3 голосов
/ 11 апреля 2011

Загрузите ваше приложение (.apk) на рынок. Состояние по умолчанию будет «Сохраненный черновик», поэтому оно не будет отображаться для общего доступа, но вы все равно можете проверить лицензирование.

Еще одна потенциальная проблема:

Убедитесь, что версия, которую вы тестируете / используете, имеет тот же android: versionCode в AndroidManifest.xml, что и черновая версия в маркете. Если версии отличаются, вы получите сообщение об ошибке NOT_MARKET_MANAGED. (Очевидно, пара ключей RSA используется для лицензии проверка выполняется для каждого приложения / версии.)

2 голосов
/ 25 мая 2014

По моему опыту, приложение должно быть опубликовано до начала работы LVL, в т.ч. тестирование статического ответа. Для меня ERROR_NOT_MARKET_MANAGED пропал только после публикации, хотя документы говорят, что вы можете отладить и протестировать реализацию лицензирования приложения до публикация приложения .

Классная часть - , которую вы можете публиковать, имея только альфа / бета-сборки - приложение действительно не выйдет live , его смогут использовать только тестовые аккаунты.

Когда вы готовитесь к первоначальному выпуску, может показаться неестественным попадание на Опубликовать , прежде чем вы полностью убедитесь, что все в порядке (и тот факт, что вы должны поместить в описание и скриншоты прежде чем вы сможете сделать это, это еще более тревожно - вы бы подумали, что это последние штрихи) - но вы должны просто убедиться, что вы сделали правильный выбор имени пакета и того, является ли приложение платным или бесплатным - эти вещи не могут быть изменены после публикации. Публикация сама по себе не делает приложение общедоступным; если у вас нет Production сборки, не беспокойтесь о случайном запуске не протестированной версии.

1 голос
/ 26 сентября 2012

Это связано, так что это может кому-то помочь:

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

0 голосов
/ 28 января 2017

Если вы уже попробовали все предложения выше, попробуйте это:

У меня был тот же самый ответ некоторое время, и я не мог понять, почему это так. Я прочитал всю документацию по Лицензирование приложений и все еще получаю тот же раздражающий код ответа NOT_MARKET_MANAGED.

Я наконец смог решить проблему, изменив свой applicationId в файле AndroidManifest.xml. Я переписал приложение с нуля, начав с чистого нового проекта. Проблема была в том, что я не использовал точный правильный идентификатор приложения. Проблема заключалась в том, что исходное приложение в Google Play Store использовало буквы в верхнем регистре, а я писал все буквы в нижнем регистре во вновь созданном проекте.

Поскольку я исправил applicationId, чтобы он соответствовал 100% (включая регистр), я получаю ожидаемое поведение службы лицензирования.

0 голосов
/ 18 апреля 2012

В моем случае я получал из-за разницы кода версии как .. Уже опубликован код версии apk = 2

и после некоторых тестовых релизов новых apk я установил код версии на 5

, которая вызывала эту ошибку, поскольку разница версий должна быть точно равна 1 с опубликованным в данный момент apk .. То же самое было применено и с именем версии ..

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