Tag: 蓝牙

在android中连接蓝牙SPP的问题?

public class TestConnection extends Activity { /** Called when the activity is first created. */ public static final UUID BluetoothSerialUuid = UUID.fromString(“00001101-0000-1000-8000-00805F9B34FB”); private BluetoothAdapter _adapter; BluetoothSocket socket=null; @Override protected void onPause() { try { socket.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } }; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); […]

如何启动蓝牙配对过程?

我的PC和数据库上有一个Java应用程序。在DB中有一些MAC和PIN数据。 我正在发送消息(现在它的文本文件通过OBEX put方法,但将来它将是SMS消息,我希望:)),所以当我发现一些设备,然后发现所需的服务我正在寻找数据库,如果数据库中的手机MAC我需要使用预定义的PIN开始配对。 我编写了所有的过程,除了PAIRING …如何初始化它?

如何在这段代码中实现OnItemClickListener?

我想在这个ListView中实现OnItemClickListener,但是当我为此添加代码时,即使没有错误,我的应用也无法工作。 单击Listview项时,它会自动关闭。 请帮帮我,我是Android的初学者。 我在这里添加我的整个代码。 我正在做一个蓝牙设备连接代码。 MainActivity.java import java.util.ArrayList; import java.util.Set; import android.content.BroadcastReceiver; import android.content.Context; import android.content.DialogInterface; import android.content.Intent; import android.content.IntentFilter; import android.graphics.Color; import android.os.Bundle; import android.view.View; import android.app.Activity; import android.app.ProgressDialog; import android.widget.Button; import android.widget.TextView; import android.widget.Toast; import android.bluetooth.BluetoothAdapter; import android.bluetooth.BluetoothDevice; public class MainActivity extends Activity { private TextView mStatusTv; private Button mActivateBtn; private Button mPairedBtn; […]

在Android中的蓝牙连接期间,不会创建连接(失败或中止)exception

我正在开发一个项目,它使用一个在4.1.2上运行的安卓平板电脑(iball 3G 7271),由MTK处理器和一个RN42蓝牙(PCB上的芯片)组成。这两个模块相互通信以进行传输他们之间的数据通过蓝牙。 我正面临着一些问题。在某些情况下,我反复得到exception,说明“连接未创建(失败或中止)”。我已经找到了如下所述的实例: 我从BlueTerm应用程序(来自playstore)复制了相关代码并制作了一个示例应用程序来测试BT连接.Blueterm是一个测试设备和RN42之间蓝牙连接的应用程序。 1)我将应用程序连接/断开连接到RN42,发现它一直在工作。正在进行正确的连接和断开连接。 2)I模拟电源故障(仅通过关闭RN42模块),然后断开并重新连接app和RN42之间的BT连接,发现平板电脑与RN42重新连接没有太多问题。 3) 重新安装应用程序和BT连接到RN42之间的链接 测试案例1:在重新安装之前,应用程序与RN42断开连接; 结果 – 重新安装后BT重新连接到重新安装的应用程序中的RN42工作正常。 测试案例2:在重新安装之前,应用程序处于连接状态到RN42;结果 – 重新安装后BT重新连接到RN42没有发生。 我追溯到测试案例2的exception是: W/System.err(4603): java.io.IOException: [JSR82] connect: Connection is not created (failed or aborted). W/System.err(4603): at android.bluetooth.BluetoothSocket.connect(BluetoothSocket.java:395) 这是我几天前一次又一次地得到的例外。所以现在我知道什么时候可以抛出这个exception。 注意:对于’测试用例2’,这里甚至卸载并重新安装应用程序然后尝试将应用程序连接到RN42也无法正常工作。我们需要重新启动平板电脑以使应用程序再次连接到BT。此外,我甚至尝试过连接真正的BlueTerm应用程序(在测试用例2中),但它也没有连接。所以我尝试关闭并打开平板电脑的BT.I观察到通过关闭然后打开BT然后尝试建立BT平板电脑和RN42之间的连接正在发生。但是现在,我没有从RN42到平板电脑获得任何输入信号,但是能够将数据从平板电脑发送到RN42。 在三星S2 / grand / nexus设备上进行测试:对于上述测试用例2,在重新安装后,应用程序确实连接到BT,即使在重新安装之前已经/未通过BT连接到RN42。 以下是我的应用程序的代码和日志猫exception: BlueTerm.java @SuppressLint(“HandlerLeak”) public class BlueTerm extends Activity { BluetoothSocket Socket; OutputStream DataOut; InputStream DataIn; // Intent […]

Android线程池管理多个蓝牙handeling线程?

所以我有我的Android蓝牙应用程序,它有主机和客户端。 问题是,因为我正在进行多个连接,所以我需要一个线程来处理每个连接。 这都是milk’n’cookies,所以我想我会把所有线程都放在一个数组中。 一个小小的研究表明,更好的方法是使用线程池,但我似乎无法理解其工作原理。 此外,它实际上甚至可以在一个数组中保存线程吗?

Android蓝牙java.io.IOException:bt socket关闭,读取返回:-1

我正在尝试编写一个代码,该代码仅连接到运行Android 5.0 KitKat的设备上的(仅用于)配对设备。 无论我尝试过多少东西,我仍然会遇到这个错误。 这是我尝试的最后一个代码,它似乎正在做我见过人们报告成功的一切。 谁能指出我做错了什么? java.io.IOException: bt socket closed, read return: -1 at android.bluetooth.BluetoothSocket.read(BluetoothSocket.java:517) at android.bluetooth.BluetoothInputStream.read(BluetoothInputStream.java:96) at java.io.InputStream.read(InputStream.java:162) at biometricreader.BluetoothReaderService$ConnectedThread.run(BluetoothReaderService.java:415) 我的java代码是 /** * This class does all the work for setting up and managing Bluetooth * connections with other devices. It has a thread that listens for * incoming connections, a thread for connecting […]

尝试将BeaconParser添加到AltBeacon lib时出现exception

我一直试图从AltBeacon修改参考应用程序以检测iBeacons。 在RangingActivity中,我取代了 @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_ranging); beaconManager.bind(this); } 同 @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_ranging); BeaconParser bp = new BeaconParser(); bp.setBeaconLayout(“m:0-3=4c000215,i:4-19,i:20-21,i:22-23,p:24-24”); List lbp = beaconManager.getBeaconParsers(); lbp.add(bp); beaconManager.bind(this); } 为了应用修改来检测我在这里找到的iBeacon。 但是这会抛出,因为lbp是java.util.Collections $ UnmodifiableRandomAccessList。 我是Java的新手,但我想这是一个我无法添加项目的列表,并且在第二个链接和现在的解决方案之间的库中必须更改某些内容。 有人知道添加新BeaconParser的正确方法是什么,或者我在这里做错了什么?

UUID蓝牙和Android设备

我正在尝试开发一个连接两个设备的Android设备的应用程序,但问题是我只能连接(使用蓝牙)PC蓝牙或设备与Android之外的其他操作系统。 我认为问题是UUID,现在我正在使用BluetoothCommandService.java : private static final UUID MY_UUID = UUID.fromString(“00001101-0000-1000-8000-00805f9b34fb”); 然后: private class ConnectThread extends Thread { private final BluetoothSocket mmSocket; private final BluetoothDevice mmDevice; public ConnectThread(BluetoothDevice device) { mmDevice = device; BluetoothSocket tmp = null; // Get a BluetoothSocket for a connection with the // given BluetoothDevice try { tmp = device.createRfcommSocketToServiceRecord(MY_UUID); } catch […]

如何通过蓝牙查询远程手机是否支持PBAP?

假设两部Android手机通过蓝牙配对并建立连接。 如何在客户端以编程方式确定远程设备(服务器)是否支持PBAP等蓝牙配置文件? 如果它支持它,那么如何以编程方式启动与远程设备的PBAP会话? 我已广泛搜索网络,到目前为止一直无法找到相同的API支持和文档。 因此,非常感谢任何帮助或指导。 编辑:获取远程设备的UUID会在这里有用吗? 如果是,我怎么知道它是否支持PBAP? 更新:我设法使用以下方法连接到远程设备: mBluetoothSocket = mBluetoothDevice.createRfcommSocketToServiceRecord(applicationUUID); btAdapter.cancelDiscovery(); mBluetoothSocket.connect(); 哪里 private UUID applicationUUID = UUID.fromString(“0000111E-0000-1000-8000-00805F9B34FB”); 适用于免提配置文件模式。 是否有任何这样的固定UUID用于通过PBAP模式连接? UPDATE-2 :现在我可以使用UUID 0000112F与远程设备配对,UUID 0000112F是PSE访问的UUID。 建立连接后,我在远程设备上收到一条消息,询问我是否允许远程设备访问呼叫日志和联系人。 我点击是。

Android – 通过蓝牙传递对象

Android的蓝牙聊天示例对于学习如何在手机之间传递字符串非常有用 – 是否可以使用相同的代码在手机之间传递对象? 我在两部手机中定义了相同的类,我只想将一个类的实例从一个手机传递到另一个手机。 有可用的示例代码吗? 我尝试使用序列化并在chatoutputstream和objectinputstream的聊天示例中替换outputstream和inputstream,但它似乎不起作用