Example usage for android.app PendingIntent getBroadcast

List of usage examples for android.app PendingIntent getBroadcast

Introduction

In this page you can find the example usage for android.app PendingIntent getBroadcast.

Prototype

public static PendingIntent getBroadcast(Context context, int requestCode, Intent intent, @Flags int flags) 

Source Link

Document

Retrieve a PendingIntent that will perform a broadcast, like calling Context#sendBroadcast(Intent) Context.sendBroadcast() .

Usage

From source file:de.appplant.cordova.plugin.notification.NotificationWrapper.java

/**
 * Cancel existing notification/*from w w  w  . j a  va  2s .  co  m*/
 */
public void cancel(String notificationId) {
    /*
       * Create an intent that looks similar, to the one that was registered
       * using add. Making sure the notification id in the action is the same.
       * Now we can search for such an intent using the 'getService' method
       * and cancel it.
       */
    Intent intent = new Intent(context, receiver).setAction("" + notificationId);

    PendingIntent pi = PendingIntent.getBroadcast(context, 0, intent, 0);
    AlarmManager am = getAlarmManager();
    NotificationManager nc = getNotificationManager();

    am.cancel(pi);

    try {
        nc.cancel(Integer.parseInt(notificationId));
    } catch (Exception e) {
    }
    unpersist(notificationId);
}

From source file:audio.lisn.service.MediaNotificationManager.java

public MediaNotificationManager(AudioPlayerService service) {
    mService = service;//from  w ww. j a v  a  2s. co  m
    Log.v("Media", "MediaNotificationManager start");

    // mController = new MediaController(mService.getApplicationContext());

    // updateSessionToken();

    mNotificationColor = mService.getResources().getColor(R.color.colorPrimary);

    //ResourceHelper.getThemeColor(mService,android.R.attr.colorPrimary, Color.DKGRAY);

    mNotificationManager = (NotificationManager) mService.getSystemService(Context.NOTIFICATION_SERVICE);

    String pkg = mService.getPackageName();
    mPauseIntent = PendingIntent.getBroadcast(mService, REQUEST_CODE, new Intent(ACTION_PAUSE).setPackage(pkg),
            PendingIntent.FLAG_CANCEL_CURRENT);
    mPlayIntent = PendingIntent.getBroadcast(mService, REQUEST_CODE, new Intent(ACTION_PLAY).setPackage(pkg),
            PendingIntent.FLAG_CANCEL_CURRENT);
    mPreviousIntent = PendingIntent.getBroadcast(mService, REQUEST_CODE,
            new Intent(ACTION_PREV).setPackage(pkg), PendingIntent.FLAG_CANCEL_CURRENT);
    mNextIntent = PendingIntent.getBroadcast(mService, REQUEST_CODE, new Intent(ACTION_NEXT).setPackage(pkg),
            PendingIntent.FLAG_CANCEL_CURRENT);
    mDeleteIntent = PendingIntent.getBroadcast(mService, REQUEST_CODE,
            new Intent(ACTION_DELETE).setPackage(pkg), PendingIntent.FLAG_CANCEL_CURRENT);

    // Cancel all notifications to handle the case where the Service was killed and
    // restarted by the system.
    mNotificationManager.cancelAll();
}

From source file:ca.spencerelliott.mercury.ChangesetService.java

@Override
public void onStart(Intent intent, int startId) {
    int broadcast_call = intent.getIntExtra("ca.spencerelliott.mercury.call", -1);

    //If this was on boot we want to set up the alarm to set up repeating notifications
    if (broadcast_call == AlarmReceiver.ON_BOOT) {
        //Get the alarm service
        AlarmManager alarm = (AlarmManager) getSystemService(Context.ALARM_SERVICE);

        SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getBaseContext());

        //Generate the interval between notifications, default to fifteen minutes
        long interval = Long.parseLong(prefs.getString("notification_interval", "900000"));

        //Create the intents to launch the service again
        Intent new_intent = new Intent("ca.spencerelliott.mercury.REFRESH_CHANGESETS");
        PendingIntent p_intent = PendingIntent.getBroadcast(this, 0, new_intent, 0);

        final Calendar c = Calendar.getInstance();

        //Create a repeating alarm
        alarm.setInexactRepeating(AlarmManager.ELAPSED_REALTIME_WAKEUP, c.getTimeInMillis() + interval,
                interval, p_intent);//  w ww.  ja v  a 2  s  .c om

        //Stop the service since we're waiting for the interval
        stopSelf();
    }

    //Create a new feed processor
    FeedProcessor processor = new FeedProcessor();

    //Gather all of the URLs from the databases here

    //Let the processor handle all of the URLs and notify the user of any new changesets
    processor.execute();

}

