Настройки встроенных покупок андроид

Как отключить встроенные покупки на устройствах Android

Боритесь с искушением и защитите свой Android от покупок в приложении

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

К счастью, на устройствах Android легко защитить себя, и мы составили краткое руководство, которое поможет вам лучше справиться с ужасной покупкой в ​​приложении. В конце концов, маленький Джонни может хотеть этих дополнительных жизней в Candy Crush Saga, но ваш банковский счет определенно не хочет.

Активация мер защиты аккаунта Google

У Google есть несколько способов убедиться, что ваше устройство защищено от непреднамеренных покупок, и лучший способ — ввести пароль, прежде чем можно будет совершить любую покупку. Здесь есть несколько вариантов, поэтому Play Store может быть настроен так, чтобы запрашивать пароль для каждой покупки, каждые 30 минут или никогда. Очевидно, мы рекомендуем устанавливать его каждый раз, и его очень легко настроить.

  • Откройте Google Play Store на вашем устройстве.
  • Нажмите на меню гамбургера (три строки) в левой части панели поиска.
  • Прокрутите вниз до настроек.
  • Выберите опцию Требовать аутентификацию для покупок.
  • Убедитесь, что выбран первый вариант с указанием всех покупок.
  • 1.
    Найдите пункт «Настройки» в меню «Google Play».
  • 2.
    Выберите опцию «Требовать аутентификацию для покупок»
  • 3.
    Выберите первый вариант для самого высокого уровня защиты

Даже если вы не активируете эту опцию, Google Play всегда будет запрашивать пароль вашей учетной записи в приложениях с возрастом до 12 лет. Таким образом, он будет делать то же самое для каждой покупки в приложении.

Как использовать сканер отпечатков пальцев для аутентификации при покупке

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

  • Откройте Google Play Store на вашем устройстве.
  • Нажмите на меню гамбургера (три строки) в левой части панели поиска.
  • Прокрутите вниз до настроек.
  • Найдите опцию Аутентификация по отпечатку пальца и установите флажок.
  • Введите пароль, который вы использовали при первом вводе отпечатка пальца на своем устройстве.

Это оно! И ваш Google, и банковский счет теперь защищены от нелепых счетов, вызванных перерасходом средств, которых даже нет в реальном мире. Теперь вам нечего винить, кроме себя, когда вы читаете свои банковские выписки. Просто держись подальше от Pokémon Go, а?

Если вы присматриваете за маленькими детьми, то, возможно, вы захотите взглянуть на лучшие приложения для родительского контроля, или, если вы просто ищете больше безопасности на своем смартфоне, посмотрите наш список лучших антивирусов и средств безопасности. Программы.

Читайте также:  Как зашифровать папку андроид

Источник

Как добавить In-app Billing в приложение

Рано или поздно наступает момент, когда разработчику нужно задуматься о том, как монетизировать своё приложение, чтобы оно приносило доход. Есть различные бизнес-модели, с помощью которых можно этого достичь, однако наиболее популярной является использование рекламы в приложении. Одним из плюсов использования рекламы является то, что она хорошо сочетается с другой бизнес-моделью — покупками внутри приложения. Например, пользователь может заплатить некоторую сумму денег для того, чтобы отключить показ рекламы в приложении.

В этой статье мы рассмотрим, как можно реализовать встроенные покупки на примере своего приложения Менеджер паролей от Wi-Fi сетей.

Возможность покупок в приложениях реализована благодаря In-app Billing. In-app Billing — это сервис Google Play, который позволяет продавать цифровой контент внутри приложений. Этот сервис можно использовать для продажи широкого спектра контента, включая загружаемый контент, такой как мультимедийные файлы и фотографии, виртуальный контент, такой как уровни игры или различные вспомогательные предметы, премиальные услуги и многое другое.

Встроенные покупки можно подключить для любого приложения, опубликованного в Google Play. Ничего особенного для этого не требуется, только аккаунт разработчика Google Play Console и аккаунт продавца Google Wallet. Android SDK также содержит пример приложения с реализованными встроенными покупками.

Как работают встроенные покупки?

