2015-05-11 3 views
-1

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

Есть ли вероятность, например, OnClickListener?

Вот код для уведомления:

private void notification_anzeigen(){ 


    Intent intent = new Intent(this, GestureAnyWhere.class); 

    // String notificationMessage = "GestureAnyWhere läuft im Hintergrund"; 

    // intent.putExtra("NotificationMessage", notificationMessage); 
    // intent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP | Intent.FLAG_ACTIVITY_CLEAR_TOP); 


    PendingIntent pIntent = PendingIntent.getActivity(this, 0, intent, 0); 

    // build notification 
    // the addAction re-use the same intent to keep the example short 
    Notification n = new Notification.Builder(this) 
      .setContentTitle("GestureAnyWhere läuft im Hintergrund") 
      //.setContentText("GestureAnyWhere muss im Hintergrund ausgeführt werden, um Gesten zu erkennen") 
      .setSmallIcon(R.drawable.ic_launcher)  // muss rein, ansonsten wird keine Notifikation angezeigt 
      .setContentIntent(pIntent) 
      .addAction(R.drawable.ic_launcher, "Plus-Button", pIntent) 
      .setStyle(new Notification.BigTextStyle().bigText("Auf den Plus-Button drücken, um auf aktueller Seite Gesten zu erkennen")) 
      .setAutoCancel(true).build(); 

    n.setLatestEventInfo(getApplicationContext(), "Plus-Button", "neu", pIntent); 


    NotificationManager notificationManager = (NotificationManager)getSystemService(NOTIFICATION_SERVICE); 
    notificationManager.notify(0, n); 
} 

К сожалению, вопрос не ясен. Поэтому я стараюсь specifiy его немного лучше:

  • У меня фоновую службу, которая начинается, когда я минимизировать мое приложение
  • , когда служба начинает, новое уведомление будет показано, чтобы сообщить пользователю , что приложение работает в фоновом режиме
  • Для обнаружения жестов, которые вытягиваются за пределы приложения, должна быть установлена ​​фоновая служба
  • Когда я нажимаю на уведомление, и приложение запускается снова, служба должна быть остановлена ​​(в противном случае я могу рисовать внутри своего приложения и больше не нажимать на что-либо) -> так что это первый p oint Я хочу сделать: остановить фоновый сервис, когда я нажимаю на уведомление
  • Когда я имитирую свое приложение и запускаю службу, я могу только сейчас рисовать на рабочем столе -> так что это вторая точка, которую я хочу делать: когда пользователь нажимает на кнопку под уведомлением, действие должно вызываться для того, чтобы пользователь мог нарисовать текущую позицию.

Поскольку я только хочу знать, как щелчок на уведомлении (или Button под уведомлением) обрабатывается, как правило, я не предоставляю код для службы и все остальное.

Надеюсь, вопрос и то, что я хочу сделать, немного яснее.

Большое спасибо.

+2

И что именно вы хотите сделать? Вы могли транслировать свое намерение и обрабатывать его в «BroadcastReceiver», или вы могли бы приложить дополнительное к намерению и проверить его в своей «Деятельности». – tachyonflux

+0

Вопрос не ясен, пожалуйста, отредактируйте свой вопрос, что именно вы хотите сделать ??? – Attaullah

+0

извините. Я попытался объяснить вопрос лучше на этот раз – user3603935

ответ

0

Ну, как я понимаю, вы хотите прекратить обслуживание, как только вернетесь к активности. Чтобы сделать это, вы можете добавить немного дополнительного внутреннего намерения PendingIntent. Соберите это лишнее от намерения в своей деятельности (onCreate и onNewIntent при необходимости), а затем вызовите Context.stopService()

+0

Спасибо за ваш ответ. Не могли бы вы предоставить мне пример PLS – user3603935

Смежные вопросы