CN108319480A - 蓝牙服务启动方法、装置及电子设备 - Google Patents
蓝牙服务启动方法、装置及电子设备 Download PDFInfo
- Publication number
- CN108319480A CN108319480A CN201810103373.XA CN201810103373A CN108319480A CN 108319480 A CN108319480 A CN 108319480A CN 201810103373 A CN201810103373 A CN 201810103373A CN 108319480 A CN108319480 A CN 108319480A
- Authority
- CN
- China
- Prior art keywords
- bluetooth
- service
- android
- electronic equipment
- primary
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4406—Loading of operating system
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Stored Programmes (AREA)
Abstract
本申请提供一种蓝牙服务启动方法、装置及电子设备,电子设备基于Android系统运行,Android系统基于Linux系统实现,方法及装置应用于该电子设备。方法包括:在电子设备的Linux系统的启动阶段,启动系统初始化进程;系统初始化进程在成功启动时,启动基于Linux系统的原生蓝牙服务,以通过原生蓝牙服务与电子设备的外部蓝牙设备通信;当基于Android系统的Android蓝牙服务成功启动后,关闭原生蓝牙服务,以通过Android蓝牙服务与外部蓝牙设备通信。如此,可以在Android蓝牙服务开启前为用户提供蓝牙服务,使用户可以通过外部蓝牙设备控制电子设备,减少了用户的等待时间。
Description
技术领域
本申请涉及蓝牙通信技术领域,具体而言,涉及一种蓝牙服务启动方法、装置及电子设备。
背景技术
经发明人研究发现,现有的基于Android系统的电子设备,其蓝牙相关服务均是在Android系统启动过程中开启的,导致在Android系统正常启动之前都无法通过蓝牙响应外部蓝牙设备。而Android系统的蓝牙相关服务的启动需要耗费一定时间,在此期间,用户都无法通过外部蓝牙设备对电子设备进行操作。
发明内容
有鉴于此,本申请的目的在于提供一种蓝牙服务启动方法、装置及电子设备,以改善上述问题。
为了达到上述目的,本申请实施例采用如下技术方案:
第一方面,本申请实施例提供一种蓝牙服务启动方法,应用于基于Android系统的电子设备,所述Android系统基于Linux系统实现,所述方法包括:
在所述电子设备的Linux系统的启动阶段,启动系统初始化进程;
所述系统初始化进程在成功启动后,启动基于所述Linux系统的原生蓝牙服务,以通过所述原生蓝牙服务与所述电子设备的外部蓝牙设备通信;
当Android蓝牙服务成功启动时,关闭所述原生蓝牙服务,以通过所述Android蓝牙服务与所述外部蓝牙设备通信。
可选地,所述方法还包括:
通过所述原生蓝牙服务与所述外部蓝牙设备建立通信连接,并对所述外部蓝牙设备的驱动事件进行监听。
可选地,所述方法还包括:
通过所述系统初始化进程启动孵化进程,并通过所述孵化进程孵化出所述Android系统的系统服务进程;
通过所述系统服务进程开启蓝牙管理服务进程,并通过所述蓝牙管理服务进程启动基于所述Android系统的Android蓝牙服务;
所述Android蓝牙服务在成功启动时发送成功启动的通知给所述蓝牙管理服务进程,使所述蓝牙管理服务进程根据接收到的所述Android蓝牙服务成功启动的通知关闭所述原生蓝牙服务。
可选地,所述原生蓝牙服务为蓝牙人机接口服务,所述外部蓝牙设备为蓝牙遥控设备。
第二方面,本申请实施例还提供一种蓝牙服务启动装置,应用于基于Android系统的电子设备,所述Android系统基于Linux系统实现,所述装置包括:
初始化模块,用于在所述电子设备的Linux系统的启动阶段,启动系统初始化进程;
蓝牙开启模块,用于当所述系统初始化进程成功启动后,启动基于所述Linux系统的原生蓝牙服务,以通过所述原生蓝牙服务与所述电子设备的外部蓝牙设备通信;
蓝牙关闭模块,用于当Android蓝牙服务成功启动时,关闭所述原生蓝牙服务,以通过所述Android蓝牙服务与所述外部蓝牙设备通信。
可选地,所述装置还包括:
通信模块,用于通过所述原生蓝牙服务与所述外部蓝牙设备建立通信连接,并对所述外部蓝牙设备的驱动事件进行监听。
可选地,所述装置还包括:
第一启动模块,用于通过所述系统初始化进程启动孵化进程,并通过所述孵化进程孵化出所述Android系统的系统服务进程;
第二启动模块,用于通过所述系统服务进程开启蓝牙管理服务进程,并通过所述蓝牙管理服务进程启动基于所述Android系统的Android蓝牙服务;
通知模块,用于控制所述Android蓝牙服务在成功启动时发送成功启动的通知给所述蓝牙管理服务进程,使所述蓝牙管理服务进程根据接收到的所述Android蓝牙服务成功启动的通知关闭所述原生蓝牙服务。
可选地,所述原生蓝牙服务为蓝牙人机接口服务,所述外部蓝牙设备为蓝牙遥控设备。
第三方面,本申请实施例还提供一种电子设备,基于Android系统运行,所述Android系统基于Linux系统实现;
所述电子设备包括存储器、处理器及本申请实施例第二方面所述的蓝牙服务启动装置,所述蓝牙服务启动装置存储于所述存储器中并由所述处理器控制执行。
第四方面,本申请实施例还提供一种存储介质,其上存储有计算机可读指令,所述计算机可读指令被执行时实现本申请实施例第一方面所述的蓝牙服务启动方法。
相较于现有技术,本申请实施例具有以下有益效果:
本申请实施例提供一种蓝牙服务启动方法、装置及电子设备,其中,电子设备基于Android系统运行,Android系统基于Linux系统实现。在电子设备的Linux系统的启动阶段,启动系统初始化进程。系统初始化进程在成功启动后,启动基于Linux系统的原生蓝牙服务,以通过该原生蓝牙服务与电子设备的外部蓝牙设备通信。当Android蓝牙服务成功启动时,关闭原生蓝牙服务,以通过Android蓝牙服务与外部蓝牙设备通信。如此,可以在Android蓝牙服务开启前为用户提供蓝牙服务,使用户可以通过外部蓝牙设备控制电子设备,减少了用户的等待时间。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的一种电子设备与外部蓝牙设备的交互示意图;
图2为本申请实施例提供的一种电子设备的方框示意图;
图3为本申请实施例提供的一种蓝牙服务启动方法的流程示意图;
图4为本申请实施例提供的一种蓝牙服务启动装置的功能模块框图。
图标:100-电子设备;110-存储器;120-处理器;130-显示单元;140-蓝牙组件;200-外部蓝牙设备;300-蓝牙服务启动装置;310-初始化模块;320-蓝牙启动模块;330-蓝牙关闭模块;340-通信模块;350-第一启动模块;360-第二启动模块;370-通知模块。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
如图1所示,是本申请实施例提供的一种电子设备100与外部蓝牙设备200的交互示意图。电子设备100与外部蓝牙设备200均设置有蓝牙组件,电子设备100与外部蓝牙设备200可通过所蓝牙组件建立连接并通信。所述电子设备100可以是电视、投影设备等,本实施例对此不做限制。
如图2所示,是本申请实施例提供的一种电子设备100的方框示意图。所述电子设备100包括蓝牙服务启动装置300、存储器110、处理器120、显示单元130及蓝牙组件140。
其中,存储器110、处理器120、显示单元130及蓝牙组件140各元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可以通过一条或多条通讯总线或信号线实现电性连接。蓝牙服务启动装置300包括至少一个可以软件或固件(Firmware)的形式存储于存储器110中或固化在电子设备100的操作系统(OperatingSystem,OS)中的软件功能模块及计算机程序等。
所述电子设备100基于Android系统运行,其中,所述Android系统基于Linux系统实现,详细地,所述Android系统是基于Linux内核的操作系统。
其中,存储器110可以是,但不限于,随机存取存储器(Random Access Memory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(Programmable Read-OnlyMemory,PROM),可擦除只读存储器(Erasable Programmable Read-Only Memory,EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-Only Memory,EEPROM)等。
处理器120可以是一种集成电路芯片,具有信号处理能力。处理器120可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(NetworkProcessor,NP)等;还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
显示单元130可以是液晶显示屏或触控显示屏,用以显示待显示信息或是建立与用户的交互界面。蓝牙组件140用于与外部蓝牙设备建立蓝牙连接。
应当理解,图2所示结构仅为示意,电子设备100可以包括比图2所示更多或者更少的组件,或者具有与图2所示完全不同的配置。图2所示的各组件可以采用硬件、软件或其组合实现。
请参阅图3,是本申请实施例提供的一种蓝牙服务启动方法的流程示意图,该方法包括以下步骤。
步骤S301,在电子设备100的Linux系统的启动阶段,启动系统初始化进程。
在本实施例中,电子设备100的系统启动时会首先启动Linux系统的内核(即Linux系统的启动阶段),然后再启动Android系统。
实施时,当电子设备100开启(即电源键被按下)时,电子设备100的引导芯片代码开始从预定义的地方开始执行,加载引导程序Boot Loader到RAM(Random Access Memory,随机存取存储器110)。其中,所述预定义的地方通常是ROM(Read Only Memory,只读存储器110)中的预设地址。引导程序Boot Loader是在Android系统开始运行前被执行的一个小程序,用以检测外部的RAM及加载后续过程中需要使用的程序,以及设置网络、内存等。BootLoader还用于加载kernel(Linux系统的内核),kernel在执行过程中,通过驱动程序来初始化所有电子设备100的所有硬件。当kernel初始化完成时,启动系统初始化(init)进程。init进程是Android系统中用户空间的第一个进程,用于挂载目录(如/sys、/dev、/proc等)以及运行init.rc脚本。
其中,init进程可以在/system/core/init找到,init.rc可以在/system/core/rootdir/init.rc找到,readme.txt可以在/system/core/init/readme.txt找到。Init.rc脚本是Android系统的初始化脚本文件,Android系统初始化过程要触发的动作和需要启动的服务及其各自属性都在init.rc脚本中定义。
步骤S302,所述系统初始化进程在成功启动时,启动基于所述Linux系统的原生蓝牙服务,以通过所述原生蓝牙服务与所述电子设备100的外部蓝牙设备200通信。
在实际应用中,当init进程启动后,会启动孵化器(zygote)进程,并由zygote进程启动系统服务(SystemServer)进程,进而在SystemServer进程中启动一系列的服务,其中,Android蓝牙服务也是通过SystemServer开启的。应当理解,Android蓝牙服务,是基于Android系统实现的蓝牙服务。
然而,经申请人研究发现,从电子设备100上电到Android蓝牙服务开启,需要耗费一定时长,在此过程中,用户无法使用外部蓝牙设备200(如,遥控设备等)对电子设备100进行控制,用户使用起来很不方便,体验不佳。
基于此,本实施例中,当init进程启动成功后,立即开启一基于Linux系统的原生(Native)蓝牙服务,以供用户使用,从而减少用户等待的时间。
详细地,init.rc脚本中设置用于开启startbdt服务的脚本,具体如下:
Service startbdt/system/bin/startwhaleybdt.sh
class main
oneshot
disabled
其中,disabled这一参数用于控制startbdt这一服务自启动或响应预设命令启动(即,在接收到该预设命令时启动)。
其中,startwhaleybdt.sh这一文件中设置有用于开启相应蓝牙服务的指令,例如,用于开启蓝牙HID(Human Interface Device,人机接口)服务、蓝牙OPP(Object PushProfile)服务及蓝牙A2DP(Advanced Audio Distribution Profile)服务中的至少一个。
可选地,所述方法还可以包括如下步骤:
通过所述原生蓝牙服务与所述外部蓝牙设备200建立通信连接,并对所述外部蓝牙设备200的驱动事件进行监听。
所述原生蓝牙服务实质上是一个进程,用于与所述外部蓝牙设备200建立通信连接,并基于所述通信连接监听所述外部蓝牙设备200的驱动事件。进一步地,所述init进程中还可以开启有用于响应所述驱动事件的原生进程。
在本实施例的一种具体实施方式中,可以直接用所述原生蓝牙服务替代基于Android系统的蓝牙服务,则所述原生蓝牙服务包括上述的蓝牙HID服务、蓝牙OPP服务及蓝牙A2DP服务等。考虑到外部蓝牙设备200同一时间只能与一个蓝牙服务通信,即基于Linux系统的原生蓝牙服务与基于Android系统的蓝牙服务是互斥的,因此,在前述情形下,可以禁止SystemServer启动基于Android系统的蓝牙服务。
在本实施例的另一种具体实施方式中,考虑到基于Android系统的电子设备100,其所有功能均通过Android程序实现,当电子设备100的蓝牙服务基于Linux系统实现时,其实现指令也是基于Linux系统的指令。而在蓝牙服务的实际应用过程中,势必需要与电子设备100的其他功能进行交互,也就需要实现Android程序与Linux程序的对接,实现起来较为复杂,所需耗费的开发成本和维护成本相对较高。
基于上述研究,本实施例可以仅在所述原生蓝牙服务中实现上述的蓝牙HID服务,以使用户在Android蓝牙服务未启动之前可以通过蓝牙遥控设备的按键控制电子设备100。由于基于Linux系统的蓝牙HID服务与基于Android系统的其他服务之间交互较为简单,因而,上述设计既能够满足用户在Android系统启动前通过蓝牙遥控设备控制电子设备100的需求,又避免了复杂的实现过程,能够达到更好的效果。
在此情形下,所述外部蓝牙设备200可以为蓝牙遥控设备。
详细地,可以在上述的startwhaley.sh文件中设置如下指令,以开启所述蓝牙HID服务:/system/bin/bd_hid。当Android蓝牙服务开启后,即可关闭该原生蓝牙服务,使用所述Android蓝牙服务与外部蓝牙设备200通信,具体可通过下述的步骤S203实现。
步骤S203,当Android蓝牙服务成功启动时,关闭所述原生蓝牙服务,以通过所述Android蓝牙服务与所述外部蓝牙设备200通信。
在本实施例中,Android蓝牙服务实质上是一个进程,具体可以是指com.android.bluetooth进程。即,当com.android.bluetooth进程成功启动时,表示Android蓝牙服务成功启动,此时,可以关闭所述原生蓝牙服务。
可选地,在启动com.android.bluetooth进程之前,还需启动其他的一些进程,因而,所述方法还可以包括如下步骤,以实现Android蓝牙服务的开启:
第一,通过所述系统初始化(init)进程启动孵化器(zygote)进程,并通过所述孵化器进程孵化出所述Android系统的系统服务(SystemServer)进程。
第二,通过所述系统服务进程开启蓝牙管理服务(BluetoothManagerService)进程,并通过所述蓝牙管理服务进程启动基于所述Android系统的com.android.bluetooth进程。
第三,所述com.android.bluetooth进程在成功启动时发送成功启动的通知给所述蓝牙管理服务进程,使所述蓝牙管理服务进程根据接收到的所述com.android.bluetooth进程成功启动的通知关闭所述原生蓝牙服务。
即,当BluetoothManagerService进程接收到com.android.bluetooth进程发送的成功启动的通知时,即可将所述原生蓝牙服务关闭。可选地,所述init.rc脚本中可以定义有如下服务:
service stopbdt/system/bin/stopwhaleybdt.sh
disabled
oneshot
其中,stopwhaleybdt.sh文件中设置有用于关闭所述原生蓝牙服务的指令。
以上述的蓝牙HID服务为例,可以通过如下指令将所述蓝牙HID服务关闭:
busybox killall bd_hid。
在本实施例中,在Bluetoothmanagerservice进程接收到com.android.bluetooth进程发送的成功启动的通知时,通过如下方式调用并执行stopwhaleybdt.sh文件:
property_set("ctl_start","stopbdt")。
如图4所示,是本申请实施例提供的一种蓝牙服务启动装置300的功能模块框图,该蓝牙服务启动装置300应用于图2所示的电子设备100。
在本实施例中,蓝牙服务启动装置300包括初始化模块310、蓝牙开启模块及蓝牙关闭模块330。
其中,初始化模块310用于在所述电子设备100的Linux系统的启动阶段,启动系统初始化进程。
在本实施例中,关于初始化模块310的描述具体可参考对图3所示步骤S301的详细描述,即步骤S301可以由初始化模块310执行。
蓝牙启动模块320用于当所述系统初始化进程成功启动后,启动基于所述Linux系统的原生蓝牙服务,以通过所述原生蓝牙服务与所述电子设备100的外部蓝牙设备200通信。
可选地,所述原生蓝牙服务可以是蓝牙人机接口服务,相应地,所述外部蓝牙设备200可以是蓝牙遥控设备。
在本实施例中,关于蓝牙启动模块320的描述具体可参考对图3所示步骤S302的详细描述,即步骤S302可以由蓝牙启动模块320执行。
蓝牙关闭模块330用于当Android蓝牙服务成功启动时,关闭所述原生蓝牙服务,以通过所述Android蓝牙服务与所述外部蓝牙设备200通信。
在本实施例中,关于蓝牙关闭模块330的描述具体可参考对图3所示步骤S303的详细描述,即步骤S303可以由蓝牙关闭模块330执行。
可选地,所述蓝牙服务启动装置300还可以包括通信模块340。
其中,通信模块340用于通过所述原生蓝牙服务与所述外部蓝牙设备200建立通信连接,并对所述外部蓝牙设备200的驱动事件进行监听。
可选地,所述蓝牙服务启动装置300还可以包括第一启动模块350、第二启动模块360及通知模块370。
其中,所述第一启动模块350用于通过所述系统初始化进程启动孵化进程,并通过所述孵化进程孵化出所述Android系统的系统服务进程。
所述第二启动模块360用于通过所述系统服务进程开启蓝牙管理服务进程,并通过所述蓝牙管理服务进程启动基于所述Android系统的Android蓝牙服务。
所述通知模块370用于当所述Android蓝牙服务在成功启动时发送成功启动的通知给所述蓝牙管理服务进程,使所述蓝牙管理服务进程根据接收到的所述Android蓝牙服务成功启动的通知关闭所述原生蓝牙服务。
本申请实施例还提供一种存储介质,其上存储有计算机可读指令,该计算机可读指令被执行时实现本申请实施例提供的蓝牙服务启动方法。
综上所述,本申请实施例提供一种蓝牙服务启动方法、装置及电子设备100,其中,电子设备100基于Android系统运行,Android系统基于Linux系统实现。在电子设备100的Linux系统的启动阶段,启动系统初始化进程。系统初始化进程在成功启动后,启动基于Linux系统的原生蓝牙服务,以通过该原生蓝牙服务与电子设备100的外部蓝牙设备200通信。当Android蓝牙服务成功启动时,关闭原生蓝牙服务,以通过Android蓝牙服务与外部蓝牙设备200通信。如此,可以在Android蓝牙服务开启前为用户提供蓝牙服务,使用户可以通过外部蓝牙设备200控制电子设备100,减少了用户的等待时间。
在本申请实施例所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置和方法实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,电子设备,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (10)
1.一种蓝牙服务启动方法,其特征在于,应用于基于Android系统的电子设备,所述Android系统基于Linux系统实现,所述方法包括:
在所述电子设备的Linux系统的启动阶段,启动系统初始化进程;
所述系统初始化进程在成功启动后,启动基于所述Linux系统的原生蓝牙服务,以通过所述原生蓝牙服务与所述电子设备的外部蓝牙设备通信;
当Android蓝牙服务成功启动时,关闭所述原生蓝牙服务,以通过所述Android蓝牙服务与所述外部蓝牙设备通信。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
通过所述原生蓝牙服务与所述外部蓝牙设备建立通信连接,并对所述外部蓝牙设备的驱动事件进行监听。
3.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
通过所述系统初始化进程启动孵化进程,并通过所述孵化进程孵化出所述Android系统的系统服务进程;
通过所述系统服务进程开启蓝牙管理服务进程,并通过所述蓝牙管理服务进程启动基于所述Android系统的Android蓝牙服务;
所述Android蓝牙服务在成功启动时发送成功启动的通知给所述蓝牙管理服务进程,使所述蓝牙管理服务进程根据接收到的所述Android蓝牙服务成功启动的通知关闭所述原生蓝牙服务。
4.根据权利要求1或2所述的方法,其特征在于,所述原生蓝牙服务为蓝牙人机接口服务,所述外部蓝牙设备为蓝牙遥控设备。
5.一种蓝牙服务启动装置,其特征在于,应用于基于Android系统的电子设备,所述Android系统基于Linux系统实现,所述装置包括:
初始化模块,用于在所述电子设备的Linux系统的启动阶段,启动系统初始化进程;
蓝牙启动模块,用于当所述系统初始化进程成功启动后,启动基于所述Linux系统的原生蓝牙服务,以通过所述原生蓝牙服务与所述电子设备的外部蓝牙设备通信;
蓝牙关闭模块,用于当Android蓝牙服务成功启动时,关闭所述原生蓝牙服务,以通过所述Android蓝牙服务与所述外部蓝牙设备通信。
6.根据权利要求5所述的装置,其特征在于,所述装置还包括:
通信模块,用于通过所述原生蓝牙服务与所述外部蓝牙设备建立通信连接,并对所述外部蓝牙设备的驱动事件进行监听。
7.根据权利要求5或6所述的装置,其特征在于,所述装置还包括:
第一启动模块,用于通过所述系统初始化进程启动孵化进程,并通过所述孵化进程孵化出所述Android系统的系统服务进程;
第二启动模块,用于通过所述系统服务进程开启蓝牙管理服务进程,并通过所述蓝牙管理服务进程启动基于所述Android系统的Android蓝牙服务;
通知模块,用于控制所述Android蓝牙服务在成功启动时发送成功启动的通知给所述蓝牙管理服务进程,使所述蓝牙管理服务进程根据接收到的所述Android蓝牙服务成功启动的通知关闭所述原生蓝牙服务。
8.根据权利要求5或6所述的装置,其特征在于,所述原生蓝牙服务为蓝牙人机接口服务,所述外部蓝牙设备为蓝牙遥控设备。
9.一种电子设备,其特征在于,基于Android系统运行,所述Android系统基于Linux系统实现;
所述电子设备包括存储器、处理器及权利要求5-8任一所述的蓝牙服务启动装置,所述蓝牙服务启动装置存储于所述存储器中并由所述处理器控制执行。
10.一种存储介质,其上存储有计算机可读指令,其特征在于,所述计算机可读指令被执行时实现权利要求1-4任一所述的蓝牙服务启动方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810103373.XA CN108319480A (zh) | 2018-02-01 | 2018-02-01 | 蓝牙服务启动方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810103373.XA CN108319480A (zh) | 2018-02-01 | 2018-02-01 | 蓝牙服务启动方法、装置及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108319480A true CN108319480A (zh) | 2018-07-24 |
Family
ID=62888764
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810103373.XA Pending CN108319480A (zh) | 2018-02-01 | 2018-02-01 | 蓝牙服务启动方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108319480A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110780930A (zh) * | 2019-09-23 | 2020-02-11 | 广州视源电子科技股份有限公司 | 启动Android系统的方法、装置、电子设备及存储介质 |
CN111258669A (zh) * | 2020-03-25 | 2020-06-09 | 上海商汤临港智能科技有限公司 | 人脸识别方法及装置、存储介质 |
CN111443952A (zh) * | 2020-03-16 | 2020-07-24 | 珠海全志科技股份有限公司 | 提升基于uart接口的蓝牙打开速度的方法及系统 |
CN113391931A (zh) * | 2021-06-03 | 2021-09-14 | 深圳市有方科技股份有限公司 | 基于蓝牙的远程控制方法、装置、计算机设备和存储介质 |
CN113950034A (zh) * | 2021-10-14 | 2022-01-18 | 北京鲸鲮信息系统技术有限公司 | 蓝牙行为的模拟方法、装置和设备 |
WO2022062205A1 (zh) * | 2020-09-28 | 2022-03-31 | 惠州市德赛西威智能交通技术研究院有限公司 | 一种ble快速启动自动泊车出库方法,设备及汽车 |
CN114980057A (zh) * | 2022-06-21 | 2022-08-30 | 润芯微科技(江苏)有限公司 | 一种系统设备快速连接低功耗蓝牙设备的方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN203882427U (zh) * | 2014-05-06 | 2014-10-15 | 张胜昔 | 拨动开关切换式无线蓝牙遥控拍照器 |
CN105933987A (zh) * | 2016-04-27 | 2016-09-07 | 江苏物联网研究发展中心 | Android系统下蓝牙自动配对连接方法 |
CN106412656A (zh) * | 2016-10-26 | 2017-02-15 | 四川长虹电器股份有限公司 | Android智能设备快速连接蓝牙的方法 |
CN107509161A (zh) * | 2017-08-25 | 2017-12-22 | 精赟智能科技(上海)有限公司 | 智能蓝牙控制系统及方法 |
-
2018
- 2018-02-01 CN CN201810103373.XA patent/CN108319480A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN203882427U (zh) * | 2014-05-06 | 2014-10-15 | 张胜昔 | 拨动开关切换式无线蓝牙遥控拍照器 |
CN105933987A (zh) * | 2016-04-27 | 2016-09-07 | 江苏物联网研究发展中心 | Android系统下蓝牙自动配对连接方法 |
CN106412656A (zh) * | 2016-10-26 | 2017-02-15 | 四川长虹电器股份有限公司 | Android智能设备快速连接蓝牙的方法 |
CN107509161A (zh) * | 2017-08-25 | 2017-12-22 | 精赟智能科技(上海)有限公司 | 智能蓝牙控制系统及方法 |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110780930A (zh) * | 2019-09-23 | 2020-02-11 | 广州视源电子科技股份有限公司 | 启动Android系统的方法、装置、电子设备及存储介质 |
CN110780930B (zh) * | 2019-09-23 | 2023-06-06 | 广州视源电子科技股份有限公司 | 启动Android系统的方法、装置、电子设备及存储介质 |
CN111443952A (zh) * | 2020-03-16 | 2020-07-24 | 珠海全志科技股份有限公司 | 提升基于uart接口的蓝牙打开速度的方法及系统 |
CN111443952B (zh) * | 2020-03-16 | 2023-04-07 | 珠海全志科技股份有限公司 | 提升基于uart接口的蓝牙打开速度的方法及系统 |
CN111258669A (zh) * | 2020-03-25 | 2020-06-09 | 上海商汤临港智能科技有限公司 | 人脸识别方法及装置、存储介质 |
CN111258669B (zh) * | 2020-03-25 | 2024-04-16 | 上海商汤临港智能科技有限公司 | 人脸识别方法及装置、存储介质 |
WO2022062205A1 (zh) * | 2020-09-28 | 2022-03-31 | 惠州市德赛西威智能交通技术研究院有限公司 | 一种ble快速启动自动泊车出库方法,设备及汽车 |
CN113391931A (zh) * | 2021-06-03 | 2021-09-14 | 深圳市有方科技股份有限公司 | 基于蓝牙的远程控制方法、装置、计算机设备和存储介质 |
CN113950034A (zh) * | 2021-10-14 | 2022-01-18 | 北京鲸鲮信息系统技术有限公司 | 蓝牙行为的模拟方法、装置和设备 |
CN113950034B (zh) * | 2021-10-14 | 2024-04-26 | 北京字节跳动网络技术有限公司 | 蓝牙行为的模拟方法、装置和设备 |
CN114980057A (zh) * | 2022-06-21 | 2022-08-30 | 润芯微科技(江苏)有限公司 | 一种系统设备快速连接低功耗蓝牙设备的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108319480A (zh) | 蓝牙服务启动方法、装置及电子设备 | |
US11429439B2 (en) | Task scheduling based on performance control conditions for multiple processing units | |
CN105404525B (zh) | 管理计算机系统中的基本输入输出系统配置的方法及装置 | |
US20180240260A1 (en) | Electronic device and method for displaying screen thereof | |
US10162646B2 (en) | System for programmably configuring a motherboard | |
US20150169330A1 (en) | Out-of-band configuration of bios setting data | |
CN103176789A (zh) | 一种实现开放平台功能扩展的方法及系统 | |
KR20140043168A (ko) | 다중 환경 운영 시스템에서 환경을 전환하는 시스템 및 방법 | |
US11252191B2 (en) | Visual policy configuration and enforcement for platform security | |
CN103853586A (zh) | 一种在uefi层实现无线网卡驱动的方法 | |
CN113268286B (zh) | 一种应用启动方法、装置、投影设备及存储介质 | |
CN109032888A (zh) | 一种服务器启动过程故障检测方法、装置及受控终端 | |
CN109976926A (zh) | 一种屏蔽重启保护bmc更新过程的方法、电路、终端及存储介质 | |
CN109168088A (zh) | 一种智能电视系统的启动方法、装置及智能电视 | |
CN109857466A (zh) | Bios配置方法、装置、服务器及计算机可读存储介质 | |
CN108874459A (zh) | 基于虚拟化技术的快速启动方法和装置 | |
CN113411212B (zh) | 智能网卡的bios控制系统与智能网卡的bios控制方法 | |
CN102880479B (zh) | 一种远程修改bios属性参数的方法及装置 | |
KR20100032740A (ko) | 이동통신단말기에서 언어 변경 장치 및 방법 | |
CN106096419A (zh) | 操作系统安全启动的方法、装置及系统 | |
US10579575B2 (en) | Systems and methods of management console user interface pluggability | |
US11425203B2 (en) | Commissioning a virtualized network function | |
CN106951264A (zh) | 一种开机时间优化方法和装置 | |
CN112506774A (zh) | 一种可测性优化方法、装置、电子设备及存储介质 | |
CN113453376A (zh) | 网络配置方法、相关装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180724 |
|
RJ01 | Rejection of invention patent application after publication |