一种实现蓝牙设备与移动设备配对的方法及装置与流程

文档序号:11518337阅读:413来源:国知局
一种实现蓝牙设备与移动设备配对的方法及装置与流程

本发明涉及通信领域,尤其涉及一种实现蓝牙设备与移动设备配对的方法及装置。



背景技术:

目前,蓝牙技术已经升级到了蓝牙4.0版本,蓝牙4.0是蓝牙3.0+hs规范的补充,专门面向对成本和功耗都有较高要求的无线方案,可广泛用于卫生保健、体育健身、家庭娱乐、安全保障等诸多领域。基于蓝牙4.0的产品有很多,例如从最开始的耳机、音箱、手环、键盘、鼠标、游戏杆等小配件,到伴随智能设备(例如智能手机、平板电脑等)的发展出现的august蓝牙门锁、腾讯路宝汽车检测、小米平衡车遥控等应用场景,蓝牙技术在社会中的应用越来越普遍。

蓝牙设备大多是与智能手机、平板电脑等移动设备相连以满足人们对智能生活的要求;很大程度上,蓝牙技术掌握了移动设备与外间设备的入口,而很大一部分蓝牙设备与移动设备连接之前都需要进行pin码或者配对密码认证。

但是,现在市场上,移动设备生产厂商对移动设备与蓝牙设备的连接标准并不统一,用户用不同的移动设备连接蓝牙设备时,配对情况就会不同,用户使用不同移动设备时都需要重新适应移动设备与蓝牙设备连接时pin码的出现方式与输入方式,严重降低了用户体验。例如,在移动设备与蓝牙设备连接配对时,有的移动设备会在屏幕上直接弹框,用户可以直接输入,但是某些移动设备会提示配对消息,需要用户手动下滑去点击配对消息再进行pin码的输入,这样操作浪费时间,严重降低了用户体验;另外还有可能某些设备的pin码是固定不变的,如果需要用户每次都去输入同样的pin码,就会浪费用户的时间和精力,同样会降低了用户体验。



技术实现要素:

本发明的目的是为了克服现有技术的不足,提供一种实现蓝牙设备与移动设备配对的方法及装置。

本发明提供一种实现蓝牙设备与移动设备配对的方法,包括:

步骤101:通过在操作系统注册的过滤器监听系统程序广播的蓝牙配对请求;

步骤102:当通过过滤器监听到系统程序广播的蓝牙配对请求时,拦截系统程序广播的蓝牙配对请求;

步骤103:在操作系统界面弹出预设的pin码配对输入框,接收用户输入的pin码;

步骤104:根据用户输入的pin码将移动设备与目标蓝牙设备进行配对;

步骤105:获取移动设备与目标蓝牙设备进行配对的配对结果,根据获取的移动设备与目标蓝牙设备进行配对的配对结果判断移动设备与目标蓝牙设备是否成功配对,是则成功配对,否则未成功配对。

本发明还提供了一种实现蓝牙设备与移动设备配对的装置,所述装置包括:

监听模块,用于通过在操作系统注册的滤器监听系统程序广播的蓝牙配对请求;

拦截模块,用于当所述监听模块监听到所述系统程序广播的蓝牙配对请求时,拦截所述系统程序广播的蓝牙配对请求;

弹框模块,用于当所述拦截模块拦截到所述系统程序广播的蓝牙配对请求时,在操作系统界面弹出预设的pin码配对输入框;

接收模块,用于接收用户输入的pin码;

第一配对模块,用于根据所述接收模块接收到用户输入的pin码将移动设备与所述目标蓝牙设备进行配对;

第一获取模块,用于获取所述第一配对模块的配对结果;

第一判断模块,用于根据所述第一获取模块获取的所述配对结果判断移动设备与所述目标蓝牙设备是否成功配对,是则成功配对,否则未成功配对。

本发明与现有技术相比,具有以下优点:

