Android实现非Activity与Activity数据传输
来源:互联网 发布:淘宝联盟优惠券怎么用 编辑:程序博客网 时间:2024/05/21 09:38
我之前在做TCP通讯时,tcp的具体实现代码我给单独写在一个类了,导致后面我Activity拿不到数据,后面我网上找了很久都没有资料,我现在解决了就写出来,希望能帮到遇到我同样问题的人,也是做写笔记,以便以后自己使用。
在非Activity中需要实现的代码如下:
Intent intent = new Intent();intent.setAction("tcpServerReceiver");intent.putExtra("tcpServerReceiver", rcvMsg2);VideoViewActivity.context.sendBroadcast(intent);//将消息发送给主界面
“rcvMsg2”是接收到的数据,但这数据已经被我特殊处理,"VideoViewActivity.context.sendBroadcast(intent);"这是以广播的形式给Activity发消息
在Activity中需要实现的代码如下:
private TextView txtRcv;private final MyHandler myHandler = new MyHandler(this);private MyBroadcastReceiver myBroadcastReceiver = new MyBroadcastReceiver();@SuppressLint("StaticFieldLeak")public static Context context;private class MyHandler extends Handler { private final WeakReference<FuncTcpServer> mActivity; MyHandler(FuncTcpServer activity) { mActivity = new WeakReference<FuncTcpServer>(activity); } @Override public void handleMessage(Message msg) { FuncTcpServer activity = mActivity.get(); if (activity != null) { switch (msg.what) { case 1: txtRcv.append(msg.obj.toString());//这是把接收到的消息显示到当前UI界面 KLog.e(msg.obj.toString()); break; } } } } private class MyBroadcastReceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { String mAction = intent.getAction(); switch (mAction) { case "tcpServerReceiver": String msg = intent.getStringExtra("tcpServerReceiver"); Message message = Message.obtain(); message.what = 1; message.obj = msg; myHandler.sendMessage(message); break; } } }接着还要在onCreate()中注册广播接收器和初始化context = this;IntentFilter intentFilter = new IntentFilter("tcpServerReceiver");registerReceiver(myBroadcastReceiver, intentFilter);这样就大功告成了,博客写的不多,写的不好请见谅,有什么不懂的可以找我。
阅读全文
0 0
- Android实现非Activity与Activity数据传输
- Android Activity间数据传输
- Android Activity间数据传输
- android Activity和Fragment之间的数据传输的实现
- android学习:两个Activity之间的数据传输
- Android中activity到fragment的数据传输
- Activity间数据传输
- activity之间的数据传输
- Activity之间的数据传输
- Android1--Activity之间数据传输
- Activity之间数据传输
- Android如何在非Activity类中实现Vibrate效果
- android activity非全屏、透明
- Android的设计与实现--Activity Manager
- Android五天乐(第二天)Activity跳转与数据传输,Fragment
- android实现:tap+activity
- android activity动画实现
- android 实现半透明Activity
- js在线预览pdf文件
- 总结过去眺望未来
- 分布式定时任务 -- elastic-job
- bzoj 2843(LCT)
- Android之启动界面之Splash总结
- Android实现非Activity与Activity数据传输
- git reset checkout
- meta 标签禁止缩放失效
- 移动端1px
- Android7.0 7.1 popupwindow showAsDropDown 显示异常解决办法
- 学习笔记1:php中单双引号对字符串数据输出的影响
- 餐饮大数据-hive的JDBC操作
- 【系统学习SpringBoot】再遇Spring Data JPA之JPA应用详解(自定义查询及复杂查询)
- 一款比Visio更易用的国产图形图表设计软件