package com.ved.musicmapapp.receiver;
import java.util.List;
import com.ved.musicmapapp.MainActivity;
import android.app.ActivityManager;
import android.app.ActivityManager.RunningTaskInfo;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.os.Message;
import android.os.Messenger;
import android.os.RemoteException;
public class NotificationBroadcastReceiver extends BroadcastReceiver {
private Messenger messenger = null;
@Override
public void onReceive(Context context, Intent intent) {
String fbId = intent.getStringExtra("FOLLOW_FBID");
if (fbId != null && fbId.length() > 0) {
if (!isRunning(context)) {
Intent notificationIntent = new Intent(context,
MainActivity.class);
notificationIntent.putExtra("FOLLOW_FBID", fbId);
notificationIntent
.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(notificationIntent);
} else {
if (messenger != null) {
Message message = new Message();
message.what = 2;
Bundle data = new Bundle();
data.putString("FOLLOW_FBID", fbId);
message.setData(data);
try {
messenger.send(message);
} catch (RemoteException e) {
e.printStackTrace();
}
}
}
}
}
public void setMessenger(Messenger messenger) {
this.messenger = messenger;
}
public boolean isRunning(Context context) {
ActivityManager activityManager = (ActivityManager) context
.getSystemService(Context.ACTIVITY_SERVICE);
List<RunningTaskInfo> tasks = activityManager
.getRunningTasks(Integer.MAX_VALUE);
for (RunningTaskInfo task : tasks) {
if (context.getPackageName().equalsIgnoreCase(
task.baseActivity.getPackageName()))
return true;
}
return false;
}
}