1
帶有Java庫的SignalR是實時通信的絕佳選擇。 雖然可以在onCreate上訂閱集線器並關閉它。 但是當應用程序被殺死(手動或自動)或者甚至活動已經死亡時會發生什麼。 一種解決方案是使用服務 - 與創建GCM基本相同,或者另一種解決方案是與推送通知混雜在一起,並將它們發送出去,而不是同步已發送給用戶的東西(壞事)SignalR - 當應用程序處於後臺或甚至被終止時通知消息
意見建議?
帶有Java庫的SignalR是實時通信的絕佳選擇。 雖然可以在onCreate上訂閱集線器並關閉它。 但是當應用程序被殺死(手動或自動)或者甚至活動已經死亡時會發生什麼。 一種解決方案是使用服務 - 與創建GCM基本相同,或者另一種解決方案是與推送通知混雜在一起,並將它們發送出去,而不是同步已發送給用戶的東西(壞事)SignalR - 當應用程序處於後臺或甚至被終止時通知消息
意見建議?
BNKs例子是好的,殺後重新創建的服務,只需在onStartCommand使用START_STICKY返回值,這裏提到https://stackoverflow.com/a/20557120
恕我直言,你可以使用一個服務爲你的問題。如果您之前沒有閱讀過,請參閱下面的http://stackoverflow.com/questions/32573823/how-to-use-signalr-in-android/32574829?s=0|5.7792#32574829。 – BNK
你的回答非常詳細和好,但它仍然不回答我的問題。服務可能會被殺死,所以爲了觸發它,我看到的唯一方法就是發送一個推送通知。所以你如何建議解決這個問題? –
如果你使它成爲一個粘性服務(從onStartCommand返回START_STICKY),那麼服務將在空指針kill後重新創建https://developer.android.com/reference/android/app/Service.html#START_STICKY –