我正在第一次使用蓝牙。我得到了配对设备的列表。现在我的要求是我需要发送一些数据(字符串)到设备。我怎样才能做到这一点?我试图搜索,但没有发现任何有用的东西。任何人都可以帮忙吗?如何将数据(字符串)发送到Android中的配对设备?
1
A
回答
1
像这样的东西可能就足够了:
DataOutputStream os;
BluetoothAdapter bluetooth = BluetoothAdapter.getDefaultAdapter();
BroadcastReceiver discoveryResult = new BroadcastReceiver() {
public void onReceive(Context context, Intent intent) {
String remoteDeviceName = intent.getStringExtra(BluetoothDevice.EXTRA_NAME);
BluetoothDevice remoteDevice;
remoteDevice = intent.getParcelableExtra(BluetoothDevice.EXTRA_DEVICE);
Toast.makeText(getApplicationContext(), "Discovered: " + remoteDeviceName + " address " + remoteDevice.getAddress(), Toast.LENGTH_SHORT).show();
try{
BluetoothDevice device = bluetooth.getRemoteDevice(remoteDevice.getAddress());
Method m = device.getClass().getMethod("createRfcommSocket", new Class[] {int.class});
BluetoothSocket clientSocket = (BluetoothSocket) m.invoke(device, 1);
clientSocket.connect();
os = new DataOutputStream(clientSocket.getOutputStream());
new clientSock().start();
} catch (Exception e) {
e.printStackTrace();
Log.e("BLUETOOTH", e.getMessage());
}
}
};
registerReceiver(discoveryResult, new IntentFilter(BluetoothDevice.ACTION_FOUND));
bluetooth.enable();
if (!bluetooth.isDiscovering()) {
bluetooth.startDiscovery();
}
public class clientSock extends Thread {
public void run() {
try {
os.writeBytes("anything you want"); // anything you want
os.flush();
} catch (Exception e1) {
e1.printStackTrace();
return;
}
}
}
您还需要大量进口,如这些的:
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.lang.reflect.Method;
import java.net.ServerSocket;
import java.net.Socket;
import java.net.UnknownHostException;
import java.util.List;
import java.util.UUID;
import android.os.Bundle;
import android.os.StrictMode;
import android.app.Activity;
import android.bluetooth.BluetoothAdapter;
import android.bluetooth.BluetoothDevice;
import android.bluetooth.BluetoothSocket;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.util.Log;
import android.view.Menu;
import android.widget.Toast;
注意,并不是所有的进口是必要的这个例子的代码,你的IDE可能会帮助你为你排序。
在os.writeBytes("anything you want"); // anything you want
行上传递数据。
您还需要Permissions
0
Android开发人员网站提供了一些优秀的文档&示例代码来帮助您做到这一点。 http://developer.android.com/guide/topics/connectivity/bluetooth.html
希望有帮助!
相关问题
- 1. 从Android设备发送/获取字符串数据到Windows CE设备?
- 2. 如何将Android设备的原始数据发送到主机?
- 3. Android设备发送空数据到PHP
- 4. 发送字节串到串口设备
- 5. 如何将字符串数据发送到JavaScript?
- 6. 如何从Android设备发送字节数组到servlet
- 7. 如何将字符串发送到Android的PHP文件?
- 8. 如何从一个Android设备发送数据到另一个?
- 9. 如何通过NFC将文本字符串发送到其他设备?
- 10. 将数据从设备发送到设备
- 11. 将BLE设备连接到Android发送数据(nUART)
- 12. 将ZPL数据字符串发送到Ruby中的IP地址
- 13. 如何配置BlueMix将数据从设备A推送到设备B?
- 14. 如何从一个Android设备发送数据串到另一个?
- 15. Arduino设备发送的数据中缺少“NewLine”字符
- 16. Linux cdc_acm设备 - 发送到设备的意外字符
- 17. 如何将假短信发送到我的Android设备
- 18. 通过Java套接字将文件发送到Android设备时数据丢失
- 19. 如何将JSON字符串从arduino发送到android设备的响应方面,然后解码android应用程序中的字符串?
- 20. 如何将字符串值发送到mvc中的操作?
- 21. 如何将Lex匹配字符串的Yyleng发送给Yacc?
- 22. Android发送字符串到PHP
- 23. 如何将字符串参数从C#发送到PowerShell?
- 24. 如何发送字符串数据到java webservice?
- 25. 将字符发送到数据库时发生字符问题
- 26. 如何在Android中使用蓝牙和发送数据到其他设备
- 27. 如何从Android设备向Arduino adk发送数据
- 28. 如何将单字符ASCII数据发送到使用python的串行端口
- 29. 使用Ajax将字符串数据发送到Java
- 30. 从设备到设备推送数据?
谢谢,但是在哪里传递数据?以及如何服务器UUID? – ashokgujju 2014-08-30 00:35:01
更新后的答案,UUID实际上并不是我所需要的,但我认为它是旧的代码..大约一岁,所以我实际上并没有记住,你也必须为自己制定沟通的另一面。 – 19greg96 2014-08-30 01:02:33