Ваше приложение обращается к сервису In-app Billing с помощью API, который предоставляется приложением Google Play, установленным на устройстве. Затем Google Play передает платежные запросы и ответы на запросы между вашим приложением и сервером Google Play. Таким образом, ваше приложение никогда напрямую не связывается с сервером Google Play. Вместо этого ваше приложение отправляет запросы в приложение Google Play через межпроцессную связь (IPC) и получает от него ответы, нет необходимости поддерживать какие-либо соединения между вашим приложением и сервером Google Play.

In-app Billing поддерживает широкую совместимость, он работает на устройствах под управлением Android 2.2 (API 8) или выше, на которых установлена последняя версия приложения Google Play.

API In-app Billing предоставляет следующие возможности:

  • Ваше приложение отправляет запросы с помощью модернизированного API, который позволяет пользователям легко запрашивать информацию о продукте из Google Play и заказывать продукты в приложении. API быстро восстанавливает продукты на основе прав пользователя.
  • API синхронно передает информацию о заказе на устройство при завершении покупки.
  • Все покупки регулируемы, т.е. Google Play отслеживает права пользователя на продукты. Пользователь не может владеть несколькими экземплярами одного продукта в приложении; только один экземпляр может принадлежать пользователю в любой момент времени.
  • Приобретённые продукты могут быть использованы. В таком случае они возвращаются в бесхозное состояние и могут быть куплены снова.
  • API обеспечивает поддержку подписки.

Интеграция In-app Billing в приложение

Есть разные способы, как встроить в своё приложение In-app Billing: можно это делать как вручную, так и используя сторонние библиотеки. Одной из таких библиотек является Checkout, которая уже содержит в себе готовую к применению реализацию сервиса. Ею и воспользуемся.

Checkout — это реализация In-app Billing API. Большим плюсом здесь является, что с помощью этой библиотеки можно сделать интеграцию встроенных покупок в приложение намного проще, чем если бы это делалось вручную с нуля.

Читайте также:  Тамагочи для андроид взлом

Checkout решает общие проблемы, с которыми могут столкнуться разработчики при работе с покупками, например:

  • Как отменить все запросы, когда активность уничтожена?
  • Как запросить информацию о покупках в фоновом потоке?
  • Как проверить покупку?
  • Как загрузить все покупки с использованием данных continuationToken или SKU (уникальный идентификатор продукта)?
  • Как добавить покупки с минимумом шаблонного кода?

Checkout может быть использован с любым фреймворком или без него. Он имеет четкое разграничение функциональности, доступной в разных контекстах: покупки могут быть сделаны только в активности, тогда как SKU может быть загружен в сервис или класс Application.

Перед началом работы библиотеку нужно добавить в проект. Для этого в файле build.gradle модуля приложения добавить зависимость в блок dependencies.

Для работы с покупками требуется специальное разрешение com.android.vending.BILLING, которое будет добавлено в AndroidManifest.xml автоматически с помощью Gradle. Вы также можете добавить его вручную, добавив в файл манифеста следующую строчку перед элементом :

Создадим экземпляр класса Billing в Application, откуда затем будем брать его при необходимости. Если у вас нет класса Application в проекте, вы можете легко создать его. Для этого нужно добавить в файле AndroidManifest.xml в элемент атрибут android:name=».Имя класса», например:

После этого нужно поставить курсор на имя класса, нажать Alt + Enter и выбрать опцию «Create class», после чего Android Studio создаст его.

В этом классе нам нужно добавить следующий код:

BASE64_PUBLIC_KEY это ключ, который используется для установления безопасного подключения между вашим приложением и сервером Google Play. Получить этот ключ вы можете в Google Play Console, перейдя в раздел «Инструменты разработки»«Службы и API». Там в «Лицензирование и продажа контента» вы увидите сгенерированный для вашего приложения ключ, который нужно будет добавить в приложение, например, объявить как строковую константу в классе Application.

Класс Billing это основной класс для работы с библиотекой, он отвечает за:

  • подключение и отключение услуг биллинга;
  • выполнение платежных запросов;
  • кеширование результатов запросов;
  • создание объектов Checkout;
  • логирование;

Для того, чтобы избежать множественных подключений к службе In-app Billing, следует использовать только один экземпляр класса Billing, именно по этой причине мы и создаём его в классе Application.