From source file:com.otaupdater.utils.RomInfo.java

public void showUpdateNotif(Context ctx) {
    Intent mainInent = new Intent(ctx, TabDisplay.class);
    mainInent.setAction(TabDisplay.ROM_NOTIF_ACTION);
    this.addToIntent(mainInent);
    PendingIntent mainPIntent = PendingIntent.getActivity(ctx, 0, mainInent, PendingIntent.FLAG_CANCEL_CURRENT);

    Intent dlInent = new Intent(ctx, DownloadReceiver.class);
    dlInent.setAction(DownloadReceiver.DL_ROM_ACTION);
    this.addToIntent(dlInent);
    PendingIntent dlPIntent = PendingIntent.getBroadcast(ctx, 0, dlInent, PendingIntent.FLAG_CANCEL_CURRENT);

    NotificationCompat.Builder builder = new NotificationCompat.Builder(ctx);
    builder.setContentIntent(mainPIntent);
    builder.setContentTitle(ctx.getString(R.string.notif_source));
    builder.setContentText(ctx.getString(R.string.notif_text_rom));
    builder.setTicker(ctx.getString(R.string.notif_text_rom));
    builder.setWhen(System.currentTimeMillis());
    builder.setSmallIcon(R.drawable.updates);
    builder.setStyle(new NotificationCompat.BigTextStyle().bigText(changelog));
    builder.setPriority(NotificationCompat.PRIORITY_LOW);
    builder.addAction(R.drawable.ic_download_default, ctx.getString(R.string.notif_download), dlPIntent);

    NotificationManager nm = (NotificationManager) ctx.getSystemService(Context.NOTIFICATION_SERVICE);
    nm.notify(Config.ROM_NOTIF_ID, builder.build());
}

From source file:com.example.android.mediabrowserservice.MediaNotificationManager.java

public MediaNotificationManager(MusicService service) {
    mService = service;//from   www .j a v a2 s.  c  om
    updateSessionToken();

    mNotificationColor = ResourceHelper.getThemeColor(mService, android.R.attr.colorPrimary, Color.DKGRAY);

    mNotificationManager = (NotificationManager) mService.getSystemService(Context.NOTIFICATION_SERVICE);

    String pkg = mService.getPackageName();
    mPauseIntent = PendingIntent.getBroadcast(mService, REQUEST_CODE, new Intent(ACTION_PAUSE).setPackage(pkg),
            PendingIntent.FLAG_CANCEL_CURRENT);
    mPlayIntent = PendingIntent.getBroadcast(mService, REQUEST_CODE, new Intent(ACTION_PLAY).setPackage(pkg),
            PendingIntent.FLAG_CANCEL_CURRENT);
    mPreviousIntent = PendingIntent.getBroadcast(mService, REQUEST_CODE,
            new Intent(ACTION_PREV).setPackage(pkg), PendingIntent.FLAG_CANCEL_CURRENT);
    mNextIntent = PendingIntent.getBroadcast(mService, REQUEST_CODE, new Intent(ACTION_NEXT).setPackage(pkg),
            PendingIntent.FLAG_CANCEL_CURRENT);

    // Cancel all notifications to handle the case where the Service was killed and
    // restarted by the system.
    mNotificationManager.cancelAll();
}

From source file:com.andreadec.musicplayer.MusicService.java