本发明提供了一种实现蓝牙设备与移动设备配对的方法及装置,当监听到系统程序发起的蓝牙配对请求时,应用程序拦截蓝牙配对请求,阻止移动设备弹出pin码配对框,当应用程序未内置pin码时,弹出pin码配对输入框,获取并设置pin码,完成后续蓝牙配对过程;当应用程序内部设置pin码时,则无需用户手动输入,直接完成蓝牙配对过程,节省了用户的时间和精力,为蓝牙设备与移动设备的连接提供了更好的用户体验。

附图说明

图1为本发明实施例一提供的一种实现蓝牙设备与移动设备配对的方法流程图;

图2为本发明实施例二提供的一种实现蓝牙设备与移动设备配对的方法流程图;

图3为本发明实施例三提供的一种实现蓝牙设备与移动设备配对的装置的模块组成框图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

实施例一

如图1所示,本实施例一提供了一种实现蓝牙设备与移动设备配对的方法,其特征在于,方法包括:

步骤101:通过在操作系统注册的过滤器监听系统程序广播的蓝牙配对请求;

进一步地,步骤101之前还包括步骤a:添加蓝牙配对请求事件,注册蓝牙配对请求事件过滤器;

更进一步地,步骤a具体为:利用intentfilter类addaction方法添加蓝牙配对请求事件,利用registerreceiver方法注册蓝牙配对请求事件过滤器。

进一步地,步骤101之前还包括步骤b:当收到用户从目标蓝牙设备列表中选择的目标蓝牙设备的信息时,判断移动设备是否已经与用户选择的目标蓝牙设备的信息对应的目标蓝牙设备成功配对,是则成功配对,否则执行步骤101;

更进一步地,步骤b之前还包括:调用postdelayed()函数设置扫描蓝牙设备的时间,利用bluetoothadapter的startlescan方法扫描移动设备周围有效范围内的蓝牙设备,当扫描时间到达设置的扫描蓝牙设备的时间时,获得目标蓝牙设备列表。

步骤102:当通过过滤器监听到系统程序广播的蓝牙配对请求时,拦截系统程序广播的蓝牙配对请求;

进一步地,步骤102具体为:当通过过滤器监听到系统程序广播的蓝牙配对请求时,利用broadcastreceiver类的onreceive方法和调用abortbroadcast()函数接口拦截系统程序广播的蓝牙配对请求。

进一步地,步骤102与步骤103之间包括:判断是否需要用户输入目标蓝牙设备的pin码,是则执行步骤103,否则根据内置的目标蓝牙设备的pin码将移动设备与目标蓝牙设备进行配对,执行步骤105;

更进一步地,当判定不需要用户输入目标蓝牙设备的pin码时,在步骤105中判定未成功配对之后还包括:删除内置的目标蓝牙设备的pin码;

更进一步地,当判定不需要用户输入目标蓝牙设备的pin码时,在步骤105中判定未成功配对之后还包括:弹出pin码配对输入框,获取用户通过pin码配对输入框输入的目标蓝牙设备的pin码,将移动设备与目标蓝牙设备进行pin码配对,判断移动设备与目标蓝牙设备是否成功配对,当移动设备与目标蓝牙设备成功配对时,将获取到的目标蓝牙设备的pin码替换内置的目标蓝牙设备的pin码,当移动设备与目标蓝牙设备未成功配对时,删除内置的目标蓝牙设备的pin码。

进一步地,步骤102与步骤103之间包括:判断是否存在内置pin码,当判定存在内置pin码时,根据内置pin码将移动设备与目标蓝牙设备进行配对,判断移动设备与目标蓝牙设备是否成功配对,是则成功配对,否则未成功配对,删除内置pin码,当判定不存在内置pin码时,执行步骤103;

更进一步地,当判定存在内置pin码且判定移动设备与目标蓝牙设备未成功配对时,还包括:弹出pin码配对输入框,获取用户在pin码配对输入框输入的目标蓝牙设备的pin码,将移动设备与目标蓝牙设备进行pin码配对,当移动设备与目标蓝牙设备成功配对时,将获取到的目标蓝牙设备的pin码替换内置pin码;

更进一步地,当判定存在内置pin码且判定移动设备与目标蓝牙设备未成功配对时,还包括:

步骤c1:设置错误次数阀值,设置初始操作次数;

