Идентификация возвращенных загрузок Play Маркета

Play Store теперь автоматически одобряет возмещение, если они происходят через 2 часа после покупки. У меня есть приложение для Android, в котором люди могут создавать и управлять игровым хостом VPS из приложения. То есть, когда вы запускаете приложение, вы просматриваете поток регистрации, а затем у вас есть VPS, который запускает вашу игру. После регистрации вам нужно приложение, только если вы хотите внести какие-либо изменения в VPS.

Я вижу, что люди злоупотребляют этим, покупая приложение (поставляется с бесплатной версией VPS на 30 дней), проходя через поток регистрации для создания своего VPS, а затем они запрашивают возврат (который автоматически получает одобрение, если он находится в течение 2 часов).

Из Google Кошелька я могу видеть, какие идентификаторы OrderID отменяются, но как я могу связать это с идентификатором userID или с другим, что я могу получить в приложении?

Я заставляю пользователей объявлять свою учетную запись пользователя Google, прежде чем они смогут пройти через поток регистрации:

Intent intent = AccountPicker.newChooseAccountIntent(null, null, new String[]{"com.google"}, false, null, null, null, null); // ... email = data.getStringExtra(AccountManager.KEY_ACCOUNT_NAME); 

Но это только дает мне адрес электронной почты, который я не могу связать с идентификатором OrderID, который является единственным идентификатором в Google Кошельке.

Как связать свою учетную запись / email / deviceID с идентификатором OrderID (или другой информацией, доступной в Google Кошельке)?

Обратите внимание: это НЕ для покупок в приложении, где OrderID легко доступен. Это для покупки приложения .

Благодаря!

Изменить: авторизация служб Google Play и управление учетными записями пользователей не доходят до OrderID: http://developer.android.com/google/auth/http-auth.html Вот документация по выставлению счетов в приложении, которая ( Не удивительно) не предоставляют никакой информации о заказе на покупку заказа приложения: http://developer.android.com/google/play/billing/billing_reference.html Лицензирование не предоставляет идентификаторы OrderID: http: // разработчик .android.com / Google / воспроизведение / лицензирование / overview.html

Человек с аналогичной проблемой, но также не ответивший: http://pcandsys.com/20378/verify-purchase-in-google-play-by-orderid / b3

Не совсем ответ на ваш вопрос, но в вашей ситуации я бы ограничил время аренды до нескольких часов, в то время как фоновое обслуживание установленного приложения должно просыпаться раз в несколько часов, чтобы продлить срок аренды. Такая низкая частота не приводит к заметному потреблению энергии или воздействию трафика данных. Конечно, чтобы избежать возможных столкновений, время аренды должно быть в несколько раз больше, чем время обновления (например, аренда на 24 часа / обновления раз в 8 часов)

Другой вариант может заключаться в том, чтобы сделать ваше приложение бесплатным с пробным периодом + покупка в приложении, чтобы сделать его постоянным

Единственным доступным решением, которое я вижу, является запрос «подтверждения интереса» из приложения после истечения двух часов.

Поток будет:

00:00 Приложение для покупок пользователей 00:05 Пользователь отправляет свой адрес электронной почты и подписывается 00:10 VPS активируется. Пользователь уведомляется о требовании КИП и подтверждает. 00:30 Возврат запросов пользователей

02:05 Удаленный сервер отправляет приветственное письмо с напоминанием: «Эй, вам нужно подтвердить свой интерес, чтобы получить ваши 30 дней».

03:00 Отсутствие COI, VPS приостанавливается / останавливается до удаления.

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

Пользователи с приложением, которые его отключили, и кто не проверяет электронную почту (назовем их «Группа G»), хорошо. Им придется воссоздать VPS. Но их предупредили, не так ли? У них не было доступа к электронной почте, но как насчет самого приложения?

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

Вы также можете уменьшить проблемы для пользователей, в зависимости от оперативности отчетов Play Store (которые я игнорирую). Предположим, что вам сообщили о возврате с задержкой, которая не должна превышать X минут. Это означает, что если в любой момент времени не было уведомлений о возмещении в течение как минимум 120 + X минут , все VPS, созданные ранее 120 + X минут назад, и чей COI все еще ожидает, так же хорошо, как подтверждено, и их ожидающий статус может быть Безопасно очищается без необходимости действий пользователя. Таким образом, у всех пользователей группы G, у которых не было никого, кто обратился с просьбой о возврате, в то же время они оценивают приложение, все равно не будут иметь никаких негативных последствий.

Тем не менее, мне кажется довольно странным, что Google не разрешает приложению запрашивать «Как я родился?». (С идентификатором приложения и устройства) и получить свой собственный идентификатор заказа (или загрузить идентификатор или уникальный идентификатор) обратно, по крайней мере, в разумные сроки.