我們遇到了本地廣播問題。出於某種原因,在2個機器人(我自己的電話+老闆的手機),它工作正常。在另一部手機(像我的老闆那樣的銀河s3 mini)和老闆的平板電腦上,它卻崩潰了。如果tmp.sendBroadcast命令不是馬上就會發生程序崩潰(在此之後它仍然有點)。然而,它永遠不會到達接收器。Android localbroadcast導致應用程序崩潰
public class UpdaterIntent extends IntentService {
...
Intent intent = new Intent("my-event");
intent.putExtra("action", "update_workplaces");
intent.putExtra("parameters", time);
LocalBroadcastManager'tmp=LocalBroadcastManager.getInstance(myInst);
if(tmp!=null) {
tmp.sendBroadcast(intent);
}
我已經註冊接收這樣的:
LocalBroadcastManager.getInstance(this).registerReceiver(mMessageReceiver,
new IntentFilter("my-event"));
接收機是這樣的:
private BroadcastReceiver mMessageReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
Toast.makeText(myContext, "received message", Toast.LENGTH_SHORT).show();
}
}
};
我試圖尋找一些原因,它可能是這樣。認爲它可能是太長的參數putExtra,但即使修剪它後兩個字符串(一個在代碼中看到,一個只是一個來自服務器的日期,如「2014-03-28 12:20:02」等,所以現在在那裏不應該超過一些硬編碼限制的危險。
有什麼建議?不喜歡的任何變通辦法,以這一點,我已經拿出笨手笨腳的地獄。
你有任何機會post logcat? – nikis
如果你沒有正常使用它進行調試,那麼在模式下調試模式是不合需要的嗎?不得不推銷爲他們的個人設備切換模式的想法。崩潰不會發生在任何設備上這是爲了發展(pa特別是我的手機。如果它發生的話,會更容易)。也許下週我可以把手放在手機上。除非有辦法,他們可以通過電話本身通過電子郵件上傳(我懷疑他們會願意去學習如何使用adb控制檯的麻煩) – user1396135