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

线程中调用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条)

报告相同问题?

悬赏问题

  • ¥15 NAO机器人的录音程序保存问题
  • ¥15 C#读写EXCEL文件,不同编译
  • ¥15 MapReduce结果输出到HBase,一直连接不上MySQL
  • ¥15 扩散模型sd.webui使用时报错“Nonetype”
  • ¥15 stm32流水灯+呼吸灯+外部中断按键
  • ¥15 将二维数组,按照假设的规定,如0/1/0 == "4",把对应列位置写成一个字符并打印输出该字符
  • ¥15 NX MCD仿真与博途通讯不了啥情况
  • ¥15 win11家庭中文版安装docker遇到Hyper-V启用失败解决办法整理
  • ¥15 gradio的web端页面格式不对的问题
  • ¥15 求大家看看Nonce如何配置