/**
 * Called when the service is created./*w ww  .  j a va  2s.  c  om*/
 */
@Override
public void onCreate() {
    PowerManager powerManager = (PowerManager) getSystemService(Context.POWER_SERVICE);
    wakeLock = powerManager.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "MusicServiceWakelock");

    // Initialize the telephony manager
    telephonyManager = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);
    phoneStateListener = new MusicPhoneStateListener();
    notificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);

    // Initialize pending intents
    quitPendingIntent = PendingIntent.getBroadcast(this, 0, new Intent("com.andreadec.musicplayer.quit"), 0);
    previousPendingIntent = PendingIntent.getBroadcast(this, 0,
            new Intent("com.andreadec.musicplayer.previous"), 0);
    playpausePendingIntent = PendingIntent.getBroadcast(this, 0,
            new Intent("com.andreadec.musicplayer.playpause"), 0);
    nextPendingIntent = PendingIntent.getBroadcast(this, 0, new Intent("com.andreadec.musicplayer.next"), 0);
    pendingIntent = PendingIntent.getActivity(this, 0,
            new Intent(this, MainActivity.class).setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP),
            PendingIntent.FLAG_UPDATE_CURRENT);

    // Read saved user preferences
    preferences = PreferenceManager.getDefaultSharedPreferences(this);

    // Initialize the media player
    mediaPlayer = new MediaPlayer();
    mediaPlayer.setOnCompletionListener(this);
    mediaPlayer.setWakeMode(this, PowerManager.PARTIAL_WAKE_LOCK); // Enable the wake lock to keep CPU running when the screen is switched off

    shuffle = preferences.getBoolean(Constants.PREFERENCE_SHUFFLE, Constants.DEFAULT_SHUFFLE);
    repeat = preferences.getBoolean(Constants.PREFERENCE_REPEAT, Constants.DEFAULT_REPEAT);
    repeatAll = preferences.getBoolean(Constants.PREFERENCE_REPEATALL, Constants.DEFAULT_REPEATALL);
    try { // This may fail if the device doesn't support bass boost
        bassBoost = new BassBoost(1, mediaPlayer.getAudioSessionId());
        bassBoost.setEnabled(
                preferences.getBoolean(Constants.PREFERENCE_BASSBOOST, Constants.DEFAULT_BASSBOOST));
        setBassBoostStrength(preferences.getInt(Constants.PREFERENCE_BASSBOOSTSTRENGTH,
                Constants.DEFAULT_BASSBOOSTSTRENGTH));
        bassBoostAvailable = true;
    } catch (Exception e) {
        bassBoostAvailable = false;
    }
    try { // This may fail if the device doesn't support equalizer
        equalizer = new Equalizer(1, mediaPlayer.getAudioSessionId());
        equalizer.setEnabled(
                preferences.getBoolean(Constants.PREFERENCE_EQUALIZER, Constants.DEFAULT_EQUALIZER));
        setEqualizerPreset(
                preferences.getInt(Constants.PREFERENCE_EQUALIZERPRESET, Constants.DEFAULT_EQUALIZERPRESET));
        equalizerAvailable = true;
    } catch (Exception e) {
        equalizerAvailable = false;
    }
    random = new Random(System.nanoTime()); // Necessary for song shuffle

    shakeListener = new ShakeListener(this);
    if (preferences.getBoolean(Constants.PREFERENCE_SHAKEENABLED, Constants.DEFAULT_SHAKEENABLED)) {
        shakeListener.enable();
    }

    telephonyManager.listen(phoneStateListener, PhoneStateListener.LISTEN_CALL_STATE); // Start listen for telephony events

    // Inizialize the audio manager
    audioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
    mediaButtonReceiverComponent = new ComponentName(getPackageName(), MediaButtonReceiver.class.getName());
    audioManager.registerMediaButtonEventReceiver(mediaButtonReceiverComponent);
    audioManager.requestAudioFocus(null, AudioManager.STREAM_MUSIC, AudioManager.AUDIOFOCUS_GAIN);

    // Initialize remote control client
    if (Build.VERSION.SDK_INT >= 14) {
        icon = BitmapFactory.decodeResource(getResources(), R.drawable.ic_launcher);
        Intent mediaButtonIntent = new Intent(Intent.ACTION_MEDIA_BUTTON);
        mediaButtonIntent.setComponent(mediaButtonReceiverComponent);
        PendingIntent mediaPendingIntent = PendingIntent.getBroadcast(getApplicationContext(), 0,
                mediaButtonIntent, 0);

        remoteControlClient = new RemoteControlClient(mediaPendingIntent);
        remoteControlClient.setTransportControlFlags(RemoteControlClient.FLAG_KEY_MEDIA_PLAY_PAUSE
                | RemoteControlClient.FLAG_KEY_MEDIA_PREVIOUS | RemoteControlClient.FLAG_KEY_MEDIA_NEXT);
        audioManager.registerRemoteControlClient(remoteControlClient);
    }

    updateNotificationMessage();

    IntentFilter intentFilter = new IntentFilter();
    intentFilter.addAction("com.andreadec.musicplayer.quit");
    intentFilter.addAction("com.andreadec.musicplayer.previous");
    intentFilter.addAction("com.andreadec.musicplayer.previousNoRestart");
    intentFilter.addAction("com.andreadec.musicplayer.playpause");
    intentFilter.addAction("com.andreadec.musicplayer.next");
    intentFilter.addAction(AudioManager.ACTION_AUDIO_BECOMING_NOISY);
    broadcastReceiver = new BroadcastReceiver() {
        @Override
        public void onReceive(Context context, Intent intent) {
            String action = intent.getAction();
            if (action.equals("com.andreadec.musicplayer.quit")) {
                sendBroadcast(new Intent("com.andreadec.musicplayer.quitactivity"));
                stopSelf();
                return;
            } else if (action.equals("com.andreadec.musicplayer.previous")) {
                previousItem(false);
            } else if (action.equals("com.andreadec.musicplayer.previousNoRestart")) {
                previousItem(true);
            } else if (action.equals("com.andreadec.musicplayer.playpause")) {
                playPause();
            } else if (action.equals("com.andreadec.musicplayer.next")) {
                nextItem();
            } else if (action.equals(AudioManager.ACTION_AUDIO_BECOMING_NOISY)) {
                if (preferences.getBoolean(Constants.PREFERENCE_STOPPLAYINGWHENHEADSETDISCONNECTED,
                        Constants.DEFAULT_STOPPLAYINGWHENHEADSETDISCONNECTED)) {
                    pause();
                }
            }
        }
    };
    registerReceiver(broadcastReceiver, intentFilter);

    if (!isPlaying()) {
        loadLastSong();
    }

    startForeground(Constants.NOTIFICATION_MAIN, notification);
}