步骤c2:弹出pin码配对输入框,获取用户通过pin码配对输入框输入的目标蓝牙设备的pin码,将移动设备与目标蓝牙设备进行pin码配对,判断移动设备与目标蓝牙设备是否成功配对,当移动设备与目标蓝牙设备未成功配对时,更新操作次数,并判断操作次数是否大于错误次数阀值,是则报错,否则返回步骤c2。

步骤103:在操作系统界面弹出预设的pin码配对输入框,接收用户输入的pin码;

进一步地,步骤103具体为:在操作系统界面根据预设的pin码配对输入框的长度、宽度和左上角坐标位置弹出预设的pin码配对输入框,接收用户输入的pin码;

进一步地,步骤103具体为:利用inputpin方法在操作系统界面弹出预设的pin码配对输入框,接收用户输入的pin码。

步骤104:根据用户输入的pin码将移动设备与目标蓝牙设备进行配对;

进一步地,步骤104具体为:利用clsutils类的setpin方法根据用户输入的pin码将移动设备与目标蓝牙设备进行配对。

步骤105:获取移动设备与目标蓝牙设备进行配对的配对结果,根据获取的移动设备与目标蓝牙设备进行配对的配对结果判断移动设备与目标蓝牙设备是否成功配对,是则成功配对,否则未成功配对;

进一步地,步骤105中,判断移动设备与目标蓝牙设备是否成功配对具体为:根据bluetoothdevice类的getbondstate方法判断移动设备与目标蓝牙设备是否成功配对;

进一步地,步骤105中当判定移动设备与目标蓝牙设备成功配对之后,还包括:将获取到的目标蓝牙设备的pin码设置为内置pin码;

进一步地,步骤105中当判定移动设备与目标蓝牙设备未成功配对之后,还包括:

步骤d1:设置错误次数阀值,设置初始操作次数;

步骤d2:弹出pin码配对输入框,获取用户通过pin码配对输入框输入的目标蓝牙设备的pin码,将移动设备与目标蓝牙设备进行pin码配对,判断移动设备与目标蓝牙设备是否成功配对,当移动设备与目标蓝牙设备未成功配对时,更新操作次数,判断操作次数是否大于错误次数阀值,是则报错,否则返回步骤d2;

进一步地,步骤105中还包括:当判定成功配对时则显示配对成功信息,当判定未成功配对时则显示配对失败信息。

本发明提供了一种实现蓝牙设备与移动设备配对的方法及装置,当监听到系统程序发起的蓝牙配对请求时,应用程序拦截蓝牙配对请求,阻止移动设备弹出pin码配对框,当应用程序未内置pin码时,弹出pin码配对输入框,获取并设置pin码,完成后续蓝牙配对过程;当应用程序内部设置pin码时,则无需用户手动输入,直接完成蓝牙配对过程,节省了用户的时间和精力,为蓝牙设备与移动设备的连接提供了更好的用户体验。

实施例二

如图2所示,本实施例二提供了一种实现蓝牙设备与移动设备配对的方法,包括以下步骤:

本实施例中,移动设备包括系统程序和应用程序;

步骤201:应用程序利用clsutils类的createbond方法向目标蓝牙设备发起初始蓝牙配对请求;

具体地,应用程序利用bluetoothdevice类的getclass方法获得目标蓝牙设备的类别,利用clsutils类的createbond方法向目标蓝牙设备发起初始蓝牙配对请求;

可选地,在步骤201之前,还包括以下步骤:

步骤a1:应用程序调用postdelayed()函数设置扫描蓝牙设备的时间;

步骤a2:应用程序扫描周围有效范围内的蓝牙设备,当扫描时间到达设置的扫描蓝牙设备的时间时,获得目标蓝牙设备列表;

具体地,应用程序利用bluetoothadapter的startlescan方法扫描周围有效范围内的蓝牙设备,当扫描时间到达设置的扫描蓝牙设备的时间时,根据第一筛选条件获取第一目标蓝牙设备列表;

本实施例中,第一筛选条件为:蓝牙基本信息中的一种和/或多种和/或用户自定义的筛选条件中的一种和/或多种;

