0
我正在使用AlarmManager
爲用戶安排各種Notification
。這一切運作良好,但我想讓用戶點擊通知,並直接轉到應用程序。通常這很容易,但在我的情況下,這有點困難。或有待定內容
由於這些通知將在未來幾天(通常爲幾天)出現,因此我無法知道當通知發佈時以及用戶點擊該應用程序時,我的應用程序是否處於活動狀態。如果應用程序處於活動狀態,我希望PendingIntent
將用戶帶到名爲PostAuthenticationActivity
的活動)。但是,如果該應用程序未處於活動狀態,則需要該應用程序執行其通常的啓動和登錄例程,該例程通過名爲SplashScreenActivity
的活動處理。我不知道如何使這個PendingIntent
足夠聰明來做出這個決定。
private Notification getNotification(String title) {
Intent resultIntent;
if (Build.VERSION.SDK_INT > 15) {
// either these lines works on it's own, if I know whether the state of the app
// how can I build in logic to make this decision dynammically?
if (appIsRunning) //pseudocode
resultIntent = new Intent(this.context, PostAuthenticationActivity.class);
else
resultIntent = new Intent(this.context, SplashScreenActivity.class);
PendingIntent pendingIntent = PendingIntent.getActivity(
this.context,
0,
resultIntent,
PendingIntent.FLAG_UPDATE_CURRENT
);
Notification.Builder builder = new Notification.Builder(context);
builder.setContentTitle(title);
builder.setContentText("Your have a group workout starting in one hour.");
builder.setSmallIcon(R.drawable.we_run_single);
builder.setContentIntent(pendingIntent);
return builder.build();
} else {
return null;
}
}