
我正在尝试通过蓝牙连接两个设备.我已经能够做到,但是当连接启动时, *** 作系统要求我提供配对代码.
我想要做的是以编程方式提供该代码.有没有办法连接这些设备并发送配对代码而不要求用户插入它?
注意:我确实有配对代码,我只是不希望用户插入它,而应用程序将从保存的地方获取它并使用它.
注意2:必须使用配对码.因此,使用createInsecureRfcommSocketToServiceRecord()或不使用配对代码的类似连接不是一种选择.
解决方法:
通过反射调用隐藏的方法“setPin(byte [])”是解决方案.我共享代码.
private voID PairDevice(BluetoothDevice pDevice, String pin){ try { Log.d("pairDevice()", "Start Pairing..."); Method pairMethod = pDevice.getClass().getmethod("setPin", byte[].class); Boolean lReturn = (Boolean) pairMethod.invoke(pDevice, pin.getBytes("UTF8")); if(lReturn.booleanValue()) { Log.d("pairDevice()", "Pairing Finished..."); Method bondMethod = pDevice.getClass().getmethod("createBond"); bondMethod.invoke(pDevice); } } catch(Exception ex) { Log.e("pairDevice()", ex.getMessage()); }} 此外,这个答案有更多细节. Android bluetooth setpin function
总结以上是内存溢出为你收集整理的如何通过蓝牙连接两个设备按参数发送配对代码? JAVA,Android的全部内容,希望文章能够帮你解决如何通过蓝牙连接两个设备按参数发送配对代码? JAVA,Android的所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)