2015-12-03 2 views
-1

Я делаю приложение для Android, которое планирую предложить бесплатно в течение пробного периода, скажем, 30 дней. Итак, я думаю о стратегии ее реализации. Одной из наиболее часто используемых стратегий является служба на стороне сервера, которая будет вызываться, когда пользователь сначала устанавливает приложение, и это экономит время установки приложения на сервере. Каждый раз, когда пользователь запускает приложение, эта бэкэнд-служба вызывается, чтобы проверить, сколько времени прошло с момента установки приложения. Эта стратегия хороша в том смысле, что пользователь не может обойти ее, изменяя время устройства или удаляя и переустанавливая приложение. Но недостатком является то, что вызов сервера при каждом запуске приложения может замедлить работу приложения и, следовательно, плохой пользовательский интерфейс.Уведомления GCM с Android

Таким образом, я столкнулся с сервисом GCM, предоставляемым Google. Поэтому я планирую, что я вызываю серверную службу для хранения времени установки, когда приложение установлено в первый раз. Не запускается вызов, когда пользователь запускает приложение. И когда пробный период завершен, сервер отправляет уведомления об этом на сервер GCM, который затем уведомляет об этом устройство. Но у меня есть две проблемы в отношении него:

  1. Может сервис GCM использоваться для отправки уведомлений только для определенных устройств и не все, на которых приложение установлено или уведомление отправить на все устройства?

  2. Для службы GCM требуется приложение Google Play Store, установленное на устройстве. Возможно, пользователь удаляет приложение Google Play Store и, следовательно, перестает получать уведомления GCM, тем самым обходя ограничения пробного периода.

Входы будут высоко оценены.

ответ

0

см. Ссылку this, вы получите необходимую информацию ,,, через Google Play Services это еще один способ, которым вы можете напрямую использовать файл gcm.jar в своей папке lib, в этом случае вам не понадобятся Google Play Services

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

+0

Hemant, большое спасибо за информацию. – Mandroid

+0

всегда приветствую дорогого –

0

Вам необходимо использовать последнюю библиотеку GCM. шагов 1) Добавить библиотеку Google-Play-услуги для вашего проекта 2) Подпишитесь на ГКЙ от https://developers.google.com/cloud-messaging/android/client

3) Скачать все файлы здесь https://drive.google.com/open?id=0B2Rxy_fDHdSjXzB4bkJ4WVdNQUk

4) GCMRegister Пользователя класса зарегистрировать свои устройства 5) Добавьте свой код уведомления, когда он получил в GCMService 6) Добавить службу в очевидном

<receiver android:name="com.google.android.gms.gcm.GcmReceiver" android:permission="com.google.android.c2dm.permission.SEND"> 
- <intent-filter> 
    <action android:name="com.google.android.c2dm.intent.RECEIVE" /> 
- <!-- for Gingerbread GSF backward compat 
    --> 
    <action android:name="com.google.android.c2dm.intent.REGISTRATION" /> 
    <category android:name="com.fudiyo" /> 
    </intent-filter> 
    </receiver> 
- <service android:name="com.fudiyo.gcmservice.GcmService" android:exported="false"> 
- <intent-filter> 
    <action android:name="com.google.android.c2dm.intent.RECEIVE" /> 
    </intent-filter> 
    </service>