其中,蓝牙基本信息包括:蓝牙设备对象(device)、蓝牙设备mac地址、蓝牙设备名称、扫描记录(scanrecord)和接收的信号强度指示(rssi)等;其中,部分蓝牙设备还可以获取到其蓝牙设备版本号,此时,蓝牙设备的基本信息中还包括蓝牙设备版本号;用户自定义的筛选条件包括:自定义字样;

本实施例中,应用程序根据第一筛选条件获取目标蓝牙设备列表具体为:应用程序利用lescancallback函数根据第一筛选条件获取目标蓝牙设备列表;

当第一筛选条件包括第一筛选子条件和第二筛选子条件时,步骤a2具体包括以下子步骤:

步骤b1:应用程序利用bluetoothadapter的startlescan方法扫描周围有效范围内的蓝牙设备,获得第一目标蓝牙设备列表;

步骤b2:应用程序将扫描到的第一蓝牙设备列表的第n个蓝牙设备作为当前蓝牙设备;

步骤b3:应用程序判断当前蓝牙设备是否符合第一筛选子条件,是则执行步骤b4,否则执行步骤b7;

步骤b4:应用程序判断符合第一筛选子条件的当前蓝牙设备是否符合第二筛选子条件,是则执行步骤b5,否则到步骤b7;

步骤b5:应用程序将扫描到符合第二筛选子条件的当前蓝牙设备添加到第二目标蓝牙设备列表;

步骤b6:应用程序刷新用户界面,显示刷新过的第二目标蓝牙设备列表;

步骤b7:应用程序将扫描到的第一目标蓝牙设备列表的第n+1或者n-1个蓝牙设备作为当前蓝牙设备,返回步骤b2;其中,n为大于0的整数;

当到达设置的扫描时间时,刷新过的第二目标蓝牙设备列表即为目标蓝牙设备列表;

例如,本实施例中,第一筛选子条件可以是蓝牙设备名称,第二筛选子条件包含“u2f”字样;

在上述步骤中,蓝牙设备基本信息可以为:蓝牙设备对象(device)、蓝牙设备mac地址、蓝牙设备名称、扫描记录(scanrecord)和接收的信号强度指示(rssi)等;用户还可以自定义一些筛选条件;

其中,部分蓝牙设备还可以获取到其蓝牙设备版本号,此时,蓝牙设备的基本信息中还包括蓝牙设备版本号;

本实施例中,应用程序可扫描的有效范围根据蓝牙核心规范版本的不同而不同,其中,蓝牙4.0核心规范标准的有效扫描范围为100米;此外,相同版本的蓝牙核心规范,根据不同的应用领域,有效范围也有所不同;

具体地,本实施例中,在应用程序开始扫描周围有效范围内的蓝牙设备之后,获得目标蓝牙设备列表之前,还包括:应用程序调用bluetoothadapter类的stoplescan方法终止扫描;

步骤a3:当收到用户从目标蓝牙设备列表中选择目标蓝牙设备的信息时,应用程序判断移动设备是否已经与用户选择的目标蓝牙设备的信息对应的目标蓝牙设备成功配对,是则成功配对,否则未成功配对,执行步骤201;

具体地,当收到用户从目标蓝牙设备列表中选择目标蓝牙设备的信息时,应用程序根据利用bluetoothdevice类getbondstate的方法的返回值判断移动设备是否已经与用户选择的目标蓝牙设备成功配对,当返回值为成功绑定时,则成功配对,否则未成功配对,执行步骤201;

本实施例中,在本步骤之前,应用程序可以预设目标蓝牙设备列表的第一个蓝牙设备为目标蓝牙设备;此时,步骤a3可以替换为:

应用程序判断移动设备是否已经与预设的目标蓝牙设备成功配对,是则成功配对,否则未成功配对,执行步骤201;

步骤202:应用程序添加蓝牙配对请求事件,注册蓝牙配对请求事件过滤器,监听系统程序广播的蓝牙配对请求,当监听到系统程序广播的蓝牙配对请求时,应用程序利用broadcastreceiver类的onreceive方法和调用abortbroadcast()函数接口拦截系统程序广播的蓝牙配对请求,阻止系统程序弹出第一pin码配对输入框;

