Как проверить, заплатил ли пользователь на андроид? - PullRequest
11 голосов
/ 05 апреля 2011

Я бы хотел использовать биллинг внутри приложения в своем приложении для Android (вместо создания 2-х версий приложения - бесплатное и профессиональное). Если пользователь заплатил, то дополнительные параметры в настройках должны быть доступны. Мое приложение синхронизирует данные с сайтом (не мое). Каждый раз, когда происходит синхронизация, я хотел бы проверить, заплатил ли пользователь или нет. Как мне это сделать?

Ответы [ 2 ]

4 голосов
/ 05 апреля 2011

Я думаю, что самым простым способом для вас было бы использование управляемой покупки.Подробнее об этом: http://developer.android.com/guide/market/billing/billing_admin.html#billing-purchase-type

Тип покупки «Управление по учетной записи пользователя» полезен, если вы продаете такие предметы, как игровые уровни или функции приложения.Эти элементы не являются временными и обычно должны быть восстановлены всякий раз, когда пользователь переустанавливает ваше приложение, стирает данные на его устройстве или устанавливает ваше приложение на новое устройство.

Обновление: обновлены веб-сайт и API, см.это сейчас https://developer.android.com/google/play/billing/api.html

2 голосов
/ 05 апреля 2011

Есть много способов сделать это, я постараюсь дать вам некоторые из наиболее используемых

  1. как насчет учетных записей? может ли ваше приложение поддерживать пользователей? если это так, это практически решается с 1 пользователем на 1 аккаунт просто добавьте флаг в вашу БД для каждого пользователя. это самый безопасный способ, очень легко узнать, что кто-то крадет у вас, поэтому все ММО (например, WOW) используют этот тип проверки. Вы можете легко узнать, есть ли в учетной записи более одного пользователя

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

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

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

Есть много способов делать то, что вы хотите. но я скажу вам это: большинство приложений используют метод 2, но в противоположном направлении, то есть серийный ключ. Я не думаю, что вы собираетесь создать ММО, так что нет необходимости в варианте 1, если вы действительно не хотите, чтобы кто-нибудь взломал ваше приложение (которое, как я полагаю, независимо от того, что вы делаете, будет взломано в современном мире. Я советую вам доверять тем, кто плати и принимай тех, кто не делает)

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

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

...