开关打开时显示通知

时间:2015-05-23 12:31:24

标签: java android notifications

我遇到通过交换机启动通知的问题。我有一个开关,可用于通过通知启动我的应用程序。但是当我切换它时,通知在重新启动活动之前不会显示。当我切换开关时,如何立即显示通知。 有点像服务正在运行通知。

此外,我已多次搜索堆栈溢出和developer.android页面。尝试过很多答案,似乎没什么用。

以下是我用于在mt SettingsActivity中通过共享偏好显示通知的代码:

// Persistent notification
SharedPreferences defaultSettings = PreferenceManager.getDefaultSharedPreferences(this);
boolean notifyEnabled = defaultSettings.getBoolean("pref_key_notification_launch", true);

if (notifyEnabled) {
    NotificationCompat.Builder appLaunch = new NotificationCompat.Builder(this);
    appLaunch.setSmallIcon(R.drawable.ic_gesture);
    appLaunch.setContentTitle("Test!");
    appLaunch.setContentText("This is my test notification");
    appLaunch.setAutoCancel(true);
    Intent targetIntent = new Intent(this, MainActivity.class);
    PendingIntent contentIntent = PendingIntent.getActivity(this, 0, targetIntent, PendingIntent.FLAG_UPDATE_CURRENT);
    appLaunch.setContentIntent(contentIntent);
    NotificationManager mNotificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
    mNotificationManager.notify(0, appLaunch.build());
}

如果你不太了解我,我希望你能帮助我。让我知道,我会尝试重新格式化问题。

由于

1 个答案:

答案 0 :(得分:1)

如果我理解正确,您希望关注Switch的状态更改,并根据新状态显示或隐藏通知。只需在交换机上添加OnCheckedChangeListener并进行相应的显示或隐藏。