具体地,应用程序添加蓝牙配对请求事件,注册蓝牙配对请求事件过滤器为:应用程序利用intentfilter类addaction方法添加蓝牙配对请求事件,利用registerreceiver方法注册蓝牙配对请求事件过滤器;

其中,蓝牙配对请求事件具体为:

android.bluetooth.device.action.pairing_request;

具体地,本实施例中,应用程序在添加了蓝牙配对请求事件的事件过滤器中注册广播接收者;其中,广播接收者用来监听系统程序广播的蓝牙配对请求;

步骤203:应用程序判断是否需要用户输入pin码,是则执行步骤204,否则执行步骤207;

优选地,本实施例中,应用程序根据目标蓝牙设备的uuid特性判断是否需要用户输入pin码,是则执行步骤204,执行步骤207;本实施例中,目标蓝牙设备的uuid特性只是应用程序判断是否需要用户输入pin码的一种根据,本实施例中还可以预先设置其他条件用来判断否需要用户输入pin码;

步骤204:应用程序利用inputpin方法根据预设的第二pin码配对输入框弹出pin码第二配对输入框;

具体地,应用程序预设第二pin码配对输入框左上角坐标位置及第二pin码配对输入框的长和宽,根据预设的第二pin码配对输入框弹框左上角坐标位置及第二pin码配对输入框的长度和宽度利用inputpin方法中的alertdialog.builder类的settitle方法、setview方法和setpositivebutton方法分别设置第二pin码配对输入框的标题,显示的内容和按键显示内容以及点击按键要触发动作;

优选地,pin码配对输入框显示内容为“请输入pin码”、接收用户输入pin码的pin码配对输入框、“确认”和“取消”;

本实施例中,应用程序预先设置第二pin码配对输入框弹框的标准;

步骤205:应用程序等待用户输入pin码,判断是否接收到用户输入的pin码,是则执行步骤206,否则报错;

进一步地,在应用程序等待用户输入pin码之前,还包括:应用程序设置等待用户输入pin码的时间,例如60秒;在设置等待用户输入pin码的时间内接收到用户输入的pin码,应用程序执行步骤206,否则报错;

可选地,本实施中,除了用户手动输入目标蓝牙设备pin码外,应用程序获取目标蓝牙设备pin码的方式还包括以下方式:

1>应用程序通过扫描目标蓝牙设备外壳上显示的存储pin码的二维码来获取目标蓝牙设备pin码;

此时,蓝牙设备外壳上显示存储pin码的二维码;

2>应用程序通过扫描目标蓝牙设备外壳上显示存储pin码的条形码来获取目标蓝牙设备pin码;

此时,蓝牙设备外壳上显示存储pin码的条形码;

本实施例中,获取pin码的方式根据蓝牙设备显示pin码方式的不同而不同;

步骤206:应用程序利用edittext类的gettext方法获取用户输入的pin码;

步骤207:应用程序利用clsutils类的setpin方法将移动设备与目标蓝牙设备进行pin码配对;

例如,当预设pin码是123456时,应用程序调用clsutils的setpin方法具体为:

clsutils.setpin(bledevice.getclass(),bledevice,“123456”);

在上述程序中,bledevice为需要配对目标蓝牙设备;

步骤208:应用程序根据bluetoothdevice类的getbondstate方法判断移动设备与目标蓝牙设备是否成功配对,是则显示配对成功信息,否则显示配对失败信息;

进一步地,本实施例中,应用程序根据getbondstate方法所得的返回值判断移动设备与目标蓝牙设备是否成功配对,当返回值等于已绑定时,移动设备与目标蓝牙设备成功配对,显示配对成功信息,当返回值等于未绑定时,移动设备与目标蓝牙设备未成功配对,显示配对失败信息;

进一步地,本实施例中,应用程序设置错误次数阀值,步骤203判断为是且步骤208判断为否时还包括:应用程序更新操作次数,并判断操作次数是否大于错误次数阀值,是则报错,否则提示用户重新输入,返回步骤205;

