通过前几次的讲解,很多网友相信对Android蓝牙相关开发可以很好的掌握了,通过BluetoothServerSocket可以方便的创建一个蓝牙服务器,使用BluetoothSocket类可以很好的处理连接,今天我们继续上次的内容说下Android下如何管理蓝牙套接字的连接,今天仍然使用BluetoothSocket类,处理具体的数据流。
在Java上处理数据流很简单,提供了InputSream、OutputSream和字节数组的之间的转化。今天android123将和大家一起说下处理上次遗留的manageConnectedSocket方法的细节,由于蓝牙传输中可能存在中断,所以为了防止阻塞需要开一个工作者线程,相关的示例代码
private class ConnectedThread extends Thread {
private final BluetoothSocket cwjSocket;
private final InputStream cwjInStream;
private final OutputStream cwjOutStream;
public ConnectedThread(BluetoothSocket socket) {
cwjSocket = socket;
InputStream tmpIn = null; //上面定义的为final这是使用temp临时对象
OutputStream tmpOut = null;
try {
tmpIn = socket.getInputStream(); //使用getInputStream作为一个流处理
tmpOut = socket.getOutputStream();
} catch (IOException e) { }
cwjInStream = tmpIn;
cwjOutStream = tmpOut;
}
public void run() {
byte[] buffer = new byte[1024];
int bytes;
while (true) {
try {
bytes = cwjInStream.read(buffer);
mHandler.obtainMessage(MESSAGE_READ, bytes, -1, buffer).sendToTarget(); //传递给UI线程
} catch (IOException e) {
break;
}
}
}
public void write(byte[] bytes) {
try {
cwjOutStream.write(bytes);
} catch (IOException e) { }
}
public void cancel() {
try {
cwjSocket.close();
} catch (IOException e) { }
}
}
对于具体的连接,我们看到在Android平台上使用了Java标准的输入、输出流操作,BluetoothSocket 提供的getInputStream()和getOutputStream()方法可以很好的处理我们具体的数据,完整的工程示例代码和总结我们将在下次提供给大家。
分享到:
相关推荐
总结来说,Android蓝牙API提供了一套全面的工具,使开发者能够构建各种类型的蓝牙应用,包括但不限于文件传输、健康监测设备的控制、游戏同步等。理解并熟练运用这些API,开发者可以充分利用蓝牙技术,实现设备间的...
**Android蓝牙API详解** 在Android平台上,蓝牙技术是设备间通信的重要途径,广泛应用于数据传输、设备配对、物联网(IoT)等场景。Android提供了丰富的蓝牙API,使得开发者能够轻松实现蓝牙功能,包括经典蓝牙...
深入研究源代码可以帮助我们理解Android蓝牙通信的底层工作原理,包括如何在操作系统层面建立和维护蓝牙连接,以及如何优化数据传输性能。这对于开发高效且可靠的蓝牙应用至关重要。同时,源代码可能包含了一些错误...
Android提供了一个名为BluetoothAdapter的类,它是Android蓝牙功能的主要入口点。通过这个类,我们可以检查蓝牙是否开启,扫描附近的蓝牙设备,并建立连接。当我们要监听蓝牙设备的状态变化时,就需要用到广播通信。...
Android 蓝牙 API 中的主要类有: * BluetoothAdapter 类:代表了一个本地的蓝牙适配器。 * BluetoothDevice 类:代表了一个远端的蓝牙设备。 * BluetoothSocket 类:代表了一个蓝牙套接字的接口。 * ...
首先,理解Android蓝牙API是基础。Android提供了BluetoothAdapter类,它是系统蓝牙服务的主要接口,用于查找、配对和管理蓝牙设备。开发者需要通过BluetoothAdapter.getDefaultAdapter()获取系统的默认蓝牙适配器,...
2. **Android蓝牙API**: - Android提供了`BluetoothAdapter`类来管理蓝牙适配器,用于检测蓝牙是否开启、查找设备等。 - `BluetoothDevice`类代表一个蓝牙设备,用于获取设备信息、建立连接等操作。 - `...
"android蓝牙聊天源代码"项目提供了一个很好的实例,帮助开发者了解如何在Android应用程序中实现蓝牙聊天功能。以下将详细介绍这个项目的相关知识点: 1. **Android Bluetooth API**: Android提供了`...
首先,我们需要理解蓝牙技术的基本概念,然后我们将详细讨论Android蓝牙开发客户端的实现步骤。 蓝牙是一种短距离无线通信技术,允许电子设备之间进行数据交换。在Android中,蓝牙功能主要通过`BluetoothAdapter`、...
Android蓝牙API主要由`BluetoothAdapter`、`BluetoothDevice`、`BluetoothSocket`和`BluetoothServerSocket`等类组成。`BluetoothAdapter`是系统蓝牙功能的主要入口,可以用来发现设备、配对和管理蓝牙连接。`...
"android蓝牙间传输demo"是一个示例项目,它展示了如何在Android设备之间通过蓝牙进行数据交换。这个项目的重点在于理解和实现Android Bluetooth API,这将涵盖蓝牙的配对、连接、数据发送与接收等关键步骤。 首先...
首先,我们要了解Android中的蓝牙API。Android提供了`BluetoothAdapter`,`BluetoothDevice`,`BluetoothServerSocket`和`BluetoothSocket`等类来处理蓝牙连接。`BluetoothAdapter`是系统的蓝牙适配器,可以用来开启...
本项目"Android蓝牙,配对,搜索,连接,通信,断开的Demo"是一个使用Kotlin编写的Android应用示例,它涵盖了蓝牙功能的基本操作,包括设备的搜索、配对、取消配对、连接、数据传输以及断开连接等核心环节。...
1. **Android蓝牙API**: Android提供了BluetoothAdapter类来管理设备的蓝牙功能,包括开启/关闭蓝牙、查找附近的蓝牙设备、建立连接等。BluetoothGatt类则用于与蓝牙低功耗(BLE)设备交互,但这里提到的是蓝牙2.0...
理解蓝牙通信的基本概念、Android蓝牙API的使用,以及串口参数设置的重要性,对于有效利用这款工具至关重要。在实际操作中,结合这些知识点,开发者可以更好地理解和解决蓝牙通信中遇到的各种问题。
1. **Android 蓝牙API**:Android提供了丰富的Bluetooth API,包括`BluetoothAdapter`、`BluetoothDevice`、`BluetoothSocket`和`BluetoothServerSocket`等类,用于设备搜索、连接、数据传输和管理。开发者需要先...
在Android平台上,蓝牙技术是一种广泛使用的短距离无线通信方式,用于设备间的文件传输、数据共享以及设备控制等。...同时,不断关注Android蓝牙API的更新,以便利用新特性提高应用的性能和用户体验。
在Eclipse环境中开发Android蓝牙应用,你需要导入Android SDK对应的蓝牙库,并遵循Android的生命周期管理,确保在适当的时候启动和停止蓝牙操作,避免资源泄漏和性能问题。 在"MyBluetooth"这个项目中,我们可以...
而`API.docx`应该详细介绍了所使用的Android蓝牙API,包括BluetoothAdapter、BluetoothDevice、BluetoothServerSocket、BluetoothSocket等类的使用方法和注意事项。 至于`Bluetooth`文件,可能是包含实际蓝牙通信...
1. **蓝牙API**:Android提供了`BluetoothAdapter`、`BluetoothDevice`、`BluetoothServerSocket`和`BluetoothSocket`等类来处理蓝牙连接和通信。这些类位于`android.bluetooth`包中,是进行蓝牙操作的基础。 2. **...