當我長按主頁按鈕並殺死我的應用程序,通知已從狀態欄中刪除,但我想保持它當應用程序死亡,如何在應用程序死亡時保持狀態欄上的通知?如何在應用程序死亡時在狀態欄上保持通知?
回答
什麼ü可以做的是使用:
注:你可以使用這個標誌,如果殺死你的服務將是破壞性的用戶,例如,如果你的服務是執行後臺音樂播放,所以用戶會注意他們的音樂是否停止播放。
,並停止這種用法:
注:從前臺狀態刪除此服務,允許它是否被殺死需要更多的內存。
希望這有助於你。
謝謝,我試了一下,但沒有用。 @Strider –
在activity
或fragment
中創建類似如下的方法,即您希望通知服務的位置。然後在那裏調用這個方法。
private void buildNotification(){
Intent intent = new Intent(getActivity(), NotificationReceiver.class);
PendingIntent pendingIntent = PendingIntent.getBroadcast(getActivity(), 0, intent, 0);
AlarmManager am = (AlarmManager) getActivity().getSystemService(getActivity().ALARM_SERVICE);
am.set(AlarmManager.RTC_WAKEUP, myCalendar.getTimeInMillis(), pendingIntent);
}
現在創建(在這裏我創建NotificationReceiver.class
)延伸BroadcastReceiver
如下一類。
public class NotificationReceiver extends BroadcastReceiver{
private static final int NOTIFICATION_ID = 1991;
@Override
public void onReceive(Context context, Intent intent) {
int num = 0;
Intent contentIntent = new Intent(context, MainActivity.class);
PendingIntent pendingIntent = PendingIntent.getActivity(context, 0, contentIntent, PendingIntent.FLAG_ONE_SHOT);
NotificationCompat.Builder builder = new NotificationCompat.Builder(context);
builder.setSmallIcon(R.drawable.ic_notifications_black_24dp);
builder.setContentTitle("your title.");
builder.setContentText("your text.");
builder.setContentIntent(pendingIntent);
builder.setTicker("ticker text.");
builder.setAutoCancel(true);
builder.setOnlyAlertOnce(true);
builder.setDefaults(Notification.DEFAULT_ALL);
builder.setNumber(++num);
NotificationManager mNotificationManager = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);
mNotificationManager.notify(NOTIFICATION_ID, builder.build());
}
}
這將解決您的問題。
更新
我忘了提,你也必須在AndroidManifest.xml
添加receiver
。你必須把你的class
文件receiver
我試試這個,但無法解決我的問題。謝謝@Neel –
您的通知
<receiver android:name=".NotificationReceiver"/>
即需要的東西我已經關閉,就像一個Service
活動後依舊擁有。創建一個管理您的通知的小型Service
。您的活動可以將意圖發送到服務,或綁定到服務並通過連接直接調用方法,以修改通知的狀態。
我在移動設備上,因此無法輕鬆構建示例...敬請期待。^_^
- 1. 如何在爬行器突然死亡時保持狀態?
- 2. WCF tcp連接在進程死亡時保持打開狀態
- 3. Android Win Death - 應用程序死亡,沒有保存狀態
- 4. 如何在應用程序死亡時從服務器推送通知
- 5. 當應用程序從後臺死亡時在iPhone上的通知
- 6. 通知不會出現在應用程序的背景狀態和死亡狀態
- 7. 當從後臺殺死應用程序時從狀態欄中刪除通知
- 8. 當應用程序死亡時收到的iOS無聲通知
- 9. 當應用程序死亡時接收PubNub推送通知
- 10. 處理應用程序死亡時的通知操作iOS 10
- 11. 如何在退出時輕鬆保持應用程序狀態
- 12. 如何在狀態欄中獲得PERMANENT應用程序通知程序?
- 13. 如何處理IOS中通知的死亡(關閉)應用狀態Swift 2
- 14. 如何保持應用程序活動或死亡時重新啓動?
- 15. 如何在反應本機中保留在後臺死亡的android應用程序的狀態
- 16. 在AJAX應用程序中保持Web應用程序狀態
- 17. 線程狀態爲何死亡?
- 18. 鎖定狀態,如果線程死亡
- 19. 如何在應用程序死亡時獲取事件?
- 20. 如何在應用程序死亡時管理alarmManager(Android)
- 21. 通知不會出現在使用Firebase的應用程序的死亡狀態中
- 22. 在COM中,如何在客戶死亡時得到通知?
- 23. 應用程序死亡後的推送通知
- 24. 手柄通知隱藏,當應用程序崩潰/死亡
- 25. WP7.1 ScheduledTaskAgent通知何時死亡
- 26. 當ASP.NET應用程序處於不活動狀態時,ASP.NET Worker進程死亡
- 27. 科爾多瓦應用程序監控在應用程序處於死亡狀態時顯示Estimote/iBeacon IOS
- 28. 在Android上保持應用程序狀態
- 29. 如何識別應用程序進程何時死亡?
- 30. 如何在後臺應用程序中保持XMPP連接在IOS應用程序中保持活動狀態?
創建一個前臺服務 – ByteHamster
好吧,我得到了你一個新的答案,希望這有助於你;) – Strider