进一步地,本实施例中,步骤203判断为否且步骤208判断为否时还包括:应用程序设置错误次数阀值,当移动设备与目标蓝牙设备成功配对时,显示配对成功信息,当移动设备与目标蓝牙设备未成功配对时,弹出第三pin码配对输入框,获取用户输入的pin码,将移动设备与目标蓝牙设备进行pin码配对,判断移动设备与目标蓝牙设备是否成功配对,当移动设备与目标蓝牙设备未成功配对时,更新操作次数,并判断操作次数是否大于错误次数阀值,是则报错,否则提示用户重新输入;

本实施例中,步骤203可以替换为步骤203-1:应用程序判断是否内置pin码,是则执行步骤204,否则执行步骤207;

进一步地,本实施例中,步骤203-1判断为否且步骤208判断为否时还包括:应用程序设置错误次数阀值,更新操作次数,并判断操作次数是否大于错误次数阀值,是则报错,否则提示用户重新输入;

进一步地,本实施例中,步骤203-1判断为是且步骤208判断为否时还包括:应用程序设置错误次数阀值,当移动设备与目标蓝牙设备成功配对时,显示配对成功信息,当移动设备与目标蓝牙设备未成功配对时,弹出第三pin码配对输入框,获取用户输入的pin码,将移动设备与目标蓝牙设备进行pin码配对,判断移动设备与目标蓝牙设备是否成功配对,当移动设备与目标蓝牙设备未成功配对时,更新操作次数,并判断操作次数是否大于错误次数阀值,是则报错,否则提示用户重新输入;

本实施例中,当步骤203中判定需要用户输入pin码且步骤208判定移动设备与目标蓝牙设备成功配对时,步骤208之后还包括:将获取到的用户输入的pin码设置为内置pin码;

本实施例中,当步骤203中判定不需要用户输入pin码且步骤208判定移动设备与目标蓝牙设备未成功配对时,步骤208之后还包括:弹出第三pin码配对输入框,获取用户输入的pin码,将移动设备与目标蓝牙设备进行pin码配对,判断移动设备与目标蓝牙设备是否成功配对,当移动设备与目标蓝牙设备成功配对时,将获取到的用户输入的pin码设置替换内置的目标蓝牙设备的pin码。

本发明提供了一种实现蓝牙设备与移动设备配对的方法及装置,当监听到系统程序发起的蓝牙配对请求时,应用程序拦截蓝牙配对请求,阻止移动设备弹出pin码配对框,当应用程序没有内置pin码时,弹出pin码配对输入框,获取并设置pin码,完成后续蓝牙配对过程;当应用程序的内部设置pin码时,则无需用户手动输入,直接完成蓝牙配对过程,节省了用户的时间和精力,为蓝牙设备与移动设备的连接提供了更好的用户体验。

实施例三

如图3所示,本实施例三提供了一种实现蓝牙设备与移动设备配对的装置,包括:

监听模块301,用于通过在操作系统注册的滤器监听系统程序广播的蓝牙配对请求;

进一步地,本实施例中的装置,还包括:第一添加模块和注册模块;

第一添加模块,用于添加蓝牙配对请求事件;

注册模块,用于在添加模块添加蓝牙配对请求事件后,注册蓝牙配对请求事件过滤器;

更进一步地,本实施例中,

添加模块具体为:利用intentfilter类addaction方法添加蓝牙配对请求事件

注册模块具体为:利用registerreceiver方法注册蓝牙配对请求事件过滤器;

进一步地,本实施例中的装置,还包括:第二添加模块和第二判断模块;

接收模块304,用于接收用户从目标蓝牙设备列表中选择的目标蓝牙设备的信息;

第二判断模块,用于当接收模块304接收到目标蓝牙设备的信息时,判断移动设备是否已经与与用户选择的目标蓝牙设备的信息对应的目标蓝牙设备成功配对;

第二添加模块,还用于当第二判断模块判定成功配对时,添加蓝牙配对请求事件;

更进一步地,本实施例中的装置,还包括:第一设置模块、扫描模块和获得模块;

第一设置模块,用于调用postdelayed()函数设置扫描蓝牙设备的时间;

