我遇到通过交换机启动通知的问题。我有一个开关,可用于通过通知启动我的应用程序。但是当我切换它时,通知在重新启动活动之前不会显示。当我切换开关时,如何立即显示通知。 有点像服务正在运行通知。
此外,我已多次搜索堆栈溢出和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());
}
如果你不太了解我,我希望你能帮助我。让我知道,我会尝试重新格式化问题。
由于
答案 0 :(得分:1)
如果我理解正确,您希望关注Switch
的状态更改,并根据新状态显示或隐藏通知。只需在交换机上添加OnCheckedChangeListener
并进行相应的显示或隐藏。