Теперь в классе активности при её создании инициализируем экземпляр класса ActivityCheckout, который наследует от базового класса Checkout.

Класс Checkout это средний уровень библиотеки, он использует класс Billing в определённом контексте (в Application, активности или сервисе), проверяет, поддерживаются ли покупки на устройстве и выполняет запросы. ActivityCheckout это подкласс, который способен покупать различные предметы, для создания его экземпляра нужно вызвать метод Checkout.forActivity() и передать в параметры активность и экземпляр Billing.

Метод start() запускает созданный экземпляр и отправляет запрос, который проверяет, поддерживается ли биллинг на этом устройстве.

Метод createPurchaseFlow() создаёт постоянный поток для покупок со слушателем, который будет получать обновления данных о покупках. Код слушателя выглядит следующим образом:

Класс PurchaseListener наследует от EmptyRequestLisneter

, который имеет методы onSuccess() и onError(). В данном случае, если пользователь купит отключение рекламы или сделает пожертвование, то слушатель получит данные о покупке и выполнит нужные операции.

Теперь нужно создать экземпляр класса Invertory.

Класс Invertory загружает данные о продуктах, SKU и покупках. Его жизненный цикл связан с жизненным циклом Checkout, в котором он был создан.

Читайте также:  Rockchip android tool 4pda

Метод makeInvertory() создаёт экземпляр Invertory и привязывает его к нужному объекту Checkout.

Метод load() отправляет запрос на получение данных о продуктах и асинхронно загружает результат в callback. В параметрах формируется запрос, какие именно продукты нужно получить (в данном случае, все имеющиеся, а именно донаты и отключение рекламы). Код коллбека, который принимает результат запроса, представлен ниже:

Метод onLoaded() вызывается, когда все данные загружены. В нём проверяются различные данные о продуктах. Например, можно проверить с помощью поля supported можно проверить, поддерживается ли продукт, а метод getSku() возвращает идентификатор продукта. Если нужно узнать стоимость продукта на основе локали устройства, то следует вызывать getSku(TYPE).price.

Метод isPurchased() проверяет, был ли продукт куплен пользователем. В случае с рекламой это будет означать, что её следует отключать.

Теперь нужно отправлять платёжные запросы сервису. Для этого в настройках приложения есть две кнопки «Удалить рекламу» и «Поддержать проект материально».

Обработка кнопки отключения рекламы выглядит следующим образом:

С помощью данного метода формируется запрос на покупку продукта, результат которого будет получен коллбеком.

Аналогичным образом формируется запрос на донат.

Таким образом, с помощью библиотеки мы реализовали встроенные покупки в приложении без использования шаблонного кода.

Как добавить In-app Billing в приложение : 6 комментариев

А физ. лицо может зарегистрировать Google Wallet? Или нужно ИП открывать?

Может, в этом плене Google очень демократичная компания. Выплаты начнутся по достижении порога в 100$

А как тестировать покупки? Я прописал в play console тестового пользователя и через него покупаю например рекламу. Деньги не списываются но покупка числиться у него в google play.
Но в классе InventoryCallback mPurchases = 0.
Как правильно тестировать?

Здравствуйте! К сожалению, насчёт тестирования не получится что-либо подсказать, попробуйте написать автору библиотеки на гитхабе.

Источник

Как отключить покупки внутри приложений

Мы приготовили краткую и понятную инструкцию о том, как ограничить встроенные покупки на устройствах на базе iOS и Android.

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

К счастью, разработчики операционных систем, с которыми неразрывно связаны все фирменные магазины приложений, предусмотрели защиту от подобных казусов. При желании родители могут без труда заблокировать внутриигровые покупки и быть уверенными в том, что их чадо даже при большом желании не сможет потратить на виртуальное золото ни рубля. Мы приготовили краткую и понятную инструкцию о том, как установить такое ограничение на устройствах на базе iOS и Android.

Инструкция: как отключить встроенные покупки в iOS и Android

Вот как это реализовано в устройствах Apple:

В случае с Android все немного по-другому: встроенные покупки ограничиваются специальным PIN-кодом, что в некоторых случаях даже удобнее системы, реализованной в iOS:

Источник

Оцените статью