扫描模块,用于利用bluetoothadapter的startlescan方法扫描周围有效范围内的蓝牙设备;

获得模块,用于当扫描模块的扫描时间到达第一设置模块设置的扫描蓝牙设备的时间时,获得目标蓝牙设备列表。

拦截模块302,用于当监听模块301监听到系统程序广播的蓝牙配对请求时,拦截系统程序广播的蓝牙配对请求;

进一步地,本实施例中,

拦截模块302,具体用于当监听模块301通过蓝牙配对请求事件过滤器监听到系统程序广播的蓝牙配对请求时,利用broadcastreceiver类的onreceive方法和调用abortbroadcast()函数接口拦截系统程序广播的蓝牙配对请求;

进一步地,本实施例中的装置,还包括:第三判断模块和第二配对模块;

第三判断模块,用于判断是否需要用户输入目标蓝牙设备的pin码;

弹框模块303,还用于当第三判断模块判定需要用户输入目标蓝牙设备的pin码时,根据预设的pin码配对输入框弹出pin码配对输入框;

第二配对模块,用于当第三判断模块判定不需要用户输入目标蓝牙设备的pin码时,根据内置的目标蓝牙设备的pin码将移动设备与目标蓝牙设备进行配对;

第二获取模块,还用于获取移动设备与第二配对模块的配对结果;

第一判断模块307,还用于根据第二获取模块获取的配对结果判断移动设备与目标蓝牙设备是否成功配对,是则成功配对,否则未成功配对;

更进一步地,本实施例中的装置,还包括:第一删除模块;

第一删除模块,用于当第三判断模块判定不需要用户输入目标蓝牙设备的pin码且第一判断模块307判定与目标蓝牙设备未成功配对时,删除内置的目标蓝牙设备的pin码;

更进一步地,本实施例中的装置,还包括:第四判断模块、替换模块和第二删除模块;

第四判断模块,用于当第三判断模块判定需要用户输入目标蓝牙设备的pin码且第一判断模块307判定与目标蓝牙设备未成功配对时,弹出pin码配对输入框,获取用户通过pin码配对输入框输入的目标蓝牙设备的pin码,将移动设备与目标蓝牙设备进行pin码配对,判断移动设备与目标蓝牙设备是否成功配对;

第一替换模块,用于当第四判断模块判定成功配对时,将获取到的目标蓝牙设备的pin码替换内置的目标蓝牙设备的pin码;

第二删除模块,用于当第四判断模块判定未成功配对时,删除内置的目标蓝牙设备的pin码;

进一步地,本实施例中的装置,还包括:第五判断模块;

第五判断模块,用于判断是否存在内置pin码,当判定存在内置pin码时,根据内置pin码将移动设备与目标蓝牙设备进行配对,判断移动设备与目标蓝牙设备是否成功配对,是则成功配对,否则未成功配对,删除内置pin码;

弹框模块303,还用于当第五判断模块判定不存在内置pin码时,根据预设的pin码配对输入框弹出pin码配对输入框;

更进一步地,本实施例中的装置,还包括:第六判断模块和第二替换模块;

第六判断模块,用于当第五判断模块判定存在内置pin码且目标蓝牙设备未成功配对时,弹出pin码配对输入框,获取用户通过pin码配对输入框输入的目标蓝牙设备的pin码,将移动设备与目标蓝牙设备进行pin码配对,判断与移动设备目标蓝牙设备是否成功配对;

第二替换模块,用于当第六判断模块判定成功配对时,将获取到的目标蓝牙设备的pin码替换内置pin码。

更进一步地,本实施例中的装置,还包括:第二设置模块、第三配对模块、第七判断模块、第一更新模块、第八判断模块和第一报错模块;

第二设置模块,用于当第五判断模块判定未成功配对时,设置错误次数阀值,设置初始操作次数;

第三配对模块,用于当第二设置模块设置错误次数阀值和设置初始操作次数后,弹出pin码配对输入框,获取用户通过pin码配对输入框输入的目标蓝牙设备的pin码,将移动设备与目标蓝牙设备进行pin码配对;

第七判断模,用于判断第三配对模块中移动设备与目标蓝牙设备是否成功配对;