From source file:emcewen.websms.services.C2DMRegistrationService.java

private void unregisterFromC2dm() {
    Log.d(TAG, "Unregistering from C2DM");
    Intent unregistrationIntent = new Intent("com.google.android.c2dm.intent.UNREGISTER");
    unregistrationIntent.putExtra("app", PendingIntent.getBroadcast(this, 0, new Intent(), 0));
    super.startService(unregistrationIntent);
}

From source file:com.classiqo.nativeandroid_32bitz.MediaNotificationManager.java

public MediaNotificationManager(MusicService service) throws RemoteException {
    mService = service;//  www.j  a  v  a  2  s. c  o m
    updateSessionToken();

    mNotificationColor = ResourceHelper.getThemeColor(mService, R.attr.colorPrimary, Color.DKGRAY);

    mNotificationManager = NotificationManagerCompat.from(service);

    String pkg = mService.getPackageName();
    mPauseIntent = PendingIntent.getBroadcast(mService, REQUEST_CODE, new Intent(ACTION_PAUSE).setPackage(pkg),
            PendingIntent.FLAG_CANCEL_CURRENT);
    mPlayIntent = PendingIntent.getBroadcast(mService, REQUEST_CODE, new Intent(ACTION_PLAY).setPackage(pkg),
            PendingIntent.FLAG_CANCEL_CURRENT);
    mPreviousIntent = PendingIntent.getBroadcast(mService, REQUEST_CODE,
            new Intent(ACTION_PREV).setPackage(pkg), PendingIntent.FLAG_CANCEL_CURRENT);
    mNextIntent = PendingIntent.getBroadcast(mService, REQUEST_CODE, new Intent(ACTION_NEXT).setPackage(pkg),
            PendingIntent.FLAG_CANCEL_CURRENT);
    mStopCastIntent = PendingIntent.getBroadcast(mService, REQUEST_CODE,
            new Intent(ACTION_STOP_CASTING).setPackage(pkg), PendingIntent.FLAG_CANCEL_CURRENT);

    mNotificationManager.cancelAll();
}

