Android Service和广播
来源:互联网 发布:大数据存储和处理 编辑:程序博客网 时间:2024/06/05 16:13
在学习Service和广播的时候遇到一点小问题,在此记下:
需求:我们经常需要去调用service的方法或取service某个状态的值。这时需要service和客户端之间的通信。启动方式:startService(context,service)
问题:在service中启动一个线程,不断更新count变量的数值(每隔1秒钟加1),在Activity客户端编写一个Broadcast,获得该count的值。在service端,传递数据的intent如下:
Intent intent = new Intent();
intent.addAction(broadcast的action);
intent.intent.putExtra("count", count);
sendBroadcast(intent);
在Broadcast端接收数据如下:
int count= intent.getIntExtra("count",-1);
结果报如下错误:
03-27 06:40:17.556: E/AndroidRuntime(587): java.lang.RuntimeException: Error receiving broadcast Intent { act=com.gem.action.Receiver_Action (has extras) } in com.gem.broadcastservice.BroadcastAndServiceActivity$ClientReceiver@4051af38
解决问题:经测试发现带字符串可以带过去,带整数就带不过去。把代码改成如下则可以:
在service端,传递数据的intent如下:
Intent intent = new Intent();
intent.addAction(broadcast的action);
intent.intent.putExtra("count", count+"");
sendBroadcast(intent);
在Broadcast端接收数据如下:
int count = intent.getStringExtra("count");
环境是:Android2.3.3。
- Android Service和广播
- [Android] Service和广播联合更新UI
- android广播和service的那些小事
- android 广播 service
- android Service发送广播
- [Android实例] Service和广播联合更新UI的例子
- Android Service和广播联合更新UI的例子
- [Android实例] Service和广播联合更新UI的例子
- Android实例] Service和广播联合更新UI的例子
- 广播和Service唤醒被杀死的android app
- 广播+ Service详解、通知和权限-Android基础知识整理
- Android广播和广播接收者
- Android- 活动(Activity), 服务(Service), 广播(Broadcast), 广播接收器(BroadcastReceiver)
- Android- 活动(Activity), 服务(Service), 广播(Broadcast), 广播接收器(BroadcastReceiver)
- Android- 活动(Activity), 服务(Service), 广播(Broadcast), 广播接收器(BroadcastReceiver)
- Android- 活动(Activity), 服务(Service), 广播(Broadcast), 广播接收器(BroadcastReceiver)
- android 广播 android Service 开机启动的Service
- android 广播 android Service 开机启动的Service
- 《那年,一步一步学linux c》全系列(目录索引)
- oracle 中如何定位重要(消耗资源多)的SQL
- 求解决,ibatis级联查询异常,求解决,哪里配置错了吗??(已经解决)
- 需求分级学习
- 堆排序算法实现(C++)
- Android Service和广播
- 第6周实验报告任务二
- android.view.window类详解
- Android自定义捕获Application全局异常
- windows核心对象semaphore合适增加和减少
- windows环境下python 3.x安装networkx的方法
- MySQL学习笔记(七)扩展性设计之Search
- compare:
- 我大学了还是大学了我02