第一更新模块,用于当第七判断模判定未成功配对时,更新操作次数;

第八判断模块,用于判断第一更新模块更新的操作次数是否大于第二设置模块设置的错误次数阀值;

第一报错模块,用于当第八判断模块判定第一更新模块更新的操作次数大于第二设置模块设置的错误次数阀值时,报错;

第三配对模块,还用于当第八判断模块判定第一更新模块更新的操作次数未大于第二设置模块设置的错误次数阀值时,弹出pin码配对输入框,获取目标蓝牙设备的pin码,与目标蓝牙设备进行pin码配对。

弹框模块303,用于当拦截模块302拦截到系统程序广播的蓝牙配对请求时,在操作系统界面弹出预设的pin码配对输入框;

接收模块304,用于接收用户输入的pin码;

进一步地,本实施例中,

弹框模块303,具体用于在操作系统界面根据预设的pin码配对输入框的长度、宽度和左上角坐标位置弹出预设的pin码配对输入框;

接收模块304,具体用于接收用户输入的pin码;

进一步地,本实施例中,

弹框模块303,具体用于利用inputpin方法在操作系统界面弹出预设的pin码配对输入框;

接收模块304,具体用于接收用户输入的pin码。

第一配对模块305,用于根据接收模块304接收到用户输入的pin码将移动设备与目标蓝牙设备进行配对;

进一步地,本实施例中,

第一配对模块305,具体用于利用clsutils类的setpin方法根据用户输入的pin码将移动设备与目标蓝牙设备进行配对。

第一获取模块306,用于获取第一配对模块305的配对结果;

第一判断模块307,用于根据第一获取模块306获取的配对结果判断移动设备与目标蓝牙设备是否成功配对,是则成功配对,否则未成功配对;

进一步地,本实施例中,

第一判断模块307,具体用于根据bluetoothdevice类的getbondstate方法判断移动设备与目标蓝牙设备是否成功配对;

进一步地,本实施例中的装置,还包括:第三设置模块;

第三设置模块,用于当第一判断模块307判定未成功配对时,将获取到的目标蓝牙设备的pin码设置为内置pin码;

更进一步地,本实施例中的装置,还包括:第四设置模块、第四配对模块、第九判断模块、第二更新模块、第十判断模块和第二报错模块;

第四设置模块,用于当第一判断模块307判定未成功配对时,设置错误次数阀值,设置初始操作次数;

第四配对模块,用于当第四设置模块设置错误次数阀值和设置初始操作次数后,弹出pin码配对输入框,获取用户通过pin码配对输入框输入的目标蓝牙设备的pin码,将移动设备与目标蓝牙设备进行pin码配对;

第九判断模,用于判断第四配对模块移动设备与目标蓝牙设备是否成功配对;

第二更新模块,用于当第九判断模判定未成功配对时,更新操作次数;

第十判断模块,用于判断第二更新模块更新的操作次数是否大于错误次数阀值;

第二报错模块,用于当第十判断模块判定第一更新模块更新的操作次数大于错误次数阀值时,报错;

第四配对模块,还用于当第十判断模块判定第一更新模块更新的操作次数未大于错误次数阀值时,弹出pin码配对输入框,获取用户通过pin码配对输入框输入的目标蓝牙设备的pin码,将移动设备与目标蓝牙设备进行pin码配对;

进一步地,本实施例中,还包括:显示模块;

显示模块,用于当第一判断模块307判定成功配对时显示配对成功信息,还用于当第一判断模块307判定未成功配对时显示配对失败信息。

本发明提供了一种实现蓝牙设备与移动设备配对的方法及装置,当监听到系统程序发起的蓝牙配对请求时,应用程序拦截蓝牙配对请求,阻止移动设备弹出pin码配对框,当应用程序没有内置pin码时,弹出pin码配对输入框,获取并设置pin码,完成后续蓝牙配对过程;当应用程序的内部设置pin码时,则无需用户手动输入,直接完成蓝牙配对过程,节省了用户的时间和精力,为蓝牙设备与移动设备的连接提供了更好的用户体验。

以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明公开的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1