Softwaring 2015-04-21 01:27 采纳率: 66.7%
浏览 2230
已采纳

线程中调用putExtras, activity调用getExtras返回空

详细描述如下:
在service类中新建一线程, 线程中写了如下代码:

intent = new Intent (getBaseContext (), MeiaAlarmDetail.class); 
Bundle bundle = new Bundle();  
bundle.putString("DevID", alarm_info.DevID);
intent.putExtras (bundle);

但是在MeiaAlarmDetail.class这个类中, 去调用getExtras, 返回值却是null。

如果把以上代码放到onStartCommand中, 是可以获取到Bundle的。

  • 写回答

3条回答 默认 最新

  • 清水依恋成 2015-04-21 01:45
    关注

    首先,确认一下你接收广播intent = new Intent这块是不是和发送端发送广播时的action配对,我没看到你intent的action配对代码,即intent.setAction。

    如果你想使用bundle传递对象,对象bean必须实现java.io.Serialable接口。

    另外需要告诉你额是,bundle承载的数据最好总大小不要超过256K,否则会有丢包的现象发生。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?