package org.openiot.cupus.mobile.application.notification; import android.app.Notification; import android.app.NotificationManager; import android.app.PendingIntent; import android.content.Context; import android.content.Intent; import android.support.v4.app.NotificationCompat; import org.openiot.cupus.artefact.HashtablePublication; import org.openiot.cupus.artefact.Publication; import org.openiot.cupus.artefact.Subscription; import org.openiot.cupus.entity.subscriber.NotificationListener; import org.openiot.cupus.mobile.application.R; import org.openiot.cupus.mobile.data.Parameters; import java.util.UUID; /** * Created by Kristijan on 27.02.14.. */ public class MyNotificationListener implements NotificationListener { private Context context; public MyNotificationListener(Context context) { this.context = context; } @Override public void notify(UUID subscriberId, String subscriberName, Publication publication) { NotificationManager nManager = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE); Intent notificationIntent = new Intent(context, MyNotifyMessage.class); notificationIntent.putExtra("NotificationMessage", ((HashtablePublication) publication).toString()); notificationIntent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP | Intent.FLAG_ACTIVITY_CLEAR_TOP); // This pending intent will open after notification click PendingIntent pendingIntent = PendingIntent.getActivity(context, 0, notificationIntent, PendingIntent.FLAG_UPDATE_CURRENT); Notification not = new NotificationCompat.Builder(context) .setContentTitle("New notification") .setContentText(((HashtablePublication) publication).toString()) .setContentIntent(pendingIntent) .setSmallIcon(R.drawable.ic_launcher) .build(); nManager.notify(Parameters.NOTIFY_ME_ID, not); } @Override public void notify(UUID subscriberId, String subscriberName, Subscription subscription) { } }