Android: Какой код ответа делает в VC-приложение для выставления счетов при истечении времени ожидания?

Какой код (ы) статуса ответа будет отображаться в сервисе платежных услуг Google Play In-App {ice, er} V3 при условии истечения сетевого тайм-аута? Является ли она единой среди всех ее функций?

Здесь я опишу свои выводы. Я проверил это на AVD с полностью установленным GP (GP Store V3.10.10, GP Services 2.0.12, G Services Framework 4.1.2), потянув за вилку хоста.

  • Метод getPurchases() возвращает кешированный результат, если это возможно (обратите внимание, что речь идет не о кэше вне Сервиса, а о прямом вызове getPurchases). Конечно, это означает, что почти всегда будет получен кешированный результат, за исключением случаев, когда Служба повторно инициализируется из-за потери локальных данных – случай, который не очень вероятен, и часто не нужно обрабатывать особыми способами на Уровень приложения.
  • Метод consumePurchase() вернет целочисленное значение 6 ( BILLING_RESPONSE_RESULT_ERROR ) после предполагаемого внутреннего таймаута сети 20 секунд (так что добавьте немного времени, пока вызывающий объект не увидит результирующий код). Я подозревал это, несмотря на то, что BILLING_RESPONSE_RESULT_ERROR описывается как BILLING_RESPONSE_RESULT_ERROR Fatal error during the API action потому что никакой другой код ошибки не имеет смысла здесь; К сожалению, слово « фатальный» все еще несколько неуместно для временного условия, такого как тайм-аут.
  • getSkuDetails() ведет себя так же, как consumePurchase() . Обновление : теперь есть данные о том, что getSkuDetails() может получить доступ к кешированной информации в локальной службе.
  • Похоже, что getBuyIntent() отлично работает без подключения, если элемент уже известен службе. Это объясняет, почему Харток видит пустой экран покупки GP: не проблема получить намерение купить у IAB V3 без подключения.

Заключение: Служба биллинга V3 для входящих приложений работает с внутренним кешем и таймаутом подключения к серверу 20 секунд. Для ошибок связи с сервером, которые локальный кеш не может решить, используется код ответа 6.

Intereting Posts
Ускорить скорость анимации «Навигационный ящик» при закрытии? Phonegap Media API – Запись и воспроизведение аудио – Android Как Android-приложение может получать звонки без разрешения? Как изменить язык для всего приложения Android? Существуют ли последствия для производительности при использовании ArrayList.get () много раз за итерацию? Android: fitsSystemWindows не работает на панели инструментов Android-камера: намерение данных возвращает null Viewpager не сохраняет изображения должным образом Как загрузить AnimationDrawable из xml-файла Поддержка языка хинди для Android – текст отображается в виде ящиков Как реализовать облачную службу обмена firebase на стороне сервера? Определить, начиналось ли приложение загрузки с голосовой команды или сенсорного ввода Android Как получить общую память памяти в устройстве? Почему textStyle курсив не применяется в макете Android для других шрифтов, чем сериф? Создание многоадресного сервера на основе кодеков OPUS (android / linux)