CN106708562A - 通过点击Android的物理按键运行应用程序的方法及系统 - Google Patents
通过点击Android的物理按键运行应用程序的方法及系统 Download PDFInfo
- Publication number
- CN106708562A CN106708562A CN201611058798.0A CN201611058798A CN106708562A CN 106708562 A CN106708562 A CN 106708562A CN 201611058798 A CN201611058798 A CN 201611058798A CN 106708562 A CN106708562 A CN 106708562A
- Authority
- CN
- China
- Prior art keywords
- application program
- physical button
- android
- time difference
- clicking
- 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.)
- Granted
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
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0487—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
- G06F3/0489—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using dedicated keyboard keys or combinations thereof
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种通过点击Android的物理按键运行应用程序的方法及系统,涉及Android的物理按键调试领域。该方法的步骤为:获取所用应用程序的使用标记和对应的启动标记;将所有安装包应用程序的使用标记生成应用程序启动选择列表,在应用程序启动选择列表中,储存与指定安装包应用程序的使用标记对应的启动标记;计算点击物理按键达到指定次数的实际时间差T4,T4=T2‑T1,T2为最后一次点击物理按键的时间,T1为第一次点击物理按键的时间;当T4≤预先设定的时间差阈值T时,根据之前储存的启动标记,启动对应的应用程序。本发明能够通过点击Android智能手机的物理按键的方式,来运行应用程序;应用程序获取和运行的过程简洁而快速。
Description
技术领域
本发明涉及Android的物理按键调试领域,具体涉及一种通过点击Android的物理按键运行应用程序的方法及系统。
背景技术
现有的Android智能手机运行应用程序的方法一般为:在屏幕界面中找到并点击该应用程序的图标。但是,随着Android智能手机的长期使用,Android智能手机中的应用程序会逐渐增多,用户在较多的应用程序中,找到自己所需的常用应用程序时,需要在屏幕上来回切换,其操作过程比较繁琐;进一步,若用户对指定的应用程序进行私密性设置(例如放在屏幕界面中创建的文件夹中),则运行该应用程序的操作过程更加繁琐,不便于用户使用,降低了用户体验。
发明内容
针对现有技术中存在的缺陷,本发明解决的技术问题为:通过点击Android智能手机的物理按键的方式,来运行应用程序;本发明能够在未改变物理按键的功能的基础上,为物理按键新增功能,进而使得获取和运行指定应用程序的过程简洁而快速。
为达到以上目的,本发明提供的通过点击Android的物理按键运行应用程序的方法,包括以下步骤:
步骤A:获取当前Android系统中所用应用程序的安装包信息,每个安装包信息包括安装包应用程序的使用标记和对应的启动标记;将所有安装包应用程序的使用标记生成应用程序启动选择列表,在应用程序启动选择列表中,储存与指定安装包应用程序的使用标记对应的启动标记;
步骤B:计算点击物理按键达到指定次数的实际时间差T4,T4=T2-T1,T2为最后一次点击物理按键的时间,T1为第一次点击物理按键的时间;当T4≤预先设定的时间差阈值T、且步骤A执行完毕后,转到步骤C;
步骤C:根据步骤A中储存的启动标记,启动对应的应用程序。
与现有技术相比,本发明的优点在于:
(1)本发明通过物理按键点击时间的识别,为物理按键新增了1个启动应用程序的功能;因此,与现有技术中难以找到所需的常用应用程序相比,本发明获取和运行指定应用程序的过程简洁而快速,非常便于人们使用,提高了用户体验。
与此同时,本发明中为物理按键新增启动应用程序的功能的同时,未改变物理按键的功能;而常规的物理按键功能修改,是通过按键映射方式来进行改动,即按键映射的改动会将一个功能改变成另一个功能,但功能没有增加。因此,本发明能够提供一种在不改变物理按键原有功能的情况下,增加物理按键功能的方法,非常适于推广、
(2)本发明在通过点击物理按键运行应用程序之前,会根据不同的用户,有针对性的测试和设置不同时间差阈值,进而精准的匹配了每个用户的使用习惯,显著提高了应用程序正确启动的精度。
(3)本发明的系统在启动物理按键点击反馈服务时,在系统未运行的情况下,通过监听静态的系统启动广播的方式,来接收系统启动的消息,进而使得后台自动启动物理按键点击反馈服务,无需手动再次启动该服务,进而提高了工作效率。
附图说明
图1为本发明实施例中通过点击Android的物理按键运行应用程序的方法的流程图。
具体实施方式
以下结合附图及实施例对本发明作进一步详细说明。
参见图1所示,本发明实施例中的通过点击Android的物理按键运行应用程序的方法,包括以下步骤:
S1:当需要获取点击物理按键的时间时,启动物理按键点击反馈服务,转到S2。
S2:获取安装包信息,具体流程为:
S201:调用安装包获取接口getPackageManager,获取Android系统的包管理者对象PackageManager(Android系统中专门用于管理手机中的所有安装包信息),转到S202。
S202:通过包管理者对象中的getInstalledPackages函数,获取包管理者对象中的所有安装包信息,每个安装包信息包括安装包的应用程序使用标记(供用户点击运行的应用程序名称,通过调用安装包信息的loadLabel函数获取)、以及对应的应用程序启动标记(供后台启动自动启动的应用程序名称,通过调用安装包信息的getLaunchIntentForPackage函数获取),转到S3。
S3:将所有安装包信息的应用程序使用标记生成应用程序启动选择列表,提示用户选择,当用户在应用程序启动选择列表中点击某个应用程序使用标记时,储存该应用程序使用标记对应的应用程序启动标记,转到S4。
S4:判断是否设置有时间差阈值T:重写onKeyDown函数(Android系统中只有重写onKeyDown函数才能够接收到系统返回的物理按键回调信息),判断是否预先设置过用户点击物理按键达到指定次数(本实施例中为2次)的时间差阈值T,若是,转到S6,否则需要根据使用用户的不同,测试当前用户的时间差阈值T,以精准的匹配当前用户的使用习惯,即转到S5。
S5:测试至少3次时间差测试值T3,T3=T2-T1,T2为最后一次点击物理按键的时间,T1为第一次点击物理按键的时间;取所有时间差测试值T3的平均值作为时间差阈值T(本实施例中测试得到的T为300ms,一般为200~300ms),转到S6。
S5的工作原理为:用户点击物理按键(本实施例中为音量增大按键,实际应用中可以为任意物理按键)时,Android系统会返回KEYCODE_VOLUME_DOWN消息事件,通过时间获取函数System.currentTimeMillis即可从中获取点击物理按键的时间,转到S6。
S6:计算用户点击物理按键达到指定次数的实际时间差T4,T4=T2-T1,判断是否T4≤T,若是,则确定需要启动S3中用户选择的应用程序,通过广播的形式发送一个启动应用程序的广播,转到S7,否则确定不需要启动相应的应用程序,重新执行S6。
S7:启动应用程序,具体工作流程为:
S701:调用Android系统中的1个意图对象(Intent对象)的setComponentName函数,将S3中储存的应用程序启动标记封装至Android系统中的1个意图对象(Intent对象)中,转到S702。
S702:将Intent对象传递至startActivity函数,调用startActivity函数,自动将应用程序启动标记对应的应用程序进行启动;若应用程序进行启动成功,startActivity函数会返回启动成功信息,若应用程序进行启动失败成功,startActivity函数会返回异常信息。
以上是本发明通过点击Android的物理按键运行应用程序的方法的完整流程,在此基础上,S1中需要获取点击物理按键的时间的情形为以下2种:
(1)S5之前,即首次使用本方法测试时间差阈值T时,也可以理解为将根据本方法实现的系统安装于智能手机上时,该情形下启动物理按键点击反馈服务的流程为:Android系统调用系统对应的onCreate函数启动物理按键点击反馈服务,启动方式调用startService的方式。
(2)S6之前,即计算用户的实际时间差T4时,也可以理解为Android系统启动后;该情形下启动物理按键点击反馈服务的流程为:定义一个广播接收器BootBroadcastReceiver,用来监听系统启动广播,收到系统启动广播后调用startService方式来启动服务;具体工作流程为:在Android系统的清单文件AndroidManifest.xml中注册监听事件:
<receiver
android:name="com.android.test.BootBroadcastReceiver">
<intent-filter>
//定义一个广播接收器BootBroadcastReceiver;
<action
android:name="android.intent.action.BOOT_COMPLETED"/>
</intent-filter>
//该广播接收器用于监听系统启动的广播BOOT_COMPLETED
</receiver>。
此外,在启动物理按键点击反馈服务时,若该服务未启动,则通过startService方式来启动服务;若该服务已启动,则调用startService时不会再次启动,而是继续执行原有服务(即不会重新开启另外一个服务)。
与此同时,Android系统启动服务常见的有两种方式:startService和bindService,与需要绑定某一个activity(界面)来启动服务的bindService相比,通过startService的方式启动物理按键点击反馈服务,不需要绑定activity,使用比较方便,提高了工作效率。
本发明实施例提供的通过点击Android的物理按键运行应用程序的系统,包括物理按键点击反馈服务启动模块、应用程序启动设置模块、物理按键检测模块和应用程序启动模块。
物理按键点击反馈服务启动模块用于:在物理按键检测模块计算实际时间差T4之前、以及设定时间差阈值T之前,启动物理按键点击反馈服务;计算实际时间差T4之前的启动物理按键点击反馈服务的流程为:收到Android系统的系统启动广播时,采用startService的方式来启动物理按键点击反馈服务。
应用程序启动设置模块用于:获取当前Android系统中所用应用程序的安装包信息,每个安装包信息包括安装包应用程序的使用标记和对应的启动标记;将所有安装包应用程序的使用标记生成应用程序启动选择列表,在应用程序启动选择列表中,储存与指定安装包应用程序的使用标记对应的启动标记,向应用程序启动模块发送应用程序启动设置完成信号。
物理按键检测模块用于:计算点击物理按键达到指定次数(2次)的实际时间差T4,T4=T2-T1,T2为最后一次点击物理按键的时间,T1为第一次点击物理按键的时间;判断T4是否≤预先设定的时间差阈值T,若是,向应用程序启动模块发送应用程序启动信号,否则重新开始工作。
物理按键检测模块设置时间差阈值T的方法为:测试至少3次时间差测试值T3,T3=T2-T1,取所有时间差测试值T3的平均值作为时间差阈值T。
应用程序启动模块:收到应用程序启动设置完成信号和应用程序启动信号后,根据应用程序启动设置模块储存的启动标记,启动对应的应用程序。
进一步,本发明不局限于上述实施方式,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围之内。本说明书中未作详细描述的内容属于本领域专业技术人员公知的现有技术。
Claims (10)
1.一种通过点击Android的物理按键运行应用程序的方法,其特征在于,该方法包括以下步骤:
步骤A:获取当前Android系统中所用应用程序的安装包信息,每个安装包信息包括安装包应用程序的使用标记和对应的启动标记;将所有安装包应用程序的使用标记生成应用程序启动选择列表,在应用程序启动选择列表中,储存与指定安装包应用程序的使用标记对应的启动标记;
步骤B:计算点击物理按键达到指定次数的实际时间差T4,T4=T2-T1,T2为最后一次点击物理按键的时间,T1为第一次点击物理按键的时间;当T4≤预先设定的时间差阈值T、且步骤A执行完毕后,转到步骤C;
步骤C:根据步骤A中储存的启动标记,启动对应的应用程序。
2.如权利要求1所述的通过点击Android的物理按键运行应用程序的方法,其特征在于:步骤B中所述时间差阈值T的设置方法为:测试至少3次时间差测试值T3,T3=T2-T1,取所有时间差测试值T3的平均值作为时间差阈值T。
3.如权利要求2所述的通过点击Android的物理按键运行应用程序的方法,其特征在于:步骤B中计算所述实际时间差T4之前、以及设定所述时间差阈值T之前,还包括以下步骤:启动物理按键点击反馈服务;计算所述实际时间差T4之前,启动物理按键点击反馈服务的流程为:收到Android系统的系统启动广播时,采用startService的方式来启动物理按键点击反馈服务。
4.如权利要求1至3任一项所述的通过点击Android的物理按键运行应用程序的方法,其特征在于:步骤B中所述指定次数为2次。
5.如权利要求1至3任一项所述的通过点击Android的物理按键运行应用程序的方法,其特征在于:步骤B计算所述实际时间差T4之后,还包括以下步骤:当T4<预先设定的时间差阈值T时,重新执行步骤B。
6.一种通过点击Android的物理按键运行应用程序的系统,其特征在于:该系统包括应用程序启动设置模块、物理按键检测模块和应用程序启动模块;
应用程序启动设置模块用于:获取当前Android系统中所用应用程序的安装包信息,每个安装包信息包括安装包应用程序的使用标记和对应的启动标记;将所有安装包应用程序的使用标记生成应用程序启动选择列表,在应用程序启动选择列表中,储存与指定安装包应用程序的使用标记对应的启动标记,向应用程序启动模块发送应用程序启动设置完成信号;
物理按键检测模块用于:计算点击物理按键达到指定次数的实际时间差T4,T4=T2-T1,T2为最后一次点击物理按键的时间,T1为第一次点击物理按键的时间;当T4≤预先设定的时间差阈值T,向应用程序启动模块发送应用程序启动信号;
应用程序启动模块:收到应用程序启动设置完成信号和应用程序启动信号后,根据应用程序启动设置模块储存的启动标记,启动对应的应用程序。
7.如权利要求6所述的通过点击Android的物理按键运行应用程序的系统,其特征在于:所述物理按键检测模块设置时间差阈值T的方法为:测试至少3次时间差测试值T3,T3=T2-T1,取所有时间差测试值T3的平均值作为时间差阈值T。
8.如权利要求6所述的通过点击Android的物理按键运行应用程序的系统,其特征在于:该系统还包括物理按键点击反馈服务启动模块,其用于:在物理按键检测模块计算实际时间差T4之前、以及设定时间差阈值T之前,启动物理按键点击反馈服务;计算实际时间差T4之前的启动物理按键点击反馈服务的流程为:收到Android系统的系统启动广播时,采用startService的方式来启动物理按键点击反馈服务。
9.如权利要求6至8任一项所述的通过点击Android的物理按键运行应用程序的系统,其特征在于:所述物理按键检测模块中的指定次数为2次。
10.如权利要求6至8任一项所述的通过点击Android的物理按键运行应用程序的系统,其特征在于:所述物理按键检测模块若确定T4<预先设定的时间差阈值T时,则重新开始工作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611058798.0A CN106708562B (zh) | 2016-11-24 | 2016-11-24 | 通过点击Android的物理按键运行应用程序的方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611058798.0A CN106708562B (zh) | 2016-11-24 | 2016-11-24 | 通过点击Android的物理按键运行应用程序的方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106708562A true CN106708562A (zh) | 2017-05-24 |
CN106708562B CN106708562B (zh) | 2020-05-12 |
Family
ID=58934823
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611058798.0A Active CN106708562B (zh) | 2016-11-24 | 2016-11-24 | 通过点击Android的物理按键运行应用程序的方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106708562B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109739398A (zh) * | 2018-04-20 | 2019-05-10 | 北京字节跳动网络技术有限公司 | 一种操作界面显示方法和装置及一种终端设备 |
CN109933807A (zh) * | 2017-12-19 | 2019-06-25 | 葫芦科技有限公司 | 一种通过智能手表物理按键翻译并进行语音直译的方法 |
CN111399944A (zh) * | 2020-03-13 | 2020-07-10 | Tcl移动通信科技(宁波)有限公司 | 应用功能启动方法、装置、存储介质及移动终端 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110241829A1 (en) * | 2010-03-30 | 2011-10-06 | Jacqueline Baldwin | Remote keyless entry device |
CN103002136A (zh) * | 2012-11-20 | 2013-03-27 | 广东欧珀移动通信有限公司 | 一种移动终端及其录音方法、系统 |
CN103558990A (zh) * | 2013-11-05 | 2014-02-05 | 广东欧珀移动通信有限公司 | 一种移动终端快速打开或操作应用程序的方法及系统 |
CN104660777A (zh) * | 2013-11-18 | 2015-05-27 | 希姆通信息技术(上海)有限公司 | 触屏手机及其物理按键的功能设置方法 |
-
2016
- 2016-11-24 CN CN201611058798.0A patent/CN106708562B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110241829A1 (en) * | 2010-03-30 | 2011-10-06 | Jacqueline Baldwin | Remote keyless entry device |
CN103002136A (zh) * | 2012-11-20 | 2013-03-27 | 广东欧珀移动通信有限公司 | 一种移动终端及其录音方法、系统 |
CN103558990A (zh) * | 2013-11-05 | 2014-02-05 | 广东欧珀移动通信有限公司 | 一种移动终端快速打开或操作应用程序的方法及系统 |
CN104660777A (zh) * | 2013-11-18 | 2015-05-27 | 希姆通信息技术(上海)有限公司 | 触屏手机及其物理按键的功能设置方法 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109933807A (zh) * | 2017-12-19 | 2019-06-25 | 葫芦科技有限公司 | 一种通过智能手表物理按键翻译并进行语音直译的方法 |
CN109739398A (zh) * | 2018-04-20 | 2019-05-10 | 北京字节跳动网络技术有限公司 | 一种操作界面显示方法和装置及一种终端设备 |
CN111399944A (zh) * | 2020-03-13 | 2020-07-10 | Tcl移动通信科技(宁波)有限公司 | 应用功能启动方法、装置、存储介质及移动终端 |
Also Published As
Publication number | Publication date |
---|---|
CN106708562B (zh) | 2020-05-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107506291B (zh) | 一种基于数据采集的分析方法及装置 | |
CN105677477B (zh) | 一种优化应用程序资源的方法、装置及电子设备 | |
CN106708562A (zh) | 通过点击Android的物理按键运行应用程序的方法及系统 | |
WO2019114303A1 (zh) | 蓝牙连接方法及装置 | |
CN105072139B (zh) | 推荐方法和装置 | |
CN109002457A (zh) | 应用程序的下载渠道统计处理方法、装置及电子设备 | |
CN105472412B (zh) | 一种区分智能电视状态的大数据处理方法 | |
CN108632112A (zh) | 网络检测方法、装置、计算机可读存储介质和计算机设备 | |
CN112054822B (zh) | 蓝牙测试方法及装置、电子设备、存储介质 | |
CN105159721A (zh) | 一种多模式启动智能设备的方法及其系统 | |
CN102622254B (zh) | 电视机宕机处理方法和系统 | |
WO2019080622A1 (zh) | 应用的功能实现方法及装置、终端、存储介质和处理器 | |
CN105468504A (zh) | 程序测试方法及装置 | |
CN105893019A (zh) | 用于智能手机的用户手册呼出方法和装置 | |
CN105677689B (zh) | 日志记录方法及装置 | |
CN113660359A (zh) | 域名解析记录的管理方法及装置、存储介质及电子设备 | |
CN103324572A (zh) | 电力二次系统的操作系统性能测试方法及装置 | |
CN107888690A (zh) | 响应时间的统计方法及系统 | |
CN110298001B (zh) | 日志数据包的获取方法和装置及计算机可读存储介质 | |
CN106445479A (zh) | 信息推送方法及装置 | |
CN106201464A (zh) | 一种冻结应用的应用图标处理方法及移动终端 | |
CN106161768B (zh) | 一种通话设备选取方法及装置 | |
CN105577511B (zh) | 用户账户更新提醒方法及装置 | |
CN105718109B (zh) | 一种触控显示屏的重压处理方法及移动终端 | |
CN109544732B (zh) | 电子锁连接方法、装置、电子设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |