获取其他Activity中开启的线程
来源:互联网 发布:linux 文件服务器 编辑:程序博客网 时间:2024/06/15 22:01
在MainActivity中开启了一个线程,用来连接蓝牙
connectThread = new ConnectThread(selectedDevice, mBluetoothAdapter);connectThread.start();
此线程开启后会获得一个已经连接蓝牙设备的BluetoothSocket
public void run(){ // 连接前先停止搜索,否则会影响连接速度 mmAdapter.cancelDiscovery(); // connect是一个阻塞式方法 try { mmSocket.connect(); } catch (IOException e) { Log.d(TAG, "run: 连接失败"); // 连接失败时要关闭socket try { mmSocket.close(); } catch (IOException e1) { e1.printStackTrace(); } return; } Log.d(TAG, mmSocket.isConnected()?"连接成功":"连接失败"); manageConnectedSocket(mmSocket);}
另一个TransActivity需要这个BluetoothSocket,只能通过MainActivity中开启的线程来获取
首先要在该线程类中提供一个方法
/** * 对外提供Socket * @return */public BluetoothSocket getSocket() { Log.d(TAG, "getSocket: "+mmSocket==null?"socket为空":"socket不为空"); return mmSocket;}
那么在其他Activity中怎么获取MainActivity中的线程呢?
首先声明一个instance变量,然后再onCreate方法中赋予MainActivity实例
public static MainActivity instance;@Overrideprotected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); instance=this;
在另一个Activity中获取该实例,进而获取到已经开启的线程
MainActivity activity=MainActivity.instance;connectThread=activity.getConnectThread(); // 不开启新的线程,而是从原有线程获取SocketmSocket = connectThread.getSocket();
当然,不要忘了在MainActivity中提供获取这个已经开启的线程的方法
public ConnectThread getConnectThread(){ return connectThread;}
阅读全文
0 0
- 获取其他Activity中开启的线程
- 在某个activity的onresume中获取其他activity传递的参数
- Activity中控制线程和防止线程重复开启的解决办法
- 在Activity中开启一个线程执行网络操作出现的问题
- .net C# 中 thread 开启线程之后获取当前线程的信息
- 在Activity中开启新线程注意问题
- 获取其他线程的光标句柄[DELPHI]
- 获取其他线程的光标句柄[DELPHI]
- 获取新开启的activity的返回值给开启他的activity
- 在一个组件中调用其他组件的内容||android中怎样在activity中获取fragment中的控件
- 广播中开启Activity
- Activity中启动其他包里的Activity摘要
- Activity中启动其他包里的Activity摘要
- 《如何在一个Activity的一部分中显示其他Activity》
- Android 在一个Activity的一部分中显示其他Activity
- 开启新的activity获取他的返回值
- 开启新的activity获取它的返回值
- Android开启新的activity并获取返回的结果
- 编译安装及运行单目ORBSLAM2在Ubuntu14.04
- 驱动的基础
- 苹果内购demo
- Ajax实现提交多个参数
- 解决Fragment使用Toolbar后菜单不加载的问题
- 获取其他Activity中开启的线程
- 最优乘车 SSL-1194(广搜例题)
- 英文科技论文各部分的时态和语态
- c写php扩展之编译php源码,创建扩展模块,编写扩展demo
- ORACLE日期时间函数大全
- swagger环境的搭建(swagger-editor|swagger-ui)
- 数据库总结2
- JS中冒泡排序
- YOLO配置文件理解以及解析过程