Intereting Posts
Прокрутка RecyclerView на вставке Как работать с Tensorflow на платформе Android? Передаёт ли контекст из Activity в статический класс эту активность навсегда? Утечка памяти? Как настроить реакцию родной андроидной библиотеки на использование npm, установленную на основе реакции? Контрольная подсветка кода: не может установить другой стиль подсветки для информационных и слабых предупреждений Может ли Android поддерживать dp менее 1dp? Как объединить использование db4o для хранения данных и Lucene для индексации данных для быстрого поиска? Android – нет конструктора по умолчанию Обработка NDK Bitmap с использованием голубого цвета OpenCv оранжевого цвета? Мягкая клавиатура перекрывает EditTextPreferenceDialogFragmentCompat, когда AppTheme является прозрачным Как справиться с подключением к Интернету? Как отправить запрос HTTP POST и получить ответ? Проблемы с запуском файла Android APK при слиянии файлов dex с помощью Scala Прокручиваемая легенда mpandroidchart piechart Служба FoxyLocationApi Background Location перестает получать обновления случайно

Андроидные GCM push-уведомления

Я успешно настроил код для запуска GCM через телефонную таблицу в приложении для Android. Мне удалось защитить идентификатор регистрации телефона и отправить сообщение в приложение, используя этот идентификатор в PHP-скрипте. Моя единственная проблема заключается в том, что сообщение отображается как предупреждение javascript, пока приложение открыто, и я ищу сообщение, отправленное на трубку, но не отображающее значок на верхней панели уведомлений.

**> Можно ли показывать значок на верхней панели в Android-устройстве

Кто-нибудь знает, способен ли плагин GCM для Phonegap? **

У меня есть C2DM-Phonegap. https://github.com/marknutter/GCM-Cordova

Пожалуйста, помогите мне …

Библиотека, которую вы используете, указывает, что нужно делать при получении сообщения. Вы можете изменить свой код, чтобы сделать то, что хотите, или перевернуть свой собственный GCMIntentService.

См. Ссылки:

https://github.com/phonegap-build/PushPlugin

https://build.phonegap.com/plugins/324

Библиотека, которую вы используете, указывает, что нужно делать при получении сообщения. Вы можете изменить свой код, чтобы сделать то, что хотите, или перевернуть свой собственный GCMIntentService.

Самый быстрый способ – добавить следующий код в GCMIntentService.java в функцию onMessage. Плагин GCM, который вы используете, получает только сообщение GCM, но вы должны запускать уведомления самостоятельно. Вы также можете попробовать плагин cordova для уведомлений о статусной строке.

protected void onMessage(Context context, Intent intent) { Log.d(TAG, "onMessage - context: " + context); // Extract the payload from the message Bundle extras = intent.getExtras(); if (extras != null) { String message = extras.getString("message"); String title = extras.getString("title"); Notification notif = new Notification(R.drawable.ic_launcher, message, System.currentTimeMillis() ); notif.flags = Notification.FLAG_AUTO_CANCEL; notif.defaults |= Notification.DEFAULT_SOUND; notif.defaults |= Notification.DEFAULT_VIBRATE; Intent notificationIntent = new Intent(context, SomeActivity.class); notificationIntent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP); PendingIntent contentIntent = PendingIntent.getActivity(context, 0, notificationIntent, 0); notif.setLatestEventInfo(context, "Title of notification", message, contentIntent); String ns = Context.NOTIFICATION_SERVICE; NotificationManager mNotificationManager = (NotificationManager) context.getSystemService(ns); mNotificationManager.notify(1, notif); 

Проверьте этот код

Private static void generateNotification (контекстный контекст, сообщение String) { int icon = R.drawable.ic_launcher;

  // here is your icon drawable instead of ic_launcher long when = System.currentTimeMillis(); NotificationManager notificationManager = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE); Notification notification = new Notification(icon, message, when); String title = context.getString(R.string.app_name); Intent notificationIntent = new Intent(context.getApplicationContext(), devicephp.class); // set intent so it does not start a new activity notificationIntent.putExtra("msg", message); notificationIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP); PendingIntent intent = PendingIntent.getActivity(context, 0, notificationIntent, 0); notification.setLatestEventInfo(context, title, message, intent); notification.flags |= Notification.FLAG_AUTO_CANCEL; notificationManager.notify(0, notification); }