From source file:com.otaupdater.utils.KernelInfo.java

public void showUpdateNotif(Context ctx) {
    Intent mainInent = new Intent(ctx, TabDisplay.class);
    mainInent.setAction(TabDisplay.KERNEL_NOTIF_ACTION);
    this.addToIntent(mainInent);
    PendingIntent mainPIntent = PendingIntent.getActivity(ctx, 0, mainInent, PendingIntent.FLAG_CANCEL_CURRENT);

    Intent dlInent = new Intent(ctx, DownloadReceiver.class);
    dlInent.setAction(DownloadReceiver.DL_KERNEL_ACTION);
    this.addToIntent(dlInent);
    PendingIntent dlPIntent = PendingIntent.getBroadcast(ctx, 0, dlInent, PendingIntent.FLAG_CANCEL_CURRENT);

    NotificationCompat.Builder builder = new NotificationCompat.Builder(ctx);
    builder.setContentIntent(mainPIntent);
    builder.setContentTitle(ctx.getString(R.string.notif_source));
    builder.setContentText(ctx.getString(R.string.notif_text_kernel));
    builder.setTicker(ctx.getString(R.string.notif_text_kernel));
    builder.setWhen(System.currentTimeMillis());
    builder.setSmallIcon(R.drawable.updates);
    builder.setStyle(new NotificationCompat.BigTextStyle().bigText(changelog));
    builder.setPriority(NotificationCompat.PRIORITY_LOW);
    builder.addAction(R.drawable.ic_download_default, ctx.getString(R.string.notif_download), dlPIntent);

    NotificationManager nm = (NotificationManager) ctx.getSystemService(Context.NOTIFICATION_SERVICE);
    nm.notify(Config.KERNEL_NOTIF_ID, builder.build());
}

From source file:com.codeskraps.lolo.misc.Utils.java

public static PendingIntent getOnTouchIntent(Context context) {
    PendingIntent pendingIntent = null;//from w ww.  j a  va 2  s  .c o  m
    Intent intent = null;

    SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context);
    int onClick = Integer.parseInt(prefs.getString(Constants.ONCLICK, "0"));

    switch (onClick) {
    case 0:
        intent = new Intent("com.codeskraps.lol.DO_NOTHING");
        pendingIntent = PendingIntent.getActivity(context, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT);
        break;

    case 1:
        intent = new Intent(context, TweetsFeedActivity.class);
        pendingIntent = PendingIntent.getActivity(context, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT);
        break;

    case 2:
        intent = new Intent();
        intent.setAction(Constants.BROADCAST_RECEIVER);
        pendingIntent = PendingIntent.getBroadcast(context, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT);
        break;

    case 3:
        intent = new Intent(context, PrefsActivity.class);
        pendingIntent = PendingIntent.getActivity(context, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT);
        break;

    case 4:
        intent = new Intent(Intent.ACTION_VIEW);
        String url = prefs.getString(Constants.EURL, context.getString(R.string.prefsURL_default));
        if (!url.startsWith("http://"))
            url = "http://" + url;
        intent.setData(Uri.parse(url));
        pendingIntent = PendingIntent.getActivity(context, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT);
        break;
    }
    return pendingIntent;
}