Как сделать подписку в приложении android
Тут вам покажем несколько способов инструментов, при помощи которых можно подписывать приложения Android перед публикацией их в Google App Play.
Вы можете использовать Android Studio для ручного создания подписанных APK, по одному за раз, или для нескольких вариантов сборки сразу. Вместо того, чтобы вручную подписывать APK, вы также можете настроить свои настройки сборки Gradle для автоматической обработки подписей во время процесса сборки. В этом разделе описывается процесс ручной подписи. Подробнее о подписании приложений как части процесса сборки см. В разделе Настройка процесса сборки для автоматической подписки APK.
Чтобы вручную подписать APK для выпуска в Android Studio, выполните следующие действия:
- Жмем Build > Generate Signed APK и откроется окно Generate Signed APK . (Как создать ключи подписи в Android Studio мы писали в прошлой статье)
- В окне Generate Signed APK Wizard выберите хранилище ключей, закрытый ключ и введите пароли для обоих. (Если вы только что создали хранилище ключей в предыдущем разделе, эти поля уже будут заполнены) Затем нажмите «Next»
- В следующем окне выберите пункт назначения для подписанных APK, выберите тип сборки (если применимо), выберите продукт (ы) и нажмите «Finish»
Когда процесс завершится, вы найдете свой подписанный APK в выбранной вами папке назначения. Теперь вы можете распространять подписанный APK через торговую площадку приложения, например, в Google Play Store, или использовать выбранный вами механизм распространения подписанного приложения конечным пользователям.
Чтобы пользователи могли успешно устанавливать обновления для вашего приложения, вам нужно будет подписать APK с тем же сертификатом на протяжении всего срока действия вашего приложения.
Подробнее об этом и других преимуществах подписания всех ваших приложений с помощью одного и того же ключа, по поводу безопасности и редактирования.
Есть сгенерированные ключи подписи или создаем?
Мы уже разбирали тут, как генерировать хранилище ключей с ключом подписи. Если кратко, то вы можете подписать свое приложение из командной строки с помощью инструмента apksigner или настроить Gradle для его подписки во время сборки. В любом случае вам нужно сначала сгенерировать закрытый ключ с помощью keytool. Например командой
Примечание: keytool находится в каталоге bin/ вашего JDK. Чтобы найти ваш JDK из Android Studio, выберите «File»> «Project Structure», а затем «SDK Location», и вы увидите местоположение JDK
В этом примере команды консоль еще запросит ввести пароли для хранилища ключей и ключа подписи и запросит заполнить поля Distinguished Name для вашего ключа. Затем он генерирует хранилище ключей в виде файла с именем my-release-key.jks, сохраняя его в текущем каталоге (вы можете перемещать его по своему усмотрению). Хранилище ключей содержит один ключ, действительный в течение 10 000 дней.
Теперь вы можете создать unsigned APK, т.е. построить конфигурацию release и подписать его вручную или вместо этого настроить Gradle для автоматического подписания APK.
Инструмент apksigner, доступный в версии 24.0.3 и выше для Android SDK Build Tools, позволяет вам подписывать APK и подтверждать, что подпись APK будет проверена успешно на всех версиях платформы Android, поддерживаемых этими APK. В этом подразделе представлено краткое руководство по использованию инструмента и служит ссылкой для различных параметров командной строки, которые поддерживает инструмент
Примечание 1. если вы подписываете APK с помощью apksigner и вносите дальнейшие изменения в APK, подпись APK становится недействительной. Поэтому перед подписанием APK вы должны использовать такие инструменты, как zipalign.
Примечание 2. Чтобы использовать инструмент apksigner, вы должны иметь версию 24.0.3 или выше установленных инструментов Android SDK Build Tools. Вы можете обновить этот пакет с помощью диспетчера SDK.
1). Открываем командную строку и перемещаемся в корневую директорию —из Android Studio, выбираем View > Tool Windows > Terminal. Затем вызываем команду assembleRelease :
2). Align the unsigned APK using zipalign:
zipalign гарантирует, что все несжатые данные начинаются с конкретного выравнивания байтов относительно начала файла, что может уменьшить объем оперативной памяти, потребляемой приложением.
3). Подписываем APK своим личным ключом с помощью apksigner:
В этом примере выводится подписанный APK на my-app-release.apk после его подписания с закрытым ключом и сертификатом, который хранится в одном файле хранилища ключей: my-release-key.jks.
Инструмент apksigner поддерживает другие параметры подписки, включая подписание файла APK с использованием отдельного закрытого ключа и файлов сертификатов и подписку APK с использованием нескольких подписчиков. Для получения дополнительной информации см. ссылку apksigner.
4). Убеждаемся, что ваш APK подписан:
Пример подписки средствами Android SDK
Если вышеописанное вызывает трудности, то давайте сделаем некоторый простой пример генерации ключа командой keytool, выполнения операции zipalign и подписи командой apksigner.
Сначала строим релиз средствами Cordova и Android SDK
Команда keytool генерации ключа в консоли:
Операция zipalign в консоли:
Обратите внимание, что zipalign мы выполняем по прямому пути версии приложения, которая соответствует версии нашего разрабатываемого приложения.
Операция подписи apksigner:
Обратите внимание, что apksigner мы выполняем по прямому пути версии приложения и указываем путь к сгенерированному ключу, которая соответствует версии нашего разрабатываемого приложения. Далее, после нажатия Enter, консоль запросит поочередно запросить пароль от хранилища ключей и от самого ключа.
Команда подписи с ее параметрами записывается так
Имена параметров нам знакомы по keytool:
- хранилище (keystore),
- пароль (storepass) к нему
- пароль (keypass) к ключу.
- А последние два параметра – это имя APK-файла, который вы хотите подписать и алиас ключа из указанного хранилища, который вы хотите использовать для подписи.
После данной команды приложение будет подписано и будет готово к установке на устройства или можно распространять через Google App Play.
В этой инструкции мы пошагово покажем как создать аккаунт разработчика, оплатить подписку в Google Play и загрузить приложение, а также распишем требования к тексту, описанию и изображениям. В другой статье мы написали подробную инструкцию по публикации приложения в App Store.
Создание аккаунта
Для того, чтобы опубликовать приложение в Google Play, нужен аккаунт разработчика. Создать его можно с помощью стандартного аккаунта Google.
Если у вас нет стандартного аккаунта гугл, то создать его можно по ссылке .
Далее по ссылке можно завести аккаунт разработчика.
Необходимая часть процесса — внесение разовой оплаты за соглашение разработчика в размере 25$.
После оплаты нужно будет заполнить данные для аккаунта разработчика и завершить регистрацию. После оплаты нужно будет заполнить данные для аккаунта разработчика и завершить регистрацию.Пользовательское соглашение
Основные положения из Соглашения Google Play о распространении программных продуктов о которых вы должны знать:
- вы полностью отвечаете за ваш продукт и поставляемый в нём контент;
- вы обязуетесь отвечать на вопросы пользователей в течении трёх рабочих дней и на «срочные вопросы согласно определению Google» в течении 24 часов;
- обязуетесь сохранять конфиденциальность и безопасность пользовательских данных;
- вы не пытаетесь обманывать, причинять какой-либо вред или вводить в заблуждение пользователя и компанию Google;
- вы не распространяете запрещённый контент. Все Продукты, распространяемые через Google Play, должны соответствовать Правилам программы для разработчиков;
- вы разрешаете Google возвращать покупателю полную стоимость Продукта или транзакции внутри приложения от вашего имени, если покупатель запрашивает возврат средств в любой момент после покупки. Удаление продукта не освобождает вас от ответственности перед какого-либо рода выплатами;
- в целом, Google снимает с себя любую ответственность, связанную с вашим продуктом
Подготовка маркетинговых материалов
К маркетинговым материалам существуют следующие требования:
- требования стора. Эти требования монументальны и редко подвержены изменениям, к ним есть четкие описания;
- требования, которые возникают из задач проекта: что более актуально для ЦА этого приложения, какой маркетинг у проекта и т.д. Иногда важно, как это видит клиент: некоторые клиенты готовы использовать простые скриншоты и несложные тексты, другие заказчики постоянно меняют своЁ мнение о скриншотах/текстах, и с этим нужно работать.
Для срочных релизов или проверки MVP допускается минимум — сделать маркетинговые материалы, соответствующие требованиям магазина. В других проектах необходимо сделать так, чтобы маркетинговые материалы были максимальным вкладом в успех проекта.
Требования стора к тексту
Требования у Google Play к ним следующие:
- название приложения: не более 30 символов;
- короткое описание: не более 80 символов;
- короткое описание: не более 80 символов;
- полное описание не более 4000 символов.
Основное отличие краткого описания от полного в том, что полное доступно на декстопе, а короткое создаётся для мобильных устройств.
Посмотреть полные требования Google Play к тексту и его особенностях можно здесь (Как создать и настроить страницу приложения в Google Play → СВедения о продукте).
Рекомендуем прочитать хорошую статью на тему “Как создать идеальное описание приложения для App Store и Google Play”
Количество скриншотов
Максимальное количество загружаемых скриншотов — восемь штук, а минимальное — два. Сколько скриншотов загружать — вопрос сложный. Все зависит от того, что вам важно показать для пользователя. Иногда можно обойтись и двум мы же рекомендуем сделать не менее 3 скриншотов.
Требования стора к скриншотам
- формат JPEG или 24-битный PNG (без альфа-канала);
- не менее 320 пикселей;
- не более 3840 пикселей;
- соотношение сторон не должно превышать 2:1.
Требования Google Play к скриншотам доступны по ссылке .
Советы по выбору скриншотов
Основная цель скриншотов — дать пользователю сходу понять, о чём ваше приложение. Поэтому первый скриншот должен быть максимально информативным и наиболее привлекательным. Остальные скриншоты показывают различные функциональные особенности приложения.
Полезная статья с рекомендациями по работе с скриншотами для Google Play и App Store. Очень много полезной информации.
Иконка
Иконка — небольшое изображение, идентифицирующее наше приложение среди остальных. Если у вас есть какой-нибудь логотип, то его можно использовать иконкой.
Требования стора к иконке
- 32-битный PNG (с альфа-каналом) мы делаем всегда без альфа-канала;
- размеры: 512 х 512 пикселей;
- максимальный размер файла: 1024 КБ
Как сделать иконку правильной с точки зрения дизайна читаем тут
Проморолик
Это важная часть маркетинговой компании, т.к позволяет наиболее выгодно презентовать приложение для пользователя. Добавление ролика само по себе опционально, но если мы заботимся о клиенте и пользователях и у нас есть время и бюджет, то это лучше сделать.
Требования стора к проморолику
Требования Google Play:
- указывайте URL отдельного видео на YouTube, а не плейлиста или канала;
- не используйте видео с возрастным ограничением в качестве проморолика;
- используйте полную ссылку на видео YouTube вместо сокращенной:
Советы по созданию видео
Видео должны быть короткими (от 30 секунд до 2 минут) и демонстрировать самые привлекательные функции приложения. На устройстве с Android 4.4 или более поздней версии можно записать видео с устройства с помощью команды оболочки ADB screenrecord.
Советы по созданию видео
На картинке для раздела «Рекомендуемые» можно продемонстрировать потенциальным пользователям графические возможности приложения. Это изображение необходимо, чтобы показывать приложение на разных страницах Google Play.
Требования Google Play к баннерам:
- JPEG или 24-битный PNG (без альфа-канала);
- 1024х500 пикселей.
Советы
- не размещайте важную информацию по краям, особенно в нижней трети рамки.
- логотип лучше размещать по центру, выровняв по горизонтали и вертикали.
- для текста используйте крупный шрифт.
- помните, что картинка может быть показана отдельно, без значка приложения.
Возрастные ограничения
Система возрастных ограничений для игр и приложений учитывает особенности законодательства и культуры отдельных стран. Это позволяет разработчикам более точно определять ограничения для контента и распространять приложения среди той аудитории, для которой они предназначены.
Чтобы установить возрастное ограничение, войдите в Google Play Developer Console и заполните специальную анкету для каждого из своих приложений. Программы, которым не присвоен рейтинг, могут быть заблокированы для отдельных пользователей или стран.
Вы обязаны заполнять анкеты для установления возрастных ограничений и соблюдать рекомендации по оценке контента. Приложения, которым не присвоено ограничение, могут быть удалены из Google Play.
Внимание! В анкете давайте правдивые и максимально точные ответы, иначе приложение может быть удалено или заблокировано.
Заполнение анкеты
- Войдите в Google Play Developer Console.
- Выберите приложение.
- В меню слева нажмите Возрастные ограничения.
- Прочитайте информацию об анкете и введите свой адрес электронной почты. По этому адресу представители IARC смогут связаться с вами.
- Нажмите Продолжить.
- Выберите категорию.
- Заполните анкету. Если вы указали ответы на все вопросы в разделе и хотите изменить один из них, нажмите Изменить. Чтобы закончить заполнение анкеты позже, нажмите Сохранить проект. Для каждого приложения доступен только один черновик.
- Нажмите Определить возрастное ограничение.
- Выберите Установить возрастное ограничение на странице с общей информацией об ограничениях.
После этого вы можете просмотреть возрастные ограничения и анкеты на странице Возрастные ограничения. Если вы хотите повторно заполнить анкету для приложения, нажмите Новый опрос на странице Возрастные ограничения.
Технические требования к apk-файлу
- Размер apk-файла не должен превышать более 100 Мб (и 50 Мб для Android 2.2 и ниже, или для Play Market 5.2 и ниже, но давайте уже про них забудем).
Бывает, что ваше приложение работает на статическом контенте (не делайте так) или является игрой и его размер больше 100 Мб. Такое приложение можно разбиться на части: основная —
до 100 Мб и несколько дополнительных APK Expansion Files до 2 Гб каждый; - apk-файл не должен быть debuggable;
- apk-файл должен быть подписан файлом цифровой подписи (см. Обеспечение сборки наличием цифровой подписи).
Обеспечение сборки наличием цифровой подписи
Цифровая подпись необходима для того, чтобы Google Play мог идентифицировать разработчика, и в дальнейшем только этот разработчик мог обновлять/изменять приложение. К тому же, на цифровую подпись завязаны множество сервисов, таких как Facebook SDK, Vk SDK и большинство Google сервисов.
Цифровая подпись помещается в хранилище ключей (файл с расширением .keystore или .jks ). К хранилищу обязаны прилагаться:
- store password — пароль к хранилищу ключей;
- key alias — название ключа в хранилище;
- key password — пароль к ключу.
Мы считаем этот раздел важным. Из своего опыта мы вынесли грустный урок, что заказчики, особенно те, кто заказывает приложения у аутсорсеров или фрилансеров, по незнанию уделяют мало внимания такой важной вещи, как цифровая подпись приложения. Поэтому менеджер должен взять на себя обязательства и убедиться, что приложение подписано и ключ вместе с сопровождающими его паролями не был забыт, не был утерян или не попал не в те руки после публикации.
Внимание! Хранилище ключей должно находиться в надежном месте. Если вы потеряете доступ к хранилищу или пароли к нему, то назад пути нет. И даже Google ничем не поможет. Вам придётся опубликовать приложение с новым названием пакета и новым ключом. Кроме того, потребуется обновить описание исходного приложения и закрыть к нему общий доступ. Потеря файла или паролей обернётся для вашего приложения полной трагедией: пользователям придётся удалять текущую версию и скачивать из Google Play новую, а вы потеряете статистику, скачивания, аудиторию и многое другое, ради чего вы столько трудились. В общем, малоприятное событие. (см. п. « Подпись для приложения »)
Хорошей практикой считается подписывать группу своих приложений одной и той же цифровой подписью. Во-первых вы не запутаетесь в них, а во-вторых вы получаете ряд приятных бонусов. Например можно организовать безопасное общение между своими приложениями через Intent, кастомный <user-permission> и его свойство android:protectionLevel=«signature». Но это уже должен знать разработчик.
Настройка оплаты за пользование приложением
Иногда планируется продавать контент в приложении, либо делать само приложение платным. Начать следует с того, что в своем аккаунте разработчика после загрузки приложения вы можете выбрать тип приложения: платное или бесплатное.
Смена типа приложения
Вы можете сделать платное приложение бесплатным без повторной выкладке приложения в стор. Но для того, чтобы сделать бесплатное приложение платным, вам нужно будет выкладывать приложение в стор с новым названием пакета и указанием цены.
Привязка к Merchant Center
Чтобы указать цену на приложение, вам потребуется привязать свой аккаунт разработчика к Google Payments Merchant Center. Это необходимо для того, чтобы указать налоговые ставки.
Важно: привязку аккаунта к Merchant Center можно произвести только один раз, обратите на это внимание. Если допущена ошибка при привязке Google Payments Merchant Center, то придётся отдавать 25$ за создание нового аккаунта разработчика.
→ Шаги по созданию аккаунта описаны здесь .
После того, как вы произвели привязку, необходимо указать налог с продаж для региона. На сегодняшний день у нас нет опыта в подобных операциях, поэтому желательно будет проконсультироваться с кем-нибудь, кто его имеет. Как указать налог с продаж для региона, указано по ссылке .
Особенности работы с налогами в некоторых странах
В случае, если клиент российский, все проще и сложнее одновременно, т.к для клиентов из Аргентины, России, Тайваня, Индии налоговые вычеты осуществляются самостоятельно. Таким образом, мы должны зарегистрироваться как индивидуальный предприниматель и платить налоги с продажи приложения самостоятельно. Исходя из этого, мы включаем в цену приложения ВСЕ налоги, которые впоследствии будем выплачивать сами. Google не будет производить НИКАКИХ отчислений с продажи.
Отчисления Google не производит, но осуществляет операционный сбор в виде 30% с чистой цены. Чистая цена — цена за вычетом всех налоговых сборов.
Пример
Предположим, что цена приложения равна 100 японским иенам, а НДС составляет 20%.
Разработчик перечисляет в соответствующие органы НДС в размере 17 японских иен.
Формула: Цена приложения — (цена приложения * 1/(1 + налоговая ставка))
100 яп. иен — (100 яп. иен * 1/1,2) = 17 яп. иен
Доход разработчика после уплаты операционного сбора в размере 30% и НДС: 58 японских иен.
Формула: цена без НДС * 70%
83 яп. иены * 0,7 = 58 яп. иен
Больше информации о налоговых сборах и правилах Google Play доступны по ссылке .
После того, как вы зарегистрировали аккаунт и указали информацию о налоговых сборах, можно указать цену на приложение, удостоверившись, что цена попадает в диапазон цен, установленный для вашей страны. Все диапазоны есть здесь .
Цена приложения и валюты
Цена на приложение устанавливается в местной валюте. Для того, чтобы посмотреть цену на приложение, необходимо:
- На странице Цены и распространение укажите нужные страны или установите флажок «Выбрать все».
- Посмотреть цену для каждой страны в соответствующем столбце:
— цены для разных стран рассчитываются по текущему обменному курсу с учетом местной специфики ценообразования.
— если местная валюта не поддерживается, для страны действует цена в вашей валюте по умолчанию.
Как владелец приложения мы вправе выставлять цены для каждой страны в соответствии с нашими прихотями. Для этого нужно:
- рядом с нужной страной нажмите Изменить;
- введите цену;
- нажмите Применить.
Обновление цен
Важно: если клиент планирует зарабатывать на приложении как основном источнике дохода, стоит сказать ему о необходимости обновлять цены на приложение в соответствие с курсом валют. Для этого необходимо выставить флажки рядом с нужными странами и нажать Обновить курсы валют на экране «Цены и ценообразование».
Настройка альфа- и бета-тестирования
Альфа- и бета-тестирование позволяет опробовать ваше приложение на узком круге пользователей. Существует открытое и закрытое тестирование. В обоих случаях тестовая группа пользователей не сможет оставлять публичные отзывы в Google Play — только личные, которые не являются общедоступными. В любом случае полезно предложить им дополнительный общий канал для обратной связи. Стоит отметить, что неважно, публикуете вы приложение впервые, обновляете существующее или меняете его описание, изменения будут доступны в Google Play не мгновенно, а только через пару часов.
Подробнее можно посмотреть тут .
Поэтапное внедрение обновлений
Обновления приложений можно внедрять поэтапно, начав с небольшой части пользователей, которая указывается в процентах, и постепенно увеличивая их количество. Поэтапное внедрение доступно только для обновлений приложения, а не для его первоначальной версии. Выбор пользователей происходит абсолютно случайным образом и вы никак не можете указать какие-либо параметры выбора. Также вы не можете откатить версию приложения у пользователей, которые уже установили обновление.
Крайне рекомендуем не пренебрегать и пользоваться данной возможностью. Для внедрения можно воспользоваться шагами в 10, 25, 50, 75 и 100% и растягивать в соответствии с длиной спринта.
Подробнее можно посмотреть тут .
Поэтапное внедрение обновлений
Если вы готовы опубликовать версию, сделайте следующее:
Более подробно читайте о публикации здесь .
Полезные ссылки
- Центр правил разработчиков
- Соглашение Google Play о распространении программных продуктов
- Возрастные ограничения для игр и приложений
- Загрузка приложений
- Графические объекты, скриншоты и видео
- Публикация приложения
- Поэтапное внедрение версии
- Пример создания описания приложения
- Как провести альфа- и бета-тестировании
Политика обработки персональных данных
Для чего нужна политика обработки персональных данных?
Если в вашем приложении есть любая форма сбора данных — обратной связи, подписки на рассылку, регистрации или личный кабинет, это считается обработкой персональных данных. В этом случае вы обязаны получить согласие на обработку персональных данных и разместить ссылку на вашу политику в отношении обработки персональных данных, чтобы человек мог с ней ознакомиться, согласиться и только после этого сообщить вам свои данные.
Создайте образец документа с помощью конструктора , при необходимости скорректируйте, разместите текст на отдельной странице сайта и в форме приема данных поставьте ссылку на эту страницу.
В этой статье мы рассмотрим, как можно реализовать встроенные покупки на примере своего приложения Менеджер паролей от Wi-Fi сетей.
Встроенные покупки можно подключить для любого приложения, опубликованного в 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: можно это делать как вручную, так и используя сторонние библиотеки. Одной из таких библиотек является Checkout, которая уже содержит в себе готовую к применению реализацию сервиса. Ею и воспользуемся.
Checkout решает общие проблемы, с которыми могут столкнуться разработчики при работе с покупками, например:
- Как отменить все запросы, когда активность уничтожена?
- Как запросить информацию о покупках в фоновом потоке?
- Как проверить покупку?
- Как загрузить все покупки с использованием данных continuationToken или SKU (уникальный идентификатор продукта)?
- Как добавить покупки с минимумом шаблонного кода?
Checkout может быть использован с любым фреймворком или без него. Он имеет четкое разграничение функциональности, доступной в разных контекстах: покупки могут быть сделаны только в активности, тогда как SKU может быть загружен в сервис или класс Application.
Перед началом работы библиотеку нужно добавить в проект. Для этого в файле build.gradle модуля приложения добавить зависимость в блок dependencies.
Для работы с покупками требуется специальное разрешение com.android.vending.BILLING, которое будет добавлено в AndroidManifest.xml автоматически с помощью Gradle. Вы также можете добавить его вручную, добавив в файл манифеста следующую строчку перед элементом <application>:
В этом классе нам нужно добавить следующий код:
Класс Billing это основной класс для работы с библиотекой, он отвечает за:
- подключение и отключение услуг биллинга;
- выполнение платежных запросов;
- кеширование результатов запросов;
- создание объектов Checkout;
- логирование;
Для того, чтобы избежать множественных подключений к службе In-app Billing, следует использовать только один экземпляр класса Billing, именно по этой причине мы и создаём его в классе Application.
Теперь в классе активности при её создании инициализируем экземпляр класса ActivityCheckout, который наследует от базового класса Checkout.
Класс Checkout это средний уровень библиотеки, он использует класс Billing в определённом контексте (в Application, активности или сервисе), проверяет, поддерживаются ли покупки на устройстве и выполняет запросы. ActivityCheckout это подкласс, который способен покупать различные предметы, для создания его экземпляра нужно вызвать метод Checkout.forActivity() и передать в параметры активность и экземпляр Billing.
Метод start() запускает созданный экземпляр и отправляет запрос, который проверяет, поддерживается ли биллинг на этом устройстве.
Метод createPurchaseFlow() создаёт постоянный поток для покупок со слушателем, который будет получать обновления данных о покупках. Код слушателя выглядит следующим образом:
Класс PurchaseListener наследует от EmptyRequestLisneter<Purchase>, который имеет методы onSuccess() и onError(). В данном случае, если пользователь купит отключение рекламы или сделает пожертвование, то слушатель получит данные о покупке и выполнит нужные операции.
Теперь нужно создать экземпляр класса Invertory.
Класс Invertory загружает данные о продуктах, SKU и покупках. Его жизненный цикл связан с жизненным циклом Checkout, в котором он был создан.
Метод 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.
Как правильно тестировать?
Здравствуйте! К сожалению, насчёт тестирования не получится что-либо подсказать, попробуйте написать автору библиотеки на гитхабе.
С помощью операционной системы Андроид у пользователей есть возможность подписаться на различные программы, игры, услуги через Google Play. Если вы подписались на приложение, то ваш сохраненный метод оплаты будет автоматически использоваться системой Гугл в новом промежутке времени для дальнейшего пользования услугой. Так будет происходить до тех пор, пока вы не отмените свою подписку. Делается это либо через программу Гугл Плэй, или посетив официальный портал Гугл Плэй.
Примечание:
Обязательно обратите внимание, что удаление (деинсталляция) приложения не отменит вашу подписку, даже если вы больше не пользуетесь услугой, оплата будет происходить вовремя.
Каждый день множество пользователей смартфонов и планшетов на базе ОС Андроид осознают, что слишком быстро «утекают» средства с мобильных и банковских счетов, с электронных кошельков или прочих методов оплаты, которые до сих пор считались надежными методами хранения средств. Достав распечатки и выписки счетов все становится предельно понятно: деньги «уходят» в счет оплаты подписок, которые ранее были куплены на Google Play Маркет или которые оформлялись вместе с программами и играми.
Пользователь прослушал, поиграл или воспользовался, а потом забыл, но это вовсе не значит, что Гугл забыл. Как и не забыл взять оплату даже не за использование, а за будущую возможность воспользоваться тем или иным сервисом, программой или предоставлением услуги. Но зачем отдавать свои заработанные деньги, если эта программа, услуга или сервис потеряли свою актуальность? Лишние расходы нужно останавливать, и сделать это очень легко. И мы вам расскажем, как это сделать.
Что такое подписки в Гугл Плей
Подписки Google Play предоставляют пользователям постоянный доступ к медиа-ресурсам. Например, своевременно получать свежие выпуски журналов и газет, получать новые плей-листы музыки или видео.
Сервис Гугл Плей
Подписки Гугл Плей можно оформить быстро, используя приложения. Последовательность действий следующая:
- Открыть приложение Google Play.
- Перейти к разделу «Мои приложения» и найти то, для которого необходимо установить платную подписку. Например, Google Музыка или Google пресса.
- Выбрать нужный вариант тарифа. Для некоторых приложений он един, в других распределяется по набору опций. Нужно внимательно изучать условия.
- Выбрать способ оплаты: банковская карта, электронный кошелек или онлайн-банкинг (например, Сбербанк.Онлайн).
- Завершить покупку, нажав клавишу «Подписаться».
Где находятся платные подписки
К сведению! На ресурсе Гугл Плей невозможно оплатить услуги посредством электронного или банковского перевода, виртуальные кредитные или дебетовые карты, а также сервисов Western Unior и Money Gram.
Платные подписки привязываются к аккаунту Google Play. Это очень удобно, поскольку пользователь сможет открывать нужные приложения на разных устройствах: смартфон, планшет или девайс. Так не придется несколько раз платить за одно и то же приложение. Главное – помнить входные данные к аккаунту (логин и пароль).
Обычно перед установкой платной версии пользователям предлагается пробная демка сроком до недели. Так можно оценить все преимущества приложения и понять, нужна ли его платная версия. По истечении пробного периода пользователям могут предложить приобрести платную версию. Но в большинстве случаев она подключается автоматически, а клиент получает лишь счет об оплате. В данном случае и возникает вопрос – как отключить подписку на Андроиде?
Пробный период приложения
Изменение параметров подписки
Проверка параметров подписки и даты продления
Изменение формы оплаты за подписку
При продлении подписки используется тот же способ оплаты, что и для покупки. Продление осуществляется за за 24 часа до начала каждого периода подписки.
Для переключения на другую форму оплаты:
Для чего нужен Гугл аккаунт на Андроиде
Гугл Плей Музыка — регистрация и настройка приложения на Андроиде
Завести аккаунт на Гугл совсем несложно, зато учетная запись откроет перед пользователем широкий спектр услуг и возможностей, сделает использование смартфона или другого устройства максимально комфортным, удобным.
В Гугл Плей регистрация и создание личного кабинета делают доступным следующее:
Сервисы Google
Как создать аккаунт на телефоне андроид? Об этом следующий пункт статьи.
Как создать учетную запись Google на телефоне Андроид
Как войти в Гугл плей — подробная инструкция
Сделать учетную запись для всех сервисов Гугл, в том числе создать аккаунт Гугл Плей, используя смартфон, можно по следующей пошаговой инструкции:
- Зайти в «Настройки» телефона. Перейти к разделу «Аккаунты» или «Учетные записи» или «Аккаунты и синхронизация».
- Выбрать пункт «Добавить аккаунт» — тип учетной записи – Google.
- Заполнить открывшуюся анкету: ввести имя, фамилию, номер мобильного телефона, дату рождения, указать пол.
- Выбрать ник для адреса электронной почты. Можно задать самим или выбрать из предложенных.
- Придумать пароль или выбрать тот, который предлагается системой. Рекомендуется записать пароль на каком-либо бумажном носителе – он пригодится для входа во все прочие сервисы Google.
- Пройти процедуру прикрепления телефонного номера. Она займет меньше минуты, зато поможет, в случае необходимости, восстановить доступ к аккаунту, сменить пароль.
- Принять положения «Политики конфиденциальности».
Теперь аккаунт создан, но его можно дополнительно настроить, чтобы сделать работу максимально удобной и комфортной. Параметры настройки изложены в отдельном пункте.
Создание аккаунта Google через телефон
К сведению! Корпорация Google заботится о безопасности своих пользователей, в том числе о сохранности персональных данных.
Современная система шифрования устроена таким образом, что у злоумышленников и мошенников практически не остается шансов получить доступ к аккаунту. Поэтому можно без опаски указывать мобильный номер или прикреплять банковскую карту для совершения онлайн-покупок.
Причины отмены подписки в Гугл Плей
Как выйти из аккаунта Гугл Плей на андроиде — подробная инструкция
Отменить платную подписку
Причин этому несколько:
Бывают и совсем другие причины, обусловленные личными желаниями, предпочтениями или требованиями пользователя. Например, неудобный интерфейс, отсутствие каких-либо функций и подобное.
К сведению! После отключения подписки приложение будет доступно до конца оплаченного периода. Вернуть деньги возможно лишь в том случае, если с момента подключения прошло не более двух суток.
Каждый пользователь имеет полное право отписаться, убрать с телефона всё ненужное. Сделать это совсем несложно, зато уберет с пользователя существенную статью расходов. Но для начала необходимо посмотреть, на какие сервисы в принципе оформлена платная версия.
Как вернуть платеж
Как только пользователь оплатил подписку, вернуть потраченные деньги не получится. В самой программе всегда написано предупреждение о том, когда именно будут списаны средства со счета. Поэтому рекомендуется всегда читать инструкцию и лицензионное соглашение. Каждый раз пользователь дает свое согласие на условия разработчиков.
Если отменить подписку большинства программ не составит труда, то с некоторыми могут возникнуть трудности. Так, для продуктов Adobe такой функции не существует, и пользователь продолжает ежемесячно платить деньги. В таком случае рекомендуется обратиться в службу поддержки.
Но при определенных обстоятельствах вернуть деньги за покупку получится. Для этого необходимо обратиться в службу поддержки. Здесь необходимо следовать инструкции:
-
Перейти в раздел «История заказов».
Чтобы получить положительный ответ, необходимо придерживаться определенных правил. Так, с момента покупки должно пройти не более 48 часов. Повторно установить отмененную покупку не получится.
Несколько лет работал в салонах сотовой связи двух крупных операторов. Хорошо разбираюсь в тарифах и вижу все подводные камни. Люблю гаджеты, особенно на Android.
Как вернуть платеж, без службы поддержки Google Play?
Вы можете обратиться непосредственно к разработчикам программы.
Можно ли вернуть деньги за купленную музыку?
Только в том случае, если она не была скачена и прослушана. Если песня или альбом уже включались, то деньги можно вернуть при проблемах с воспроизведением.
4.9 / 5 ( 29 голосов )
Как посмотреть список платных подписок на Андроиде
Проверить список платных подписок можно в несколько действий. Для этого необходимо:
- Открыть приложение Google Play.
- Запустить меню – нажать значок «три горизонтальные полоски» в левом углу экрана.
- Нажать на значок «Подписки».
Как посмотреть список платных подписок
Если еще имеются сомнения – оставить подписку или нет, ее можно приостановить на определенное время. За этот промежуток можно понять, какая версия подходит больше – платная или бесплатная. Сделать это можно следующим образом:
- Запустить приложение Play Market.
- Авторизоваться, войти в личный кабинет – ввести логин и пароль.
- Запустить меню – нажать значок «три горизонтальные полоски» в левом углу экрана.
- Нажать на значок «Подписки».
- Среди перечня платных приложений выбрать то, действие которого необходимо временно приостановить.
- Открыть приложение.
- Кликнуть по кнопке «Приостановить».
Теперь действие будет временно приостановлено, а пользователь может решить, какая версия ему больше подойдет.
Как отменить подписку в Гугл Плей на Андроиде
- Запустить приложение Play Market.
- Авторизоваться, войти в личный кабинет – ввести логин и пароль.
- Запустить меню – нажать значок «три горизонтальные полоски» в левом углу экрана.
- Нажать на значок «Подписки».
- Среди перечня платных приложений выбрать то, действие которого необходимо временно приостановить.
- Открыть приложение.
- Кликнуть по кнопке «Отменить подписку».
Это поможет удалить подписку, а пользователю больше не придется платить за нее.
Как отказаться от подписки в Гугл Плей при помощи компьютера
- Открыть сайт Гугл Плей, используя браузер на персональном компьютере;
- Авторизоваться, войти в личный кабинет – ввести логин и пароль;
- Запустить меню – нажать значок «три горизонтальные полоски» в левом углу экрана;
- Нажать на значок «Подписки» — высветится список всех имеющихся;
- Среди перечня платных приложений выбрать то, действие которого необходимо временно приостановить;
- Открыть приложение;
- Кликнуть по кнопке «Отменить подписку».
Отменить покупку на компьютере
Отмена через мобильное приложение
Сейчас многие предпочитают прослушивать музыку через свои мобильные устройства. Сейчас разберемся, каким образом отключить подписку, используя ваш Android-смартфон или планшет. Однако если вы оформили подписку через Google Play Маркет, то и отменять её нужно через него. Этот способ действителен для подписки, которую вы оформляли через специализированное приложение.
- Зайдите в нужное нам приложение (Яндекс.Музыка) и найдите пункт «Моя музыка»;
- Нажмите на «Мой профиль» (справа вверху);
- После переходим в «Настроить подписку Плюс»;
- Вас перенаправят на страницу Яндекс.Паспорта в том браузере, который установлен на вашем смартфоне по умолчанию;
- Внизу нажмите на ссылку «Управление подпиской»;
- В следующем окне вам дважды потребуется отменить подписку.
Возможные ошибки и способы их решения
В процессе удаления могут возникнуть различные ошибки. Решить их можно двумя способами. Первый – обратиться в службу технической поддержки. Это может быть полезно в случаях, когда для отмены подписки потребуется личное обращение к разработчикам. В таком случае могут возникнуть различные проблемы, например – отказ возвращать денежные средства.
Важно! Решить разногласия в данном смысле способны только специалисты технической поддержки.
Перевыпустить банковскую дебетовую карту. Способ, конечно, необычный, но в некоторых случаях наиболее простой и действенный. Выпуск нового продукта обычно бесплатный, банки не требуют платы или комиссии. В таком случае реквизиты, указанные на сервисах Гугл станут неактуальны.
Таким образом, отменить подписку на смартфоне совсем не трудно. Зато это позволит навсегда избавиться от ненужных сервисов и лишних затрат.
Отмена с помощью сайта на пк
Если вам нравится слушать музыку через компьютер, то для отмены подписки воспользуйтесь этим способом:
После этого вы сможете пользоваться всеми преимуществами подписки вплоть до окончания той даты, которую вы видели на предыдущей странице. После этого вас автоматически переведут на простой бесплатный аккаунт, в котором действуют ограничения (например реклама, худшее качество звука и т.д.)
Читайте также: