CN114692093B - 一种应用程序安装方法及电子设备 - Google Patents
一种应用程序安装方法及电子设备 Download PDFInfo
- Publication number
- CN114692093B CN114692093B CN202210587571.4A CN202210587571A CN114692093B CN 114692093 B CN114692093 B CN 114692093B CN 202210587571 A CN202210587571 A CN 202210587571A CN 114692093 B CN114692093 B CN 114692093B
- Authority
- CN
- China
- Prior art keywords
- electronic device
- request
- application program
- mobile phone
- application
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 95
- 238000009434 installation Methods 0.000 claims abstract description 329
- 238000012360 testing method Methods 0.000 claims abstract description 305
- 230000004044 response Effects 0.000 claims abstract description 10
- 238000012795 verification Methods 0.000 claims description 53
- 238000004590 computer program Methods 0.000 claims description 11
- 238000003860 storage Methods 0.000 claims description 10
- 238000002360 preparation method Methods 0.000 claims 1
- 238000004519 manufacturing process Methods 0.000 abstract description 14
- 230000006870 function Effects 0.000 description 48
- 238000012545 processing Methods 0.000 description 30
- 239000010410 layer Substances 0.000 description 27
- 230000003993 interaction Effects 0.000 description 15
- 238000010586 diagram Methods 0.000 description 13
- 238000007726 management method Methods 0.000 description 11
- 238000011900 installation process Methods 0.000 description 9
- 238000004891 communication Methods 0.000 description 7
- 238000012217 deletion Methods 0.000 description 5
- 230000037430 deletion Effects 0.000 description 5
- 238000010923 batch production Methods 0.000 description 4
- 230000001413 cellular effect Effects 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000009877 rendering Methods 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 235000019800 disodium phosphate Nutrition 0.000 description 2
- 230000001537 neural effect Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 210000000988 bone and bone Anatomy 0.000 description 1
- 239000012792 core layer Substances 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000011990 functional testing Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 230000006698 induction Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/105—Arrangements for software license management or administration, e.g. for managing licenses at corporate level
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3664—Environments for testing or debugging software
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/44—Program or device authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M1/00—Substation equipment, e.g. for use by subscribers
- H04M1/24—Arrangements for testing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M1/00—Substation equipment, e.g. for use by subscribers
- H04M1/72—Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
- H04M1/724—User interfaces specially adapted for cordless or mobile telephones
- H04M1/72403—User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
- H04M1/72406—User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality by software upgrading or downloading
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M1/00—Substation equipment, e.g. for use by subscribers
- H04M1/72—Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
- H04M1/724—User interfaces specially adapted for cordless or mobile telephones
- H04M1/72403—User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
- H04M1/72409—User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality by interfacing with external accessories
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Human Computer Interaction (AREA)
- Computer Networks & Wireless Communication (AREA)
- Multimedia (AREA)
- Technology Law (AREA)
- Quality & Reliability (AREA)
- Telephone Function (AREA)
- Stored Programmes (AREA)
Abstract
本申请提供一种应用程序安装方法及电子设备,涉及电子技术领域,以提高在手机等电子设备上安装应用程序时的安装效率和测试效率,满足产线批量测试的需求。该方法包括:第一电子设备接收用户的第一操作;响应于第一操作,第一电子设备向至少一个第二电子设备发送第一请求;第一请求用于请求第二电子设备设置第一标识,第一标识用于指示具有第一应用程序的安装权限;第一应用程序用于对第二电子设备的操作***进行测试;第一电子设备向第二电子设备发送第二请求,第二请求用于请求第二电子设备安装第一应用程序。
Description
技术领域
本申请涉及电子技术领域,尤其涉及一种应用程序安装方法及电子设备。
背景技术
目前,手机在出厂前需要对手机的操作***进行测试,来确定手机的操作***的各项功能是否正常。
通常可以在手机中安装测试应用程序对应的应用程序包(Android applicationpackage,APK),通过该测试APK可以对手机的操作***的各项功能进行测试。手机安装测试APK,可以通过以下三种方式安装方式:1、测试人员可以使用手机刷根root包,从而获取根root权限,得到根root权限之后,手机可以安装测试APK。2、测试人员也可以使用手机从应用商店,下载授权后的测试APK并进行安装。3、测试人员也可以打开手机的开发者选项,手动设置通用串行总线调试(universal serial bus debug,USB debug)权限后,手机可以获取测试APK的安装权限并进行安装。
然而,上述三种测试APK的安装方式,均需要用户在手机上进行操作才能获取到测试APK的安装权限。这就导致测试APK的安装效率低、测试效率低,难以满足产线批量测试的需求。
发明内容
本申请实施例提供一种应用程序安装方法及电子设备,以提高在手机等电子设备上安装应用程序时的安装效率和测试效率,满足产线批量测试的需求。
为达到上述目的,本申请实施例采用如下技术方案:
第一方面,本申请实施例提供一种应用程序安装方法,应用于应用程序安装***,该应用程序安装***可以包括第一电子设备以及与第一电子设备连接的至少一个第二电子设备,该方法可以包括:第一电子设备接收用户的第一操作,第一操作用于触发第一电子设备向第二电子设备发送第一请求,第一请求用于请求第二电子设备设置第一标识,第一标识用于指示具有第一应用程序的安装权限;第一应用程序用于对第二电子设备的操作***进行测试;响应于第一操作,第一电子设备向第二电子设备发送第一请求;第二电子设备接收第一请求,并根据第一请求设置第一标识;第一电子设备向第二电子设备发送第二请求,第二请求用于请求第二电子设备安装第一应用程序;第二电子设备接收第二请求,并在第二电子设备包括第一应用程序对应的所述第一标识的情况下,安装第一应用程序。
在一些可能的涉及中,该应用程序安装方法可以用于,在第二电子设备出厂前在第二电子设备上安装测试应用程序(即第一应用程序),以对第二电子设备的操作***等各项功能进行测试。
基于第一方面所述的方法,通过第一电子设备(如笔记本电脑)向至少一个第二电子设备(如手机)发送设置第一应用程序安装权限的请求,从而至少一个第二电子设备可以根据第一电子设备发送的请求设置对应的第一应用程序的安装权限,也就是说,本申请的方案是不同第二电子设备根据第一电子设备发送的请求设置对应的安装权限,从而不需要用户在每个第二电子设备上分别进行操作才能获取到第一应用程序的安装权限,能够减少第一应用程序安装过程中用户在不同第二电子设备上的操作,从而能够提高在每个第二电子设备上安装第一应用程序的效率。由于第一应用程序用于对第二电子设备的操作***进行测试,本申请的方案能够提高在第二电子设备上安装第一应用程序的效率,因此能够提高对第二电子设备进行测试的测试效率。
且由于在安装第一应用程序时不需要测试人员在第二电子设备上进行操作才能获取到应用程序的安装权限,从而能够使第一应用程序同时在多个第二电子设备(如手机)上进行安装,即能够满足产线批量生产以及测试的需求。
此外,本申请的方案是通过第二电子设备根据第一电子设备的请求,设置第一应用程序的安装权限,从而第二电子设备可以根据安装权限安装第一应用程序,因此,不需要在第二电子设备(如手机)的操作***中预制第一应用程序,从而能够通过对第二电子设备进行恢复出厂等设置,删除第二电子设备中的第一应用程序以及第一应用程序对应的数据,从而能够提高第二电子设备的使用空间,以及避免数据的泄露。
结合第一方面,在另一种可能的实现方式中,上述第一电子设备向第二电子设备发送第一请求,可以包括:第一电子设备通过第一密钥加密第一请求;第一电子设备向第二电子设备发送加密之后的第一请求。
基于该可能的实现方式,通过第一电子设备向第二电子设备发送的是加密之后的第一请求,能够提高第一请求的安全性,且能够通过第二电子设备对加密之后第一请求进行解密,从而验证第一请求是否有效。
结合第一方面,在另一种可能的实现方式中,上述第二电子设备根据第一请求设置第一标识,可以包括:第二电子设备通过第二密钥解密加密之后的第一请求,第二密钥与第一密钥对应;在第二电子设备通过第二密钥解密成功的情况下,第二电子设备根据第一请求设置第一标识。
基于该可能的实现方式,通过第二电子设备使用对应的密钥对加密之后的第一请求进行解密,能够验证第一请求是否有效。
结合第一方面,在另一种可能的实现方式中,上述应用程序安装方法,还可以包括:第二电子设备接收用户的第二操作,第二操作用于触发第二电子设备删除第一应用程序;响应于第二操作,第二电子设备删除第一应用程序以及第一应用程序对应的数据。
基于该可能的实现方式,由于第一应用程序不是在第二电子设备的操作***中预制的应用程序,因此,第一应用程序可以通过对第二电子设备进行恢复出厂等设置,删除第二电子设备中的第一应用程序以及第一应用程序对应的数据,从而能够提高第二电子设备的使用空间,以及避免数据的泄露。
结合第一方面,在另一种可能的实现方式中,第二操作为用户触发第二电子设备恢复出厂设置的操作,上述应用程序安装方法,还可以包括:第二电子设备删除第一标识。
基于该可能的实现方式,在第二电子设备恢复出厂设置时,第二电子设备可以删除第一应用程序对应的安装权限,从而能够进一步提高第二电子设备的使用空间,以及避免数据的泄露。
结合第一方面,在另一种可能的实现方式中,上述第一电子设备可以为电脑,上述第二电子设备可以为手机。
基于该可能的实现方式,可以通过电脑向手机发送设置第一应用程序安装权限的请求,从而手机可以根据电脑发送的请求设置对应的第一应用程序的安装权限,从而不需要用户在手机上进行操作才能获取到第一应用程序的安装权限,能够减少第一应用程序安装过程中用户的操作,从而能够提高第一应用程序的安装效率。
结合第一方面,在另一种可能的实现方式中,第一应用程序可以为人机交互功能测试***MMI***。
基于该可能的实现方式,第二电子设备可以根据第一电子设备发送的请求设置对应的人机交互功能测试***MMI***的安装权限,从而第二电子设备可以安装人机交互功能测试***MMI***,并对第二电子设备的操作***进行测试。
第二方面,本申请实施例提供一种应用程序安装方法,应用于第一电子设备,第一电子设备与至少一个第二电子设备已连接,该应用程序安装方法,可以包括:第一电子设备接收用户的第一操作;响应于第一操作,第一电子设备向第二电子设备发送第一请求;第一请求用于请求第二电子设备设置第一标识,第一标识用于指示具有第一应用程序的安装权限;第一应用程序用于对第二电子设备的操作***进行测试;第一电子设备向第二电子设备发送第二请求,第二请求用于请求第二电子设备安装第一应用程序。
基于第二方面所述的方法,通过第一电子设备(如笔记本电脑)向至少一个第二电子设备(如手机)发送设置第一应用程序安装权限的请求,从而第二电子设备可以根据第一电子设备发送的请求设置对应的第一应用程序的安装权限,也就是说,本申请的方案是第二电子设备根据第一电子设备发送的请求设置对应的安装权限,从而不需要用户在第二电子设备上进行操作才能获取到第一应用程序的安装权限,能够减少第一应用程序安装过程中用户在第二电子设备上的操作,从而能够提高在第二电子设备上安装第一应用程序的安装效率。由于第一应用程序用于对第二电子设备的操作***进行测试,本申请的方案能够提高在第二电子设备上安装第一应用程序的效率,因此能够提高对第二电子设备进行测试的测试效率。且由于第一电子设备可以同时向多个第二电子设备发送第一请求,从而能够使第一应用程序同时在多个第二电子设备上进行安装,即能够满足产线批量生产以及测试的需求。
此外,本申请的方案是通过第二电子设备根据第一电子设备的请求,设置第一应用程序的安装权限,从而第二电子设备可以根据安装权限安装第一应用程序,因此,不需要在第二电子设备(如手机)的操作***中预制第一应用程序,从而能够通过对第二电子设备进行恢复出厂等设置,删除第二电子设备中的第一应用程序以及第一应用程序对应的数据,从而能够提高第二电子设备的使用空间,以及避免数据的泄露。
结合第二方面,在另一种可能的实现方式中,上述第一电子设备向第二电子设备发送第二请求,可以包括:第一电子设备通过第一密钥加密第一请求;第一电子设备向第二电子设备发送加密之后的第一请求。
基于该可能的实现方式,通过第一电子设备向第二电子设备发送的是加密之后的第一请求,能够提高第一请求的安全性,且能够通过第二电子设备对加密之后第一请求进行解密,从而验证第一请求是否有效。
结合第二方面,在另一种可能的实现方式中,上述第一电子设备可以为电脑,上述第二电子设备可以为手机。
基于该可能的实现方式,可以通过电脑向手机发送设置第一应用程序安装权限的请求,从而手机可以根据电脑发送的请求设置对应的第一应用程序的安装权限,从而不需要用户在手机上进行操作才能获取到第一应用程序的安装权限,能够减少第一应用程序安装过程中用户的操作,从而能够提高第一应用程序的安装效率。
结合第二方面,在另一种可能的实现方式中,第一应用程序可以为人机交互功能测试***MMI***。
基于该可能的实现方式,第二电子设备可以根据第一电子设备发送的请求设置对应的人机交互功能测试***MMI***的安装权限,从而第二电子设备可以安装人机交互功能测试***MMI***,并对第二电子设备的操作***进行测试。
第三方面,本申请实施例提供一种应用程序安装方法,应用于第二电子设备,第二电子设备与第一电子设备已连接,该应用程序安装方法,可以包括:第二电子设备接收第一电子设备发送的第一请求,第一请求用于请求第二电子设备设置第一标识,第一标识用于指示具有第一应用程序的安装权限;第一应用程序用于对第二电子设备的操作***进行测试;第二电子设备接收第一请求,并根据第一请求设置第一标识;第二电子设备接收第一电子设备发送的第二请求,第二请求用于请求第二电子设备安装第一应用程序;在第二电子设备包括第一应用程序对应的第一标识的情况下,第二电子设备安装第一应用程序。
基于第三方面所述的方法,通过第一电子设备向第二电子设备发送设置第一应用程序安装权限的请求,从而第二电子设备可以根据第一电子设备发送的请求设置对应的第一应用程序的安装权限,也就是说,本申请的方案是第二电子设备根据第一电子设备发送的请求设置对应的安装权限,从而不需要用户在第二电子设备上进行操作才能获取到第一应用程序的安装权限,能够减少第一应用程序在第二电子设备上安装过程中用户的操作,从而能够提高在第二电子设备上安装第一应用程序的效率。由于第一应用程序用于对第二电子设备的操作***进行测试,本申请的方案能够提高在第二电子设备上安装第一应用程序的效率,因此能够提高对第二电子设备进行测试的测试效率。
且本申请的方案是通过第二电子设备根据第一电子设备的请求,设置第一应用程序的安装权限,从而第二电子设备可以根据安装权限安装第一应用程序,因此,不需要在第二电子设备(如手机)的操作***中预制第一应用程序,从而能够通过对第二电子设备进行恢复出厂等设置,删除第二电子设备中的第一应用程序以及第一应用程序对应的数据,从而能够提高第二电子设备的使用空间,以及避免数据的泄露。
结合第三方面,在另一种可能的实现方式中,上述第一请求可以是第一电子设备通过第一密钥加密之后的请求,上述第二电子设备根据第一请求设置第一标识,可以包括:第二电子设备通过第二密钥解密加密之后的第一请求,第二密钥与第一密钥对应;在第二电子设备通过第二密钥解密成功的情况下,第二电子设备根据第一请求设置第一标识。
基于该可能的实现方式,通过第二电子设备使用对应的密钥对加密之后的第一请求进行解密,能够验证第一请求是否有效。
结合第三方面,在另一种可能的实现方式中,上述应用程序安装方法,还可以包括:第二电子设备接收用户的第二操作,第二操作用于触发第二电子设备删除第一应用程序;响应于第二操作,第二电子设备删除第一应用程序以及第一应用程序对应的数据。
基于该可能的实现方式,由于第一应用程序不是在第二电子设备的操作***中预制的应用程序,因此,第一应用程序可以通过对第二电子设备进行恢复出厂等设置,删除第二电子设备中的第一应用程序以及第一应用程序对应的数据,从而能够提高第二电子设备的使用空间,以及避免数据的泄露。
结合第三方面,在另一种可能的实现方式中,第二操作为用户触发第二电子设备恢复出厂设置的操作,上述应用程序安装方法,还可以包括:第二电子设备删除第一标识。
基于该可能的实现方式,在第二电子设备恢复出厂设置时,第二电子设备可以删除第一应用程序对应的安装权限,从而能够进一步提高第二电子设备的使用空间,以及避免数据的泄露。
结合第三方面,在另一种可能的实现方式中,上述第一电子设备可以为电脑,上述第二电子设备可以为手机。
基于该可能的实现方式,可以通过电脑向手机发送设置第一应用程序安装权限的请求,从而手机可以根据电脑发送的请求设置对应的第一应用程序的安装权限,从而不需要用户在手机上进行操作才能获取到第一应用程序的安装权限,能够减少第一应用程序安装过程中用户的操作,从而能够提高第一应用程序的安装效率。
结合第三方面,在另一种可能的实现方式中,第二电子设备可以包括指令收发模块和指令验证模块;上述第二电子设备通过第二密钥解密加密之后的第一请求,可以包括:指令收发模块接收第一电子设备发送的加密之后的第一请求;指令收发模块向指令验证模块发送加密之后的第一请求;指令验证模块接收加密之后的第一请求,并根据通过第二密钥解密加密之后的第一请求;第二电子设备根据所述第一请求设置所述第一标识,可以包括:在指令验证模块通过第二密钥解密成功的情况下,指令验证模块根据第一请求,设置第一标识。
基于该可能的实现方式,通过第二电子设备使用对应的密钥对加密之后的第一请求进行解密,能够验证第一请求是否有效。
结合第三方面,在另一种可能的实现方式中,上述第二电子设备还可以包括安装权限获取模块;上述第二电子设备接收第一电子设备发送的第二请求,可以包括:指令收发模块接收第一电子设备发送的第二请求;第二电子设备安装第一应用程序,包括:指令收发模块向安装权限获取模块发送第二请求;安装权限获取模块根据第二请求,确定指令验证模块包括第一应用程序对应的第一标识的情况下,安装权限获取模块安装第一应用程序。
基于该可能的实现方式,在第二电子设备需要安装第一应用程序时,第二电子设备可以确定是否包括第一应用程序对应的安装权限(即第一标识),在第二电子设备包括第一应用程序对应的安装权限的情况下,第二电子设备可以安装第一应用程序,也就是说,在第二电子设备安装第一应用程序时,从而不需要用户在第二电子设备上进行操作才能获取到第一应用程序的安装权限,能够减少第一应用程序安装过程中用户的操作,从而能够提高第一应用程序的安装效率。
结合第三方面,在另一种可能的实现方式中,第一应用程序可以为人机交互功能测试***MMI***。
基于该可能的实现方式,第二电子设备可以根据第一电子设备发送的请求设置对应的人机交互功能测试***MMI***的安装权限,从而第二电子设备可以安装人机交互功能测试***MMI***,并对第二电子设备的操作***进行测试。
第四方面,本申请实施例提供一种应用程序安装装置,该应用程序安装装置可以应用于第一电子设备,用于实现上述第二方面中的方法。该应用程序安装装置的功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。硬件或软件包括一个或多个与上述功能相对应的模块,例如,接收模块和发送模块等。
其中,接收模块,可以用于接收用户的第一操作。
发送模块,可以用于响应于第一操作,第一电子设备向第二电子设备发送第一请求;第一请求用于请求第二电子设备设置第一标识,第一标识用于指示具有第一应用程序的安装权限;第一应用程序用于对第二电子设备的操作***进行测试。
发送模块,还可以用于向第二电子设备发送第二请求,第二请求用于请求第二电子设备安装第一应用程序。
结合第四方面,在另一种可能的实现方式中,上述应用程序安装装置还可以包括加密模块。
加密模块,可以用于通过第一密钥加密第一请求。
发送模块,还可以用于向第二电子设备发送加密之后的第一请求。
结合第四方面,在另一种可能的实现方式中,上述第一电子设备可以为电脑,上述第二电子设备可以为手机。
第五方面,本申请实施例提供一种应用程序安装装置,该应用程序安装装置可以应用于第二电子设备,用于实现上述第三方面中的方法。该应用程序安装装置的功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。硬件或软件包括一个或多个与上述功能相对应的模块,例如,接收模块、设置模块和安装模块等。
接收模块,可以用于第二电子设备接收第一电子设备发送第一请求,第一请求用于请求第二电子设备设置第一标识,第一标识用于指示具有第一应用程序的安装权限;第一应用程序用于对第二电子设备的操作***进行测试。
设置模块,可以用于根据第一请求设置第一标识。
接收模块,还可以用于接收第一电子设备发送的第二请求,第二请求用于请求第二电子设备安装第一应用程序。
安装模块,可以用于在第二电子设备包括第一应用程序对应的第一标识的情况下,第二电子设备安装第一应用程序。
结合第五方面,在另一种可能的实现方式中,上述应用程序安装装置,还可以包括解密模块。
解密模块,可以用于通过第二密钥解密第一请求,第二密钥与第一密钥对应。
设置模块,还可以用于在第二电子设备通过第二密钥解密成功的情况下,根据第一请求设置第一标识。
结合第五方面,在另一种可能的实现方式中,接收模块,还可以用于接收用户的第二操作,第二操作用于触发第二电子设备删除第一应用程序。
上述应用程序安装装置,还可以包括删除模块。
删除模块,还可以用于响应于第二操作,第二电子设备删除第一应用程序以及第一应用程序对应的数据。
结合第五方面,在另一种可能的实现方式中,删除模块,还可以用于删除第一标识。
结合第五方面,在另一种可能的实现方式中,上述第一电子设备可以为电脑,上述第二电子设备可以为手机。
第六方面,提供了一种应用程序安装设备,该应用程序安装设备具有实现上述第二方面或者第三方面所述的方法的功能。该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。该硬件或软件包括一个或多个与上述功能相对应的模块。
第七方面,提供了一种应用程序安装设备,包括:处理器和存储器;该存储器用于存储计算机执行指令,当该应用程序安装设备运行时,该处理器执行该存储器存储的该计算机执行指令,以使该应用程序安装设备执行如上述第二方面或者第三方面中任一项所述的应用程序安装方法。
第八方面,提供了一种应用程序安装设备,包括:处理器;所述处理器用于与存储器耦合,并读取存储器中的指令之后,根据所述指令执行如上述第二方面或者第三方面中任一项所述的应用程序安装方法。
第九方面,本申请实施例提供一种计算机可读存储介质,其上存储有计算机程序指令。当计算机程序指令被电子设备执行时,使得电子设备实现如第二方面或第二方面的可能的实现方式中任一项所述的应用程序安装方法;或者,当计算机程序指令被电子设备执行时,使得电子设备实现如第三方面或第三方面的可能的实现方式中任一项所述的应用程序安装方法。
第十方面,本申请实施例提供一种计算机程序产品,包括计算机可读代码,当所述计算机可读代码在电子设备中运行时,使得电子设备实现如第二方面或第二方面的可能的实现方式中任一项所述的应用程序安装方法;或者,当所述计算机可读代码在电子设备中运行时,使得电子设备实现如第三方面或第三方面的可能的实现方式中任一项所述的应用程序安装方法。
第十一方面,提供了一种装置(例如,该装置可以是芯片***),该装置包括处理器,用于支持第一设备实现上述第一方面中所涉及的功能。该装置是芯片***时,可以由芯片构成,也可以包含芯片和其他分立器件。
第十二方面,本申请实施例提供一种应用程序安装***,该应用程序安装***可以包括:第一电子设备以及与第一电子设备连接的至少一个第二电子设备;第一电子设备可以用于执行如上述第二方面或第二方面的可能的实现方式中任一项所述的应用程序安装方法,第二电子设备可以用于执行如上述第三方面或第三方面的可能的实现方式中任一项所述的应用程序安装方法。
应当理解的是,上述第四方面至第十二方面的有益效果可以参见上述第一方面、第二方面以及第三方面中的相关描述,在此不再赘述。
附图说明
图1为本申请实施例提供的应用程序安装***的示意图;
图2为本申请实施例提供的一种电子设备的硬件结构示意图一;
图3为本申请实施例提供的一种电子设备的硬件结构示意图二;
图4为本申请实施例提供的一种电子设备的软件结构示意图;
图5为本申请实施例提供的一种应用程序安装方法的流程示意图一;
图6为本申请实施例提供的一种应用程序安装方法的流程示意图二;
图7为本申请实施例提供的电子设备的显示界面示意图;
图8为本申请实施例提供的删除应用程序的流程示意图;
图9为本申请实施例提供的测试流程示意图;
图10为本申请实施例提供的一种应用程序安装方法的流程示意图三;
图11为本申请实施例提供的一种应用程序安装装置的结构示意图一;
图12为本申请实施例提供的一种应用程序安装装置的结构示意图二。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本申请的描述中,除非另有说明,“多个”的含义是两个或两个以上。
目前,电子设备,如手机在出厂前需要进行各种功能测试。如对手机的操作***进行人机交互测试,来确定手机的操作***的各项功能是否正常。在手机的操作***的各项功能均正常的情况下,该手机可以作为商用版本的手机。也就是说,最终用户拿到手机是商用版本的手机。
通常可以在手机中安装测试的应用程序,如称为测试应用程序,通过该测试应用程序可以对手机的操作***的各项功能进行测试。在手机中安装测试应用程序,即在手机中安装该测试应用程序对应的APK(可以称为测试APK)。在手机中安装该测试APK之后,通过该测试APK可以对手机的操作***的各项功能进行测试。即手机安装测试APK之后,手机可以运行该测试APK,手机运行安装的测试APK即手机运行对应的测试应用程序。
通常测试APK可以通过以下三种方式进行安装:1、测试人员可以使用手机刷root包,从而获取root权限,得到root权限之后,手机即得到了测试APK的安装权限,从而手机可以安装测试APK。2、测试人员也可以通过手机从应用商店,下载授权后的测试APK并进行安装,即从应用商店下载的测试APK包括了该测试APK对应的安装权限。3、测试人员还可以通过打开手机的开发者选项,手动设置USB debug权限后,手机可以获取测试APK的安装权限并进行安装。在手机的操作***中安装测试APK之后,测试人员可以通过该测试APK人工测试手机操作***的各项功能,也可以由手机通过该预制测试APK进行自动测试。人工测试会导致测试的耗时较长,且人工测试的人力成本较高。而自动测试会导致有些功能没有测试到,因此,通常采用自动测试为主,人工测试进行补充测试的方式进行测试。
然而,上述三种测试APK的安装方式,均需要用户在手机上进行操作才能获取到测试APK的安装权限。这就导致测试APK的安装效率低。
且由于在手机上安装测试APK时,均需要用户进行操作,这就使得测试APK无法同时在多个手机上进行安装,即现有的测试APK的安装方式无法满足产线批量生产的需求。
相关技术中,可以在商用版本的手机的操作***中预制测试APK,通过该预制测试APK可以对手机的操作***的各项功能进行测试。预制测试APK,即该测试APK是预制在手机的操作***中,也就是说该测试APK为手机的操作***中自带的APK,操作***中自带的APK无法通过对手机进行恢复出厂设置,来删除该测试APK。
该相关技术是在手机的操作***预制测试APK,即测试APK是操作***中自带的APK,虽然该相关技术不需要用户在手机上进行操作才能获取到测试APK的安装权限,但是用户在使用手机时,不能删除该预制测试APK。这就导致手机的使用空间减小。
且由于该测试APK不能被删除,会导致手机进行测试时的测试数据,也不能被删除,进一步导致手机的使用空间减小。且在用户使用手机时,测试数据容易被泄露,导致手机的测试数据的安全性较低。
针对上述问题,本申请实施例提供一种应用程序安装方法,应用于应用程序安装***,该应用程序安装***可以包括第一电子设备和与第一电子设备连接的至少一个第二电子设备,该方法可以通过第一电子设备(如笔记本电脑)向至少一个第二电子设备(如手机)发送设置应用程序(如测试应用程序)安装权限(即应用程序对应的APK的安装权限)的请求,从而至少一个第二电子设备可以根据第一电子设备发送的请求设置对应的应用程序的安装权限,也就是说,本申请的方案是第二电子设备根据第一电子设备发送的请求设置对应的应用程序的安装权限,从而不需要用户在第二电子设备上进行操作才能获取到应用程序的安装权限,能够减少测试应用程序在第二电子设备上安装过程中用户的操作,从而能够提高在第二电子设备上安装测试应用程序的效率。由于测试应用程序用于对第二电子设备的操作***进行测试,本申请的方案能够提高在第二电子设备上安装测试应用程序的效率,因此能够提高对第二电子设备进行测试的测试效率。
在第二电子设备设置了应用程序对应的安装权限之后,第二电子设备(如手机)接收到第一电子设备(如笔记本电脑)发送的安装应用程序请求(即安装应用程序对应的APK的请求)时,第二电子设备可以确定第二电子设备中是否包括该应用程序对应的权限标识(即应用程序的安装权限),在第二电子设备包括应用程序的权限标识的情况下,第二电子设备可以安装该应用程序(即安装应用程序对应的APK)。
也就是说,本申请的方案在第二电子设备(如手机)需要安装应用程序时,可以通过第二电子设备确定第二电子设备中是否包括应用程序对应的权限标识(即应用程序的安装权限),从而不需要测试人员进行操作才能获取到应用程序的安装权限,进一步能够提高在第二电子设备上安装应用程序的效率。
且由于在安装应用程序(即安装应用程序对应的APK)时不需要测试人员在第二电子设备(如手机)上进行操作才能获取到应用程序的安装权限,从而能够使应用程序同时在多个第二电子设备(如手机)上进行安装,即能够满足产线批量生产以及测试的需求。
此外,本申请的方案是通过第二电子设备(如手机)根据第一电子设备(如笔记本电脑)的请求,设置第一应用程序(如测试应用程序)的安装权限,从而第二电子设备可以根据安装权限安装第一应用程序,因此,不需要在第二电子设备(如手机)的操作***中预制第一应用程序,从而能够通过对第二电子设备进行恢复出厂等设置,删除第二电子设备中的第一应用程序以及第一应用程序对应的数据,从而能够提高第二电子设备的使用空间,以及避免数据的泄露。
下面对本申请实施例提供的应用程序安装方法进行描述。
例如,以第一电子设备为笔记本电脑以及第二电子设备为手机为例。如图1所示,应用程序安装***包括笔记本电脑01和两个手机02。应用程序安装***,也可以称为测试***,即测试***可以用来对手机的操作***进行测试。需要说明的是,应用程序安装***可以包括至少一个手机02,本申请实施例中以两个手机02为例进行示意说明。
笔记本电脑01与手机02之间可以建立连接,如笔记本电脑01与手机02之间可以通过USB方式建立连接,即笔记本电脑01与手机02之间可以进行USB通信。
在笔记本电脑01与手机02之间可以建立连接之后,笔记本电脑可以向手机02发送设置测试应用程序安装权限(即测试应用程序对应的APK的安装权限)的请求。在手机02接收到笔记本电脑01发送的设置测试应用程序对应的APK的安装权限的请求之后,手机02可以在手机02中设置并保存测试应用程序对应的APK的安装权限。
在手机02设置并保存测试应用程序对应的APK的安装权限之后,笔记本电脑01可以向手机02发送安装测试应用程序对应的APK请求,以请求手机02安装测试应用程序对应的APK。
在手机02接收到笔记本电脑01发送的安装测试应用程序对应的APK请求之后,手机02可以确定手机02中是否包括测试应用程序对应的APK对应的权限标识(即测试APK的安装权限)。
在手机02包括测试应用程序对应的APK对应的权限标识的情况下,手机02可以安装测试APK,即手机02可以安装测试应用程序。在手机02包括不测试应用程序对应的APK对应的权限标识的情况下,手机02不可以安装测试APK,即手机02不可以安装测试应用程序。
也就是说,笔记本电脑01可以向手机02发送设置测试应用程序安装权限(即应用程序对应的APK的安装权限)的请求,从而手机02可以根据笔记本电脑01发送的请求设置测试应用程序的安装权限,从而不需要用户在手机02上进行操作才能获取到测试应用程序的安装权限,能够减少测试应用程序安装过程中用户的操作,从而能够提高应用程序的安装效率。
且由于在安装测试应用程序,即安装测试应用程序对应的APK时不需要测试人员进行操作才能获取到测试应用程序对应的APK的安装权限,从而能够使测试应用程序对应的APK同时在多个手机上进行安装。测试应用程序对应的APK也不需要在手机02的操作***中预制,因此能够对手机02进行恢复出厂设置,删除第二电子设备中的测试应用程序对应的APK以及测试应用程序对应的测试数据,从而能够提高第二电子设备的使用空间,以及避免测试数据的泄露。
在手机02安装测试应用程序对应的APK成功之后,笔记本电脑01可以通过该测试APK对应的测试应用程序,对手机02的操作***的各项功能进行测试。笔记本电脑01还可以显示对手机02的操作***的各项功能进行测试的测试结果。
在一些示例中,上述第一电子设备可以是笔记本电脑、平板电脑、手持计算机,PC,个人数字助理(personal digital assistant,PDA)等的电子设备。本申请实施例在此对电子设备的具体形态不做限制。本申请实施例中以第一电子设备为笔记本电脑为例进行示意说明。
在一些示例中,上述第二电子设备可以是手机、平板电脑、手持计算机,个人计算机PC,蜂窝电话,PDA,可穿戴式设备等电子设备。本申请实施例中以第二电子设备为手机为例进行示意说明。
示例地,以第一电子设备为笔记本电脑为例,图2示出了本申请实施例提供的一种第一电子设备的结构示意图。
如图2所示,该笔记本电脑可以包括:处理器210,风扇211,外部存储器接口220,内部存储器221,USB接口230,充电管理模块240,电源管理模块241,电池242,显示屏250,天线,无线通信模块260,音频模块270,扬声器(即喇叭)270A,麦克风270C,耳机接口270B,触控板280,键盘290,以及摄像头291等。
其中,上述除显示屏250之外的其他器件(如处理器210,风扇211,外部存储器接口220,内部存储器221,USB接口230,充电管理模块240,电源管理模块241,电池242,天线,无线通信模块260,音频模块270,触控板280,扬声器270A,麦克风270C,耳机接口270B,键盘290和摄像头291等)均可以设置在笔记本电脑的底座。上述摄像头291还可设置于笔记本电脑的显示屏250的边框上。
可以理解的是,本实施例示意的结构并不构成对笔记本电脑的具体限定。在另一些实施例中,笔记本电脑可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器210可以包括一个或多个处理单元,例如:处理器210可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
控制器可以是笔记本电脑的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器210中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器210中的存储器为高速缓冲存储器。该存储器可以保存处理器210刚用过或循环使用的指令或数据。如果处理器210需要再次使用该指令或数据,可从存储器中直接调用。避免了重复存取,减少了处理器210的等待时间,因而提高了***的效率。
在一些实施例中,处理器210可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I2C)接口,集成电路内置音频(inter-integrated circuitsound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purposeinput/output,GPIO)接口,用户标识模块(subscriber identity module,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。
可以理解的是,本实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对笔记本电脑的结构限定。在另一些实施例中,笔记本电脑也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
笔记本电脑可以通过GPU,显示屏250,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏250和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器210可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。显示屏250用于显示图像,视频等。
外部存储器接口220可以用于连接外部存储卡,例如Micro SD卡,实现扩展笔记本电脑的存储能力。内部存储器221可以用于存储计算机可执行程序代码,可执行程序代码包括指令。处理器210通过运行存储在内部存储器221的指令,从而执行笔记本电脑的各种功能应用以及数据处理。例如,在本申请实施例中,处理器210可以通过执行存储在内部存储器221中的指令,内部存储器221可以包括存储程序区和存储数据区。
当然,可以理解的,上述图2所示仅仅为电子设备的形态为笔记本电脑时的示例性说明。若电子设备是手持计算机,PDA,个人计算机等其他设备形态时,电子设备的结构中可以包括比图2中所示更少的结构,也可以包括比图2中所示更多的结构,在此不作限制。
示例地,以第二电子设备为手机为例,图3示出了本申请实施例提供的一种第二电子设备的结构示意图。
如图3所示,电子设备可以包括处理器310,外部存储器接口320,内部存储器321,USB接口330,充电管理模块340,电源管理模块341,电池342,天线1,天线2,移动通信模块350,无线通信模块360,音频模块370,扬声器370A,受话器370B,麦克风370C,耳机接口370D,传感器模块380,按键390,马达391,指示器392,摄像头393,显示屏394,以及SIM卡接口395等。其中,传感器模块380可以包括压力传感器380A,陀螺仪传感器380B,气压传感器380C,磁传感器380D,加速度传感器380E,距离传感器380F,接近光传感器380G,指纹传感器380H,温度传感器380J,触摸传感器380K,环境光传感器380L,骨传导传感器380M等。
可以理解的是,本实施例示意的结构并不构成对电子设备的具体限定。在另一些实施例中,电子设备可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器310可以包括一个或多个处理单元,例如:处理器310可以包括应用处理器AP,调制解调处理器,图形处理器GPU,图像信号处理器ISP,控制器,存储器,视频编解码器,数字信号处理器DSP,基带处理器,和/或神经网络处理器NPU等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
控制器可以是电子设备的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器310中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器310中的存储器为高速缓冲存储器。该存储器可以保存处理器310刚用过或循环使用的指令或数据。如果处理器310需要再次使用该指令或数据,可从存储器中直接调用。避免了重复存取,减少了处理器310的等待时间,因而提高了***的效率。
在一些实施例中,处理器310可以包括一个或多个接口。接口可以包括集成电路I2C接口,集成电路内置音频I2S接口,脉冲编码调制PCM接口,通用异步收发传输器UART接口,移动产业处理器接口MIPI,通用输入输出GPIO接口,用户标识模块SIM接口,和/或通用串行总线USB接口等。
电子设备通过GPU,显示屏394,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏394和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器310可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
当然,可以理解的,上述图3所示仅仅为电子设备的形态为手机时的示例性说明。若电子设备是平板电脑,手持计算机,PC,PDA,可穿戴式设备(如:智能手表、智能手环)等其他设备形态时,电子设备的结构中可以包括比图3中所示更少的结构,也可以包括比图3中所示更多的结构,在此不作限制。
第一电子设备以及第二电子设备的软件***可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本申请实施例以分层架构的Android***为例,示例性说明电子设备的软件结构。
图4是本申请实施例的电子设备的软件结构框图。
分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将Android***分为四层,从上至下分别为应用程序层,应用程序框架层,安卓运行时(Android runtime)和***库,以及内核层。
应用程序层可以包括一系列应用程序包。如图4所示,应用程序包可以包括相机,图库,日历,电话,地图,导航,WLAN,蓝牙,音乐,视频,短信息等应用程序。
应用程序框架层为应用程序层的应用程序提供应用编程接口(applicationprogramming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。
如图4所示,应用程序框架层可以包括窗口管理器,内容提供器,视图***,电话管理器,资源管理器,通知管理器等。
窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。
内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。该数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。
视图***包括可视控件,例如显示文字的控件,显示图片的控件等。视图***可用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。
电话管理器用于提供电子设备的通信功能。例如通话状态的管理(包括接通,挂断等)。
资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。
通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在***顶部状态栏的通知,例如后台运行的应用程序的通知,还可以是以对话窗口形式出现在屏幕上的通知。例如在状态栏提示文本信息,发出提示音,电子设备振动,指示灯闪烁等。
Android Runtime包括核心库和虚拟机。Android runtime负责安卓***的调度和管理。
核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。
应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。
***库可以包括多个功能模块。例如:表面管理器(surface manager),媒体库(Media Libraries),三维图形处理库(例如:OpenGL ES),二维图形引擎(例如:SGL)等。
表面管理器用于对显示子***进行管理,并且为多个应用程序提供了二维和三维图层的融合。
媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如: MPEG4,H.264,MP3,AAC,AMR,JPG,PNG等。
三维图形处理库用于实现三维图形绘图,图像渲染,合成,和图层处理等。
二维图形引擎是二维绘图的绘图引擎。
内核层是硬件和软件之间的层。内核层至少包含显示驱动,摄像头驱动,音频驱动,传感器驱动。
可以理解的是,一般而言,第一电子设备以及第二电子设备功能的实现除了需要上述硬件的支持外,还需要软件模块的配合。
例如,继续以第一电子设备为笔记本电脑以及第二电子设备为手机为例。如图5所示,笔记本电脑01为了实现向手机02发送设置应用程序(如测试应用程序)的安装权限(即测试应用程序对应的APK的安装权限)请求的功能,不仅需要处理器,存储器等硬件的支持,还需要软件模块,如指令收发模块03以及加密服务模块04的配合,其中,软件和硬件之间可通过硬件连接层连接。
手机02为了实现接收笔记本电脑01发送的设置应用程序(如测试应用程序)的安装权限(即测试应用程序对应的APK的安装权限)请求的功能,并在手机02中设置应用程序对应的权限标识(即应用程序的安装权限),不仅需要处理器,存储器等硬件的支持,还需要软件模块,如指令收发模块05、指令验证模块06、验签服务器模块07以及安装权限获取模块08的配合,其中,软件和硬件之间可通过硬件连接层连接。
下面以第一电子设备为笔记本电脑以及第二电子设备为手机,应用程序为对手机进行测试的应用程序(可以称为测试应用程序)为例,结合附图1以及附图5对本申请实施例提供的应用程序安装方法进行说明。
在手机02上安装测试应用程序(即测试应用程序对应的APK)之前,需要在手机02上设置测试应用程序对应的权限标识(即测试应用程序对应的安装权限)。该权限标识可以指示手机02具有安装测试应用程序的权限,即手机02具有安装测试应用程序对应的APK的权限。
结合图5所示,在手机02上设置测试应用程序对应的安装权限(即测试应用程序对应的APK的安装权限)的过程可以包括:
笔记本电脑01上的指令收发模块03可以接收向手机02发送设置测试测试应用程序对应的权限标识的请求。指令收发模块03,可以为笔记本电脑01上的AT(attention)指令端口鉴权模块,即指令收发模块03可以向手机02发送指令,该发送的指令可以是AT指令。指令收发模块03也可以接收手机02发送的指令,该接收到的指令也可以是AT指令。
在指令收发模块03接收到向手机02发送设置测试应用程序对应的权限标识的请求之前,指令收发模块03可以获取笔记本电脑01上的加密服务模块04中的公钥。加密服务模块04中的公钥,可以与手机02中的验签服务器模块07中的私钥相对应,即利用公钥加密的数据,可以利用对应的私钥进行解密。
在指令收发模块03获取到公钥之后,可以利用公钥对设置测试应用程序对应的权限标识的请求进行加密,从而生成加密之后的设置测试应用程序对应的权限标识的请求。
在指令收发模块03生成加密之后的设置测试应用程序对应的权限标识的请求之后,可以向手机02中的指令收发模块05发送加密之后的设置测试应用程序对应的权限标识的请求。指令收发模块05,可以为手机02中的atcmd服务,即指令收发模块05可以向笔记本电脑01发送指令,该发送的指令可以是AT指令。指令收发模块05也可以接收笔记本电脑01发送的指令,该接收的指令可以是AT指令。
在指令收发模块05接收到加密之后的设置测试应用程序对应的权限标识的请求之后,可以向手机02中的指令验证模块06发送加密之后的设置测试应用程序对应的权限标识的请求。指令验证模块06,可以为手机中的生产希尔德hild服务端。在指令验证模块06为手机中的生产hild服务端时,指令收发模块05可以向生产hild客户端发送设置加密之后的设置测试应用程序对应的权限标识的请求,由生产hild客户端向生产hild服务端发送加密之后的设置测试应用程序对应的权限标识的请求。
在指令验证模块06接收到加密之后的设置测试应用程序对应的权限标识的请求之后,指令验证模块06可以验证该加密之后的设置测试应用程序对应的权限标识的请求是否合法。即指令验证模块06可以获取手机02的验签服务器模块07中的私钥,并利用私钥对加密之后的设置测试应用程序对应的权限标识的请求进行解密。
在解密成功,即验证加密之后的设置测试应用程序对应的权限标识的请求合法的情况下,指令验证模块06可以设置测试应用程序对应的权限标识,即设置该测试应用程序对应的安装权限。在指令验证模块06设置测试应用程序对的权限标识之后,指令验证模块06可以保存该标识。
由于该权限标识并不是手机02的操作***中自带的标识,而是通过笔记本电脑01发送的设置测试应用程序对应的权限标识的请求之后,手机02设置的根据该请求设置的,因此,在手机02恢复出厂设置时,手机02会将该测试应用程序对应的权限标识删除,也可以称为权限标识重启后失效。
在指令验证模块06设置测试应用程序对应的权限标识之后,可以向笔记本电脑01发送设置成功消息,用于指示设置测试应用程序对应的安装权限成功,即手机02设置测试应用程序对应的APK的安装权限成功。例如,指令验证模块06可以向指令收发模块05发送设置成功消息。在指令收发模块05接收到设置成功消息之后,可以向指令收发模块03发送设置成功消息。
在解密失败,即验证加密之后的设置测试应用程序对应的权限标识的请求不合法的情况下,指令验证模块06可以向指令收发模块05发送设置失败消息,用于指示设置测试应用程序对应的安装权限失败,即手机02设置测试应用程序对应的APK的安装权限失败。在手机02中的指令收发模块05接收到设置失败消息之后,可以向笔记本电脑01中的指令收发模块03发送设置失败消息。
在手机02设置测试应用程序对应的权限标识(即测试应用程序对应的APK的权限标识)之后,也就是说,笔记本电脑01上的指令收发模块03接收到手机02上的指令收发模块05发送的设置成功消息,笔记本电脑01可以向手机02上的安装权限获取模块08发送的安装测试应用程序(即安装测试应用程序对应的APK)请求。
例如,笔记本电脑01上的指令收发模块03可以向手机02上的指令收发模块05发送的安装测试应用程序请求。安装测试应用程序请求,可以为安卓调试桥接(android debugbridge,adb)指令。
在手机02中的指令收发模块05接收到安装测试应用程序请求之后,指令收发模块05可以向手机02上的安装权限获取模块08发送安装测试应用程序请求。
在安装权限获取模块08接收到安装测试应用程序请求之后,可以获取指令验证模块06中的权限标识,即安装权限获取模块08可以确定指令验证模块06中是否包括该测试应用程序对应的权限标识。
在安装权限获取模块08获取到指令验证模块06中的权限标识(即指令验证模块06中包括该测试应用程序对应的权限标识)的情况下,安装权限获取模块08获取到了测试应用程序对应的APK的安装权限,从而手机02可以安装该测试应用程序对应的APK,也就是说,手机02可以安装该测试应用程序。
在安装权限获取模块08获取不到指令验证模块06中的权限标识(即指令验证模块06中不包括该测试应用程序对应的权限标识)的情况下,即安装权限获取模块08没有获取到测试应用程序对应的APK的安装权限,从而手机02不可以安装该测试应用程序对应的APK,也就是说,手机02不可以安装该测试应用程序。
需要说明的是,上述笔记本电脑01的***为Android***时,笔记本电脑01中的指令收发模块03以及加密服务模块04可以位于Android***中的应用程序框架层。即笔记本电脑01中的指令收发模块03以及加密服务模块04,可以是应用程序框架层的模块。上述手机02的***为Android***时,手机02中的指令收发模块05、指令验证模块06、验签服务器模块07以及安装权限获取模块08可以位于Android***中的应用程序框架层。即手机02中的指令收发模块05、指令验证模块06、验签服务器模块07以及安装权限获取模块08,可以是应用程序框架层的模块。例如,如图4所示,手机02中的指令收发模块05、指令验证模块06、验签服务器模块07以及安装权限获取模块08可以位于手机的Android***中的应用程序框架层中。
下面对本申请实施例提供的应用程序安装方法进行描述。
以下结合附图6对本申请实施例提供的应用程序安装方法进行详细说明。如图6所示,以第一电子设备为笔记本电脑、第二电子设备为手机以及应用程序为测试应用程序为例进行示意说明,本申请实施例提供的应用程序安装方法可以包括以下S601-S619。
S601、笔记本电脑与手机建立连接。
在手机出厂前,需要对手机的操作***进行测试,如进行人机交互测试,来确定手机的操作***的各项功能是否正常。
在对手机进行测试时,可以将手机与测试设备,如笔记本电脑建立连接,从而可以通过笔记本电脑对手机的操作***的各项功能是否正常。在通过笔记本电脑对手机进行测试时,笔记本电脑上也可以显示测试的项目以及各测试项的测试结果,方便用户查看。
笔记本电脑与手机之间,可以建立有线连接,如可以通过USB方式建立连接,笔记本电脑与手机之间可以进行USB通信。笔记本电脑与手机之间,也可以建立无线连接。本申请实施例对此并不进行限定。
笔记本电脑可以与一个手机建立连接,还可以与多个手机建立连接,本申请实施例对此并不进行限定。
S602、笔记本电脑接收用户的第一操作,第一操作用于触发笔记本电脑向手机发送设置权限标识请求。
在笔记本电脑与手机建立连接之后,用户可以对笔记本电脑进行操作(如称为第一操作),从而触发笔记本电脑向手机发送设置测试应用程序对应的权限标识的请求,如称为设置权限标识请求,本申请实施例中可以称为第一请求。
设置权限标识请求,可以用于指示手机设置对应的应用程序的权限标识,如设置对手机的操作***进行测试的应用程序(可以称为测试应用程序)的权限标识。权限标识,可以是对应的应用程序的安装权限,即该应用程序的APK的安装权限。例如,权限标识可以表示对手机进行测试的应用程序的安装权限,即权限标识也可以标识该测试应用程序对应的APK的安装权限。
测试应用程序可以为人机交互功能测试***(man machine interface,MMI),测试应用程序对应的APK(可以称为测试APK)即为MMI***对应的应用程序安装包。在手机上安装MMI***之后,笔记本电脑可以通过手机上的MMI***对手机的蓝牙、重力感应(各类传感器)、接口、手机软硬件版本信息、按键、触屏等功能测试,也可以对手机背光、摄像头拍照等与视觉相关的功能进行测试,以及与音频相关的手机麦克风、手机听筒、手机外放的语音效果进行测试。
在一些示例中,设置权限标识请求,可以包括对应的应用程序的标识,该标识可以指示该应用程序。即设置权限标识请求,可以包括需要设置安装权限的应用程序(如测试应用程序)的标识,从而手机可以根据该应用程序的标识,设置与该应用程序对应的权限标识(即该应用程序对应的安装权限)。
在一些示例中,笔记本电脑与手机建立连接之后,笔记本电脑可以显示对手机进行测试的界面,该界面可以包括设置权限标识控件。该设置权限标识控件,可以用于触发笔记本电脑向手机发送设置权限标识请求。也就是说,笔记本电脑接收用户的第一操作,可以为笔记本电脑接收用户对设置权限标识控件进行触发操作,如点击操作。
例如,以笔记本电脑01与两个手机02,即手机1和手机2建立连接为例,如图7所示,笔记本电脑01可以显示对手机02进行测试的界面,该界面可以包括与笔记本电脑01连接的手机02的标识,即手机1以及手机2。该界面还可以显示与笔记本电脑01连接的手机02对应的设置权限标识控件,即手机1对应的设置权限标识控件601,手机2对应的设置权限标识控件602。在用户需要对手机1进行测试,即需要在手机1上安装测试应用程序时,用户可以触发设置权限标识控件601,从而笔记本电脑01可以向手机1发送设置权限标识请求。在用户需要对手机2进行测试,即需要在手机2上安装测试应用程序时,用户可以触发设置权限标识控件602,从而笔记本电脑01可以向手机2发送设置权限标识请求。
需要说明的是,在笔记本电脑与手机建立连接之后,笔记本电脑可以在接收到用户第一操作时,向手机发送设置权限标识请求。笔记本电脑也可以在与手机建立连接之后,自动向手机发送设置权限标识请求。本申请实施例对此并不进行限定。本申请实施例中是以笔记本电脑可以在接收到用户第一操作时,向手机发送设置权限标识请求为例进行示意说明。
S603、响应于第一操作,笔记本电脑生成设置权限标识请求。
在笔记本电脑接收用户的第一操作之后,作为响应,笔记本电脑可以根据第一操作,生成设置权限标识请求。设置权限标识请求,可以为AT指令,还可以为其他类型的指令。本申请实施例对此并不进行限定。
例如,结合图5所示,在笔记本电脑01接收用户的第一操作之后,笔记本电脑01生成设置权限标识请求,可以为笔记本电脑01,如笔记本电脑01的指令收发模块03根据第一操作,生成设置权限标识请求。
在一些示例中,在笔记本电脑的显示界面包括设置权限标识控件时,笔记本电脑接收用户对设置权限标识控件进行触发操作(即第一操作),如点击操作时,作为响应,笔记本电脑可以根据第一操作,生成设置权限标识请求(即第一请求)。
在一些示例中,笔记本电脑生成设置权限标识请求之后,笔记本电脑还可以对生成的设置权限标识请求进行加密。
例如,结合图5所示,在笔记本电脑01接收用户的第一操作之后,笔记本电脑01,如笔记本电脑01的指令收发模块03可以生成设置权限标识请求。在笔记本电脑01的指令收发模块03生成设置权限标识请求之后,笔记本电脑01的指令收发模块03可以获取笔记本电脑01中的加密服务模块04(如加密狗模块)中的公钥(本申请实施例中可以称为第一密钥)。在笔记本电脑01的指令收发模块03获取到公钥之后,笔记本电脑01的指令收发模块03可以通过该公钥对生成的设置权限标识请求进行加密。
需要说明的是,笔记本电脑01中的加密服务模块04中的公钥,可以与手机02中的私钥相对应,即利用公钥加密的设置权限标识请求,可以利用手机02中对应的私钥进行解密,从而得到解密后的设置权限标识请求。
S604、笔记本电脑向手机发送设置权限标识请求。
在笔记本电脑生成设置权限标识请求之后,笔记本电脑可以向手机发送生成设置权限标识请求,从而手机可以根据该设置权限标识请求,设置对应的应用程序的权限标识,即设置对应的应用程序的安装权限,也即设置对应的应用程序对应的APK的安装权限。
例如,继续结合图5所示,在笔记本电脑01的指令收发模块03生成设置权限标识请求之后,笔记本电脑01的指令收发模块03可以向手机02,如手机02中的指令收发模块05发送设置权限标识请求。
在一些示例中,笔记本电脑向手机发送的设置权限标识请求,还可以是经过加密后的设置权限标识请求。例如,笔记本电脑可以通过笔记本电脑中的公钥对设置权限标识请求进行加,笔记本电脑向手机发送通过公钥加密之后的设置权限标识请求。
S605、手机接收设置权限标识请求。
在手机接收到设置权限标识请求之后,手机可以根据该设置权限标识请求,设置对应的应用程序的权限标识,即设置对应的应用程序的安装权限,也即设置对应的应用程序对应的APK的安装权限。
例如,继续结合图5所示,手机接收设置权限标识请求,可以为手机02中的指令收发模块05接收笔记本电脑01中的指令收发模块03发送的设置权限标识请求。
在一些示例中,手机接收到的设置权限标识请求,可以是加密之后的请求。在手机接收到加密之后的设置权限标识请求之后,手机可以对该加密之后的设置权限标识请求进行解密,从而确定该加密之后的设置权限标识请求是否合法(即是否是有效的设置权限标识请求)。
S606、手机确定设置权限标识请求是否合法。
在手机接收到笔记本电脑发的设置权限标识请求之后,手机可以确定权限标识请求是否合法,从而可以确定笔记本电脑发送的设置权限标识请求是否为有效的设置权限标识请求。
在手机确定设置权限标识请求不合法的情况下,手机可以向笔记本电脑发送设置权限标识失败结果,即手机可以继续执行下手S607。在手机确定设置权限标识请求合法的情况下,手机可以设置权限标识,即手机可以继续执行下手S609。
在一些示例中,在笔记本电脑发送的设置权限标识请求是经过加密后的设置权限标识请求的情况下,手机确定设置权限标识请求是否合法可以包括:手机对加密后的设置权限标识请求进行解密,在手机对加密后的设置权限标识请求解密成功的情况下,手机可以确定笔记本电脑发送的设置权限标识请求合法,即手机可以确定笔记本电脑发送的设置权限标识请求是有效的请求。在手机对加密后的设置权限标识请求解密失败的情况下,手机可以确定笔记本电脑发送的设置权限标识请求不合法,即手机可以确定笔记本电脑发送的设置权限标识请求不是有效的请求。
例如,继续结合图5所示,在手机02的指令收发模块05接收到笔记本电脑01的指令收发模块03发送的设置权限标识请求,如加密之后的设置权限标识请求之后,指令收发模块05可以向指令验证模块06发送该加密之后的设置权限标识请求,从而指令验证模块06可以确定该加密之后的设置权限标识请求是否合法。
在指令验证模块06接收到指令收发模块05发送的加密之后的设置权限标识请求之后,指令验证模块06可以通过手机02中的验签服务器模块07获取对应的私钥(本申请实施例中可以称为第二密钥)。在指令验证模块06获取到私钥之后,指令验证模块06可以通过获取到的私钥对加密之后的设置权限标识请求进行解密,从而确定加密之后的权限标识请求是否合法。
在指令验证模块06通过获取到的私钥对加密之后的设置权限标识请求解密不成功的情况下,指令验证模块06可以确定笔记本电脑发送的加密之后的设置权限标识请求不合法,即该加密之后的设置权限标识请求不是有效的请求,从而指令验证模块06可以不设置对应的应用程序的权限标识。
在指令验证模块06通过获取到的私钥对加密的设置权限标识请求解密成功的情况下,即该加密之后的设置权限标识请求是有效的请求,指令验证模块06可以确定笔记本电脑01发送的加密之后的设置权限标识请求合法,从而指令验证模块06可以设置权限标识。
S607、手机向笔记本电脑发送设置失败消息。
在手机确定权限标识不合法的情况下,手机可以向笔记本电脑发送设置权限标识失败消息。设置权限标识失败消息,用于指示手机设置权限标识失败,即手机设置对应的应用程序(如测试应用程序)的安装权限失败,也就是说,设置权限标识失败消息表示手机获取测试应用程序对应的APK的安装权限失败。
例如,继续结合图5所示,在手机02的指令验证模块06确定设置权限标识请求不合法的情况下,指令验证模块06可以向手机02中的指令收发模块05发送设置失败消息,用于指示手机02设置测试应用程序对应的安装权限失败。在指令收发模块05接收到设置失败消息之后,可以向笔记本电脑01中的指令收发模块03发送设置失败消息。
S608、笔记本电脑接收设置失败消息。
在笔记本电脑接收到手机发送的设置失败消息之后,笔记本电脑可以显示设置失败消息,从而方便用户或者测试人员知道手机对应的应用程序的安装权限失败,即,即手机获取对应的应用程序的APK的安装权限失败。
例如,继续结合图5所示,笔记本电脑接收设置权限失败消息,可以为笔记本电脑01中的指令收发模块03接收到手机02中的指令收发模块05发送的设置权限失败消息。
S609、手机设置权限标识。
在手机确定设置权限标识请求合法的情况下,手机设置可以与设置权限标识请求对应的应用程序的权限标识,本申请实施例中可以称为第一标识。
在手机设置权限标识之后,即手机获取到了对应的应用程序的安装权限,也即手机获取到了该应用程序对应的APK的安装权限。权限标识可以是一个标志位,该标志位的值可以指示手机获取到了对应的应用程序的安装权限,也即手机获取到了该应用程序对应的APK的安装权限。
在手机设置对应的应用程序的权限标识之后,手机可以存储该权限标识,从而在手机安装对应的应用程序的APK时,可以通过该权限标识确定手机具有安装对应的应用程序的APK的权限。在一些示例中,手机设置权限标识之后,手机可以以日志的方式存储该权限标识,该日志可以包括应用程序的标识以及与该应用程序的标识对应的权限标识。
可以理解的是,手机中还可以存储其他应用程序的标识对应的权限标识,即手机还具有其他应用程序的APK对应的安装权限。
S610、手机向笔记本电脑发送设置成功消息。
在手机设置对应的应用程序权限标识之后,手机还可以向笔记本电脑发送设置权限标识成功消息,本申请实施例中可以称为第一消息。
设置权限标识成功消息,用于指示手机设置对应的应用程序的权限标识成功,即手机设置对应的应用程序(如测试应用程序)的安装权限成功,也就是说,设置权限标识失败消息表示手机获取测试应用程序对应的APK的安装权限成功。
例如,继续结合图5所示,在手机02的指令验证模块06确定设置权限标识请求合法的情况下,指令验证模块06可以设置并存储与设置权限标识请求对应的应用程序的权限标识,从而在手机02安装对应的应用程序的APK时,可以通过该权限标识确定手机具有安装对应的应用程序的权限。
指令验证模块06还可以向手机02中的指令收发模块05发送设置成功消息,用于指示设置与设置权限标识请求对应的应用程序的权限标识成功。在指令收发模块05接收到设置成功消息之后,可以向笔记本电脑01中的指令收发模块03发送设置成功消息。
S611、笔记本电脑接收设置成功消息。
在笔记本电脑接收到手机发送的设置成功消息之后,笔记本电脑可以显示设置成功消息,从而方便用户或者测试人员知道手机获取对应的应用程序的安装权限成功,即手机获取对应的应用程序的APK的安装权限成功。
通过笔记本电脑向手机发送设置应用程序(如测试应用程序)安装权限(即应用程序对应的APK的安装权限)的请求,从而手机可以根据笔记本电脑发送的请求设置对应的应用程序的安装权限(即设置权限标识请求),也就是说,本申请的方案是手机根据笔记本电脑发送的请求设置对应的安装权限,从而不需要用户在手机上进行操作才能获取到应用程序的安装权限,能够减少应用程序安装过程中用户的操作,从而能够提高应用程序的安装效率。
S612、笔记本电脑向手机发送应用程序安装请求。
在笔记本电脑接收到手机发送的设置成功消息之后,即手机获取到了对应的应用程序的安装权限。笔记本电脑可以向手机发送应用程序安装请求(本申请实施例中可以称为第二请求),该应用程序可以为对手机进行测试的应用程序。
在一些示例中,应用程序安装请求可以包括手机需要安装的应用程序的标识,从而手机可以根据该标识,确定是否包括与该应用程序的标识对应的权限标识。
在一些示例中,应用程序安装请求还可以包括应用程序对应的APK,如应用程序安装请求可以包括对手机进行测试的应用程序对应的APK。
在一些示例中,在笔记本电脑接收到手机发送的设置成功消息之后,用户或者测试人员可以触发笔记本电脑向手机发送应用程序安装请求,即在笔记本电脑接收到用户的触发操作时,笔记本电脑可以向手机发送应用程序安装请求。
在笔记本电脑接收到手机发送的设置成功消息之后,笔记本电脑也可以自动触发向手机发送应用程序安装请求。
例如,继续结合图5所示,在笔记本电脑01中的指令收发模块03接收到手机02中的指令收发模块05发送的设置成功消息之后,笔记本电脑01中的指令收发模块03可以向手机02中的指令收发模块05发送应用程序安装请求,用于请求手机02安装对应的应用程序,如对手机02进行测试的应用程序的APK。
S613、手机接收应用程序安装请求。
例如,继续结合图5所示,手机接收应用程序安装请求,可以为手机02中的指令收发模块05接收笔记本电脑01中的指令收发模块03发送的应用程序安装请求。
S614、手机确定是否包括应用程序安装请求对应的权限标识。
在手机接收到笔记本电脑发送的安装请求之后,手机可以确定手机中是否包括应用程序安装请求对应的权限标识。即在应用程序安装请求包括需要安装的应用程序的标识时,手机可以确定手机中是否包括该应用程序的标识对应的权限标识。
例如,继续结合图5所示,在手机02中的指令收发模块05接收到笔记本电脑01中的指令收发模块03发送的应用程序安装请求之后,指令收发模块05可以向手机02中的安装权限获取模块08发送应用程序安装请求。
在安装权限获取模块08接收到指令收发模块05发送的应用程序安装请求之后,安装权限获取模块08可以确定指令验证模块06中是否包括应用程序安装请求包括的应用程序对应的权限标识。
在安装权限获取模块08确定指令验证模块06中包括应用程序安装请求包括的应用程序对应的权限标识的情况下,安装权限获取模块08可以确定手机02具有与应用程序安装请求对应的应用程序的安装权限,即与应用程序安装请求对应的应用程序的APK的安装权限。
在安装权限获取模块08确定指令验证模块06中包括应用程序安装请求不包括的应用程序对应的权限标识的情况下,安装权限获取模块08可以确定手机02不具有与应用程序安装请求对应的应用程序的安装权限,即不具有与应用程序安装请求对应的应用程序的APK的安装权限。
在手机不包括应用程序安装请求对应的权限标识的情况下,手机可以向笔记本电脑发送安装失败消息,即手机可以继续执行下述S615。在手机包括应用程序安装请求对应的权限标识的情况下,手机可以安装对应的应用程序,即手机可以安装对应的应用程序的APK,即手机可以继续执行下述S617。
S615、手机向笔记本电脑发送安装失败消息。
在手机不包括应用程序安装请求对应的权限标识的情况下,手机可以向笔记本电脑发送安装失败消息,用于指示手机安装对应的应用程序失败。
例如,继续结合图5所示,在手机02中的安装权限获取模块08确定手机02中的指令验证模块06中不包括的应用程序对应的权限标识的情况下,安装权限获取模块08可以确定手机02不具有应用程序安装请求包括的应用程序对应的APK的安装权限。安装权限获取模块08可以向手机02中的指令收发模块05发送安装失败消息。指令收发模块05接收到安装失败消息之后,可以向笔记本电脑01中的指令收发模块03发送安装失败消息。
S616、笔记本电脑接收安装失败消息。
在笔记本电脑接收到手机发送安装失败消息之后,笔记本电脑可以显示安装失败消息,从而方便用户或者测试人员知道手机安装对应的应用程序APK失败。
S617、手机安装对应的应用程序。
在手机包括应用程序安装请求对应的权限标识的情况下,手机可以安装对应的应用程序,如安装对应的应用程序的安装包。在一些示例中,手机接收到笔记本电脑发送的应用程序安装请求中可以包括对应的应用程序的安装包,手机可以通过笔记本电脑发送的应用程序安装请求获取对应的应用程序的安装包。在其他一些示例中,手机也可以从云服务器或其他设备获取应用程序的安装包,本申请实施例对此不予限定。
例如,继续结合图5所示,在手机02中的安装权限获取模块08确定手机02中的指令验证模块06中包括的应用程序对应的权限标识的情况下,安装权限获取模块08可以确定手机02具有应用程序安装请求包括的应用程序对应的APK的安装权限。安装权限获取模块08可以安装对应的应用程序的APK。
S618、手机向笔记本电脑发送安装成功消息。
在手机安装对应的应用程序完成的情况下,手机可以向笔记本电脑发送安装成功消息,用于指示手机安装对应的应用程序成功。
例如,继续结合图5所示,在手机02中的安装权限获取模块08安装对应的应用程序的APK完成时,安装权限获取模块08可以向手机02中的指令收发模块05发送安装成功消息。指令收发模块05接收到安装失败消息之后,可以向笔记本电脑01中的指令收发模块03发送安装成功消息。
S619、笔记本电脑接收安装成功消息。
在笔记本电脑接收到手机发送安装成功消息之后,笔记本电脑可以显示安装成功消息,从而方便用户或者测试人员知道手机安装对应的应用程序APK成功。
在笔记本电脑接收到手机发送的安装成功消息之后,用户或者测试人员可以利用笔记本电脑,通过手机上安装的应用程序,如测试应用程序APK对手机进行测试。
本申请的方案,通过笔记本电脑向至少一个手机发送设置应用程序(如测试应用程序)安装权限(即应用程序对应的APK的安装权限)的请求,从而至少一个手机可以根据笔记本电脑发送的请求设置对应的应用程序的安装权限,也就是说,本申请的方案是手机根据笔记本电脑备发送的请求设置对应的应用程序的安装权限,从而不需要用户在手机上进行操作才能获取到应用程序的安装权限,能够减少应用程序安装过程中用户的操作,从而能够提高应用程序的安装效率。
在手机设置了应用程序对应的安装权限之后,手机接收到笔记本电脑发送的安装应用程序请求(即安装应用程序对应的APK的请求)时,手机可以确定手机中是否包括该应用程序对应的权限标识(即应用程序的安装权限),在手机中包括应用程序的权限标识的情况下,手机可以安装该应用程序(即安装应用程序对应的APK)。也就是说,本申请的方案在手机需要安装应用程序时,可以通过手机确定手机中是否包括应用程序对应的权限标识(即应用程序的安装权限),从而不需要测试人员进行操作才能获取到应用程序的安装权限,进一步能够提高在手机上安装应用程序的效率。
且由于在安装应用程序(即安装应用程序对应的APK)时不需要测试人员进行操作才能获取到应用程序的安装权限,从而能够使应用程序同时在多个手机上进行安装,即能够满足产线批量生产的需求。
此外,本申请的方案是通过手机根据笔记本电脑的请求,设置第一应用程序(如测试应用程序)的安装权限,从而手机可以根据安装权限安装第一应用程序,因此,不需要在手机的操作***中预制第一应用程序,从而能够通过对手机进行恢复出厂等设置,删除手机中的第一应用程序以及第一应用程序对应的数据,从而能够提高手机的使用空间,以及避免数据的泄露。
例如,继续以第一电子设备为笔记本电脑、第二电子设备为手机以及应用程序为对测试应用程序为例进行示意说明,对本申请实施例提供的应用程序删除过程进行示意说明。如图8所示,本申请实施例提供的应用程序删除过程可以包括以下S701-S702。
S701、手机接收用户触发删除测试应用程序的操作。
在手机安装测试应用程序之后,用户或者测试人员可以通过手机上安装的测试应用程序,对手机进行测试,如对手机的操作***进行测试。在测试完成后,由于该测试应用程序是通过手机接收笔记本电脑的安装请求,从而手机可以安装测试APK。即测试APK不需要在手机的操作***中预制,因此,手机可以删除安装的测试应用程序。
在一些示例中,用户可以触发手机中的恢复出厂设置控件,从而触发手机恢复出厂设置,即在手机恢复出厂设置时,能够删除手机上除操作***自带的应用程序之外的应用程序,如手机上安装的测试应用程序。也就是说,在手机接收到用户对恢复出厂设置控件的操作,如触发操作时,手机可以删除安装的测试应用程序。
在另一些示例中,用户还可以通过其他方式删除手机上安装的测试应用程序,如用户触发该测试应用程序对应的删除控件,从而能够触发手机删除该测试应用程序。
S702、响应于该操作,手机删除测试应用程序以及测试应用程序对应的测试数据。
在手机接收到用户用于触发删除测试应用程序的操作,如触发操作时,手机可以删除安装的测试应用程序。
在手机删除测试应用程序时,手机可以将测试应用程序对应的测试数据一并删除,从而可以避免泄露手机中的测试APK以及测试APK对应的测试数据,也能够提高手机的使用空间。
在一些示例中,在用户触发删除测试应用程序的操作,为用户触发手机中的恢复出厂设置控件时,手机还可以删除手机中测试应用程序对应的权限标识。
需要说明的是,手机在出厂前除了需要进行人机交互,还需要进行写入定制信息(custom write,CW)以及校验定制信息(manufactory check,MC)。定制信息,可以是手机的基本信息,如手机的整机条码等信息。写入定制信息,即将手机的基本信息写入手机的操作***中。校验定制信息,即检查手机的定制信息是否均写入手机的操作***中。例如,以预制测试APK为MMI***为例,如图9中的(a)所示,在手机出厂前,现有的手机的测试流程可以为先写入定制信息,即将手机的基本信息写入手机的操作***。然后再通过MMI***进行人机交互测试(如称为MMI测试),来确定手机的操作***的各项功能是否正常,如使用MMI***进行人工测试。最后再进行定制信息的校验,即检查手机的定制信息是否均写入手机的操作***中。
采用本申请中的方案后,如图9中的(b)所示,在手机出厂前,手机的测试流程可以为先写入定制信息,即将手机的基本信息写入手机的操作***。然后手机可以再通过MMI***自动进行人机交互测试(如称为MMI自动测试),来确定手机的操作***的各项功能是否正常。在通过MMI***自动进行人机交互测试之前,手机需要先写入权限标识,即MMI***对应的APK对应的安装权限,在手机中写入权限标识之后,手机才可以安装MMI***对应的APK,即预先安装MMI***。然后再通过安装的MMI***对不能自动测试的项目,进行人工测试。最后再进行定制信息的校验,即检查手机的定制信息是否均写入手机的操作***中。
为了便于理解,下面结合附图10对本申请实施例提供的应用程序安装方法进行说明。如图10所示,该应用程序安装方法可以包括以下S901-S912。
S901、第一电子设备与第二电子设备建立连接。
本申请实施例提供的应用程序安装方法可以应用于应用程序安装***,也可以称为测试***。测试***可以包括第一电子设备以及与第一电子设备连接的至少一个第二电子设备。测试***可以用于对第二电子设备的操作***进行测试,如对第二电子设备的操作***人机交互测试。
第一电子设备,可以为笔记本电脑、平板电脑、手持计算机,PC,PDA等的电子设备。本申请实施例中对第一电子设备的具体类型并不进行限定。本申请实施例中以第一电子设备为笔记本电脑为例进行示意说明。
第二电子设备可以是手机、平板电脑、手持计算机,个人计算机PC,蜂窝电话,PDA,可穿戴式设备等电子设备。本申请实施例中以第二电子设备为手机为例进行示意说明。
第一电子设备与第二电子设备建立连接,可以为建立USB连接,还可以为建立无线连接,如蓝牙连接。本申请实施例对此并不进行限定。本申请实施例中以第一电子设备与第二电子设备建立的连接为USB连接为例进行示意说明。
S902、第一电子设备接收用户的第一操作。
在第一电子设备与第二电子设备建立连接之后,用户可以对第一电子设备进行操作(如称为第一操作),从而触发第一电子设备向第二电子设备发送设置应用程序对应的权限标识的请求,如称为设置权限标识请求(本申请实施例中可以称为第一请求)。设置权限标识请求,可以用于指示第二电子设备设置对应的应用程序的权限标识。权限标识,可以是对应的应用程序的安装权限,即该应用程序的APK的安装权限。
应用程序,可以为对第二电子设备的操作***进行测试的应用程序,如称为测试应用程序。示例性的,测试应用程序可以为MMI***,测试应用程序对应的APK(可以称为测试APK)即为MMI***对应的应用程序安装包。
在一些示例中,第一电子设备与第二电子设备建立连接之后,第一电子设备可以显示对第二电子设备进行测试的界面,该界面可以包括设置权限标识控件。该设置权限标识控件,可以用于触发第一电子设备向手机发送设置权限标识请求。也就是说,第一电子设备接收用户的第一操作,可以为第一电子设备接收用户对设置权限标识控件进行触发操作,如点击操作。
在第一电子设备与第二电子设备建立连接之后,第一电子设备可以在接收到用户对设置权限标识控件的第一操作时,向第一电子设备发送设置权限标识请求。第一电子设备也可以在与第二电子设备建立连接之后,自动向第 电子设备发送设置权限标识请求。
本申请实施例中第一电子设备接收用户的第一操作,可以参考上述S601,本申请实施例在此不再赘述。
S903、响应于第一操作,第一电子设备生成第一请求。
在第一电子设备接收到用户的第一操作时,作为响应,第一电子设备可以生成第一请求。第一请求,也可以称为设置权限标识请求。第一请求,可以用于请求第二电子设备设置第一应用程序对应的第一标识。第一标识,可以用于指示第一应用程序的安装权限。即第一请求可以用于请求第二电子设备设置第一应用程序对应的安装权限,也即第一请求可以用于请求第二电子设备设置第一应用程序对应的APK的安装权限。也就是说,第一操作用于触发第一电子设备向第二电子设备发送第一请求,第一请求用于请求第二电子设备设置第一标识,第一标识用于指示具有第一应用程序的安装权限。第一应用程序可以用于对第二电子设备的操作***进行测试。
在一些示例中,第一请求,可以包括对应的应用程序(如测试应用程序)的标识,该标识可以指示该应用程序。即第一请求,可以包括需要第二电子设备设置安装权限的应用程序(如测试应用程序)的标识,从而第二电子设备可以根据该应用程序的标识,设置与该应用程序对应的权限标识(即该应用程序对应的安装权限)。
在一些示例中,第一电子设备生成第一请求之后,第一电子设备还可以对第一请求进行加密。例如,第一电子设备可以通过第一密钥加密第一请求。第一密钥可以为第一电子设备中的公钥。第一电子设备中的公钥,可以与第二电子设备中的私钥相对应。
本申请实施例中第一电子设备生成第一请求,可以参考上述S602,本申请实施例在此不再赘述。
S904、第一电子设备向第二电子设备发送第一请求。
在第一电子设备生成第一请求之后,第一电子设备可以向第二电子设备发送第一请求。第一请求可以为加密之后的请求。
S905、第二电子设备根据第一请求,设置第一标识。
在第二电子设备接收到第一请求之后,第二电子设备可以根据第一请求设置第一标识。即第二电子设备可以根据第一请求设置对应的应用程序的安装权限。
在第一请求包括第一应用程序的标识时,第二电子设备可以根据第一请求,设置第一应用程序对应的第一标识。在第二电子设备设置第一应用程序对应的第一标识之后,第二电子设备可以保存第一应用程序的标识与第一标识的对应的关系,从而能够根据第一应用程序的标识确定第二电子设备中是否包括对应的第一标识。即第二电子设备可以根据第一应用程序的标识,确定第二电子设备中是否具有安装第一应用程序的权限。
在一些示例中,在第一请求为加密之后的请求时,第二电子设备根据第一请求设置第一标识,可以包括:第二电子设备通过第二密钥解密第一请求,第二密钥与第一密钥对应。第二密钥即第二电子设备包括的私钥。第二电子设备包括的私钥与第一电子设备包括的公钥相对于。在第二电子设备通过第二密钥解密成功的情况下,第二电子设备可以根据第一请求设置第一标识。
本申请实施例中第二电子设备根据第一请求,设置第一标识,可以参考上述S606-S609,本申请实施例在此不再赘述。
S906、第二电子设备向第一电子设备发送第一消息。
在第二电子设备根据第一请求,设置第一标识之后,第二电子设备可以向第一电子设备发送第一消息。第一消息可以为上述的设置成功消息。即第一消息,可以用于指示第二电子设备设置第一应用程序对应的第一标识成功,即第二电子设备设置第一应用程序对应的安装权限成功。
本申请实施例中第二电子设备向第一电子设备发送第一消息,可以参考上述S606-S610,本申请实施例在此不再赘述。
S907、第一电子设备根据第一消息,向第二电子设备发送第二请求。
在第一电子设备接收到第一消息之后,即第一电子设备接收到第二电子设备设置第一应用程序对应的安装权限成功的消息之后,第一电子设备可以根据第一消息,向第二电子设备发送第二请求。第二请求,可以用于请求第二电子设备安装第一应用程序。
第二请求可以包括第二电子设备需要安装的应用程序的标识,如第一应用程序的标识,从而第二电子设备可以根据该标识,确定是否包括与该应用程序的标识对应的权限标识。第二请求,还可以包括第二电子设备需要安装的应用程序的APK,如第一应用程序的APK。
本申请实施例中第一电子设备根据第一消息,向第二电子设备发送第二请求,可以参考上述S612,本申请实施例在此不再赘述。
S908、第二电子设备根据第二请求,确定第二电子设备中是否包括第二请求对应的应用程序的权限标识。
在第二电子设备接收到第二请求之后,第二电子设备可以确定第二电子设备中是否包括第二请求对应的应用程序的权限标识。
在第二电子设备确定第二电子设备中不包括第二请求对应的应用程序的权限标识的情况下,第二电子设备可以确定不具有安装第二请求对应的应用程序的权限,可以继续执行下述S909。
在第二电子设备确定第二电子设备中包括第二请求对应的应用程序的权限标识的情况下,第二电子设备可以确定具有安装第二请求对应的应用程序的权限,可以继续执行下述S910。
例如,在第二请求包括第一应用程序的标识时,即第二请求用于请求第二电子设备安装第一应用程序。在第二电子设备接收到第二请求时,第二电子设备可以确定第二电子设备中是否包括第一应用程序对应的权限标识,即第一标识。在第二电子设备包括第一标识的情况下,第二电子设备可以确定具有安装第一应用程序的权限,从而第二电子设备可以安装第一应用程序。
在第二电子设备不包括第一标识的情况下,第二电子设备可以确定不具有安装第一应用程序的权限,从而第二电子设备不能安装第一应用程序。
本申请实施例中第二电子设备确定第二电子设备中是否包括第二请求对应的应用程序的权限标识,可以参考上述S614,本申请实施例在此不再赘述。
S909、第二电子设备不安装第一应用程序。
在第二电子设备确定第二电子设备中不包括第二请求对应的应用程序的权限标识的情况下,第二电子设备可以确定不具有安装第二请求对应的应用程序的权限,第二电子设备不能安装第一应用程序。
S910、第二电子设备安装第一应用程序。
在第二电子设备确定第二电子设备中包括第二请求对应的应用程序的权限标识的情况下,第二电子设备可以确定具有安装第二请求对应的应用程序的权限,第二电子设备可以安装第一应用程序。
S911、第二电子设备接收用户的第二操作,第二操作用于触发第二电子设备删除第一应用程序。
在第二电子设备安装第一应用程序,如测试应用程序之后,第二电子设备可以通过该第一应用程序对第二电子设备的操作***进行测试。
在第二电子设备可以通过该第一应用程序对第二电子设备的操作***进行测试之后,用户可以触发第二电子设备删除第一应用程序。例如,用户可以触发第二电子设备中的恢复出厂设置控件,从而触发第二电子设备恢复出厂设置。即第二操作可以是对第二电子设备包括的恢复出厂设置控件的触发操作。
本申请实施例中第二电子设备接收用户的第二操作,可以参考上述S701,本申请实施例在此不再赘述。
S912、响应于第二操作,第二电子设备删除第一应用程序以及第一应用程序对应的数据。
在第二电子设备接收到用户触发第二电子设备删除第一应用程序的操作(即第二操作)时,作为响应,第二电子设备可以删除第一应用程序以及第一应用程序对应的数据。
在第二操作是对第二电子设备包括的恢复出厂设置控件的触发操作,第二电子设备可以删除第一应用程序以及第一应用程序对应的数据,第二电子设备还可以删除第一应用程序对应的权限标识,即第一标识。
本申请实施例中第二电子设备删除第一应用程序以及第一应用程序对应的数据,可以参考上述S702,本申请实施例在此不再赘述。
采用本申请的方案,第一电子设备可以向至少一个第二电子设备发送设置应用程序安装权限的请求(即第一请求),从而至少一个第二电子设备可以根据第一电子设备发送的请求设置对应的应用程序的安装权限,也就是说,本申请的方案是第二电子设备根据第一电子设备发送的请求设置对应的应用程序的安装权限,从而不需要用户在第二电子设备上进行操作才能获取到应用程序的安装权限,能够减少应用程序在第二电子设备上安装过程中用户的操作,从而能够提高在第二电子设备上安装应用程序的效率。由于第一应用程序用于对第二电子设备的操作***进行测试,本申请的方案能够提高在第二电子设备上安装第一应用程序的效率,因此能够提高对第二电子设备进行测试的测试效率。
在第二电子设备设置了应用程序对应的安装权限之后,第二电子设备接收到第一电子设备发送的安装应用程序请求(即第二请求)时,第二电子设备可以确定第二电子设备中是否包括该应用程序对应的权限标识,在第二电子设备包括应用程序的权限标识的情况下,第二电子设备可以安装该应用程序。也就是说,本申请的方案在第二电子设备需要安装应用程序时,可以通过第二电子设备确定第二电子设备中是否包括应用程序对应的权限标识(即应用程序的安装权限),从而不需要测试人员进行操作才能获取到应用程序的安装权限,进一步能够提高在第二电子设备上安装应用程序的效率。
且由于在安装应用程序时不需要测试人员在第二电子设备上进行操作才能获取到应用程序的安装权限,从而能够使应用程序同时在多个第二电子设备上进行安装,即能够满足产线批量生产以及测试的需求。
此外,本申请的方案是通过第二电子设备根据第一电子设备的请求,设置第一应用程序的安装权限,从而第二电子设备可以根据安装权限安装第一应用程序,因此,不需要在第二电子设备的操作***中预制第一应用程序,从而能够通过对第二电子设备进行恢复出厂等设置,删除第二电子设备中的第一应用程序以及第一应用程序对应的数据,从而能够提高第二电子设备的使用空间,以及避免数据的泄露。
对应于前述实施例中的方法,本申请实施例还提供一种应用程序安装装置。该应用程序安装装置可以应用于第一电子设备,用于实现前述实施例中的方法。该应用程序安装装置的功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。硬件或软件包括一个或多个与上述功能相对应的模块。
例如,图11示出了一种应用程序安装装置10的结构示意图,如图11所示,该应用程序安装装置10可以包括:接收模块1001和发送模块1002等。
其中,接收模块1001,可以用于接收用户的第一操作。
发送模块1002,可以用于响应于第一操作,第一电子设备向第二电子设备发送第一请求;第一请求用于请求第二电子设备设置第一标识,第一标识用于指示具有第一应用程序的安装权限;第一应用程序用于对第二电子设备的操作***进行测试。
发送模块1001,还可以用于向第二电子设备发送第二请求,第二请求用于请求第二电子设备安装第一应用程序。
在另一种可能的实现方式中,上述应用程序安装装置10,还可以包括加密模块1003。
加密模块1003,可以用于通过第一密钥加密第一请求。
发送模块1002,还可以用于向第二电子设备发送加密之后的第一请求。
在另一种可能的实现方式中,上述第一电子设备可以为电脑,上述第二电子设备可以为手机。
本申请实施例还提供一种应用程序安装装置。该应用程序安装装置可以应用于第二电子设备,用于实现前述实施例中的方法。该应用程序安装装置的功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。硬件或软件包括一个或多个与上述功能相对应的模块。
例如,图12示出了一种应用程序安装装置11的结构示意图,如图12所示,该应用程序安装装置11可以包括:接收模块1101、设置模块1102和安装模块1103等。
接收模块1101,可以用于第二电子设备接收第一电子设备发送第一请求,第一请求用于请求第二电子设备设置第一标识,第一标识用于指示具有第一应用程序的安装权限;第一应用程序用于对第二电子设备的操作***进行测试。
设置模块1102,可以用于根据第一请求设置第一标识。
接收模块1101,还可以用于接收第一电子设备发送的第二请求,第二请求用于请求第二电子设备安装第一应用程序。
安装模块1103,可以用于在第二电子设备包括第一应用程序对应的第一标识的情况下,第二电子设备安装第一应用程序。
在另一种可能的实现方式中,上述应用程序安装装置11,还可以包括解密模块1104。
解密模块1104,可以用于通过第二密钥解密加密之后的第一请求,第二密钥与第一密钥对应。
设置模块1102,还可以用于在第二电子设备通过第二密钥解密成功的情况下,根据第一请求设置第一标识。
在另一种可能的实现方式中,接收模块1101,还可以用于接收用户的第二操作,第二操作用于触发第二电子设备删除第一应用程序。
上述应用程序安装装置11,还可以包括删除模块1105。
删除模块1105,还可以用于响应于第二操作,第二电子设备删除第一应用程序以及第一应用程序对应的数据。
在另一种可能的实现方式中,删除模块1105,还可以用于删除第一标识。
在另一种可能的实现方式中,上述第一电子设备可以为电脑,上述第二电子设备可以为手机。
应理解以上装置中单元或模块(以下均称为单元)的划分仅仅是一种逻辑功能的划分,实际实现时可以全部或部分集成到一个物理实体上,也可以物理上分开。且装置中的单元可以全部以软件通过处理元件调用的形式实现;也可以全部以硬件的形式实现;还可以部分单元以软件通过处理元件调用的形式实现,部分单元以硬件的形式实现。
例如,各个单元可以为单独设立的处理元件,也可以集成在装置的某一个芯片中实现,此外,也可以以程序的形式存储于存储器中,由装置的某一个处理元件调用并执行该单元的功能。此外这些单元全部或部分可以集成在一起,也可以独立实现。这里所述的处理元件又可以称为处理器,可以是一种具有信号的处理能力的集成电路。在实现过程中,上述方法的各步骤或以上各个单元可以通过处理器元件中的硬件的集成逻辑电路实现或者以软件通过处理元件调用的形式实现。
在一个例子中,以上装置中的单元可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个ASIC,或,一个或多个DSP,或,一个或者多个FPGA,或这些集成电路形式中至少两种的组合。
再如,当装置中的单元可以通过处理元件调度程序的形式实现时,该处理元件可以是通用处理器,例如CPU或其它可以调用程序的处理器。再如,这些单元可以集成在一起,以片上***SOC的形式实现。
在一种实现中,以上装置实现以上方法中各个对应步骤的单元可以通过处理元件调度程序的形式实现。例如,该装置可以包括处理元件和存储元件,处理元件调用存储元件存储的程序,以执行以上方法实施例所述的方法。存储元件可以为与处理元件处于同一芯片上的存储元件,即片内存储元件。
在另一种实现中,用于执行以上方法的程序可以在与处理元件处于不同芯片上的存储元件,即片外存储元件。此时,处理元件从片外存储元件调用或加载程序于片内存储元件上,以调用并执行以上方法实施例所述的方法。
例如,本申请实施例还可以提供一种装置,如:电子设备,可以包括:处理器,用于存储该处理器可执行指令的存储器。该处理器被配置为执行上述指令时,使得该电子设备实现如前述实施例所述的应用程序安装方法。该存储器可以位于该电子设备之内,也可以位于该电子设备之外。且该处理器包括一个或多个。
在又一种实现中,该装置实现以上方法中各个步骤的单元可以是被配置成一个或多个处理元件,这些处理元件可以设置于对应上述的电子设备上,这里的处理元件可以为集成电路,例如:一个或多个ASIC,或,一个或多个DSP,或,一个或者多个FPGA,或者这些类集成电路的组合。这些集成电路可以集成在一起,构成芯片。
例如,本申请实施例还提供一种芯片,该芯片可以应用于上述电子设备。芯片包括一个或多个接口电路和一个或多个处理器;接口电路和处理器通过线路互联;处理器通过接口电路从电子设备的存储器接收并执行计算机指令,以实现以上方法实施例中所述的方法。
本申请实施例还提供一种计算机可读存储介质,其上存储有计算机程序指令。当计算机程序指令被电子设备执行时,使得电子设备可以实现如上述的应用程序安装方法。
本申请实施例还提供一种计算机程序产品,包括如上述电子设备运行的计算机指令,当计算机指令在电子设备中运行时,使得电子设备实可以现如上述的应用程序安装方法。通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,如:程序。
该软件产品存储在一个程序产品,如计算机可读存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
例如,本申请实施例还可以提供一种计算机可读存储介质,其上存储有计算机程序指令。当计算机程序指令被电子设备执行时,使得电子设备实现如前述方法实施例中所述的应用程序安装方法。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (13)
1.一种应用程序安装方法,其特征在于,应用于第一电子设备,所述第一电子设备与至少一个第二电子设备已连接,所述方法包括:
所述第一电子设备接收用户的第一操作;
响应于所述第一操作,所述第一电子设备向所述至少一个第二电子设备发送第一请求;所述第一请求用于请求所述第二电子设备在所述第二电子设备上设置第一标识,所述第一标识用于指示所述第二电子设备具有第一应用程序的安装权限;所述第一应用程序用于对所述第二电子设备的操作***进行测试;
所述第一电子设备向所述第二电子设备发送第二请求,所述第二请求用于请求所述第二电子设备根据所述第二电子设备上的所述第一标识安装所述第一应用程序。
2.根据权利要求1所述的方法,其特征在于,所述第一电子设备向所述第二电子设备发送第一请求,包括:
所述第一电子设备通过第一密钥加密所述第一请求;
所述第一电子设备向所述第二电子设备发送加密之后的所述第一请求。
3.根据权利要求1或2所述的方法,其特征在于,所述第一电子设备为电脑,所述第二电子设备为手机。
4.一种应用程序安装方法,其特征在于,应用于第二电子设备,所述第二电子设备与第一电子设备已连接,所述方法包括:
所述第二电子设备接收所述第一电子设备发送的第一请求,所述第一请求用于请求所述第二电子设备在所述第二电子设备上设置第一标识,所述第一标识用于指示所述第二电子设备具有第一应用程序的安装权限;所述第一应用程序用于对所述第二电子设备的操作***进行测试;
所述第二电子设备根据所述第一请求设置所述第一标识;
所述第二电子设备接收所述第一电子设备发送的第二请求,所述第二请求用于请求所述第二电子设备安装所述第一应用程序;
在所述第二电子设备包括所述第一应用程序对应的所述第一标识的情况下,所述第二电子设备安装所述第一应用程序。
5.根据权利要求4所述的方法,其特征在于,所述第一请求是所述第一电子设备通过第一密钥加密之后的请求,所述第二电子设备根据所述第一请求设置所述第一标识,包括:
所述第二电子设备通过第二密钥解密加密之后的所述第一请求,所述第二密钥与所述第一密钥对应;
在所述第二电子设备通过所述第二密钥解密成功的情况下,所述第二电子设备根据所述第一请求设置所述第一标识。
6.根据权利要求4或5所述的方法,其特征在于,所述方法还包括:
所述第二电子设备接收用户的第二操作,所述第二操作用于触发所述第二电子设备删除所述第一应用程序;
响应于所述第二操作,所述第二电子设备删除所述第一应用程序以及所述第一应用程序对应的数据。
7.根据权利要求6所述的方法,其特征在于,所述第二操作为用户触发所述第二电子设备恢复出厂设置的操作,所述方法还包括:
所述第二电子设备删除所述第一标识。
8.根据权利要求4或5所述的方法,其特征在于,所述第一电子设备为电脑,所述第二电子设备为手机。
9.根据权利要求5所述的方法,其特征在于,所述第二电子设备包括指令收发模块和指令验证模块;
所述第二电子设备通过第二密钥解密加密之后的所述第一请求,包括:
所述指令收发模块接收所述第一电子设备发送的加密之后的所述第一请求;
所述指令收发模块向所述指令验证模块发送加密之后的所述第一请求;
所述指令验证模块接收加密之后的所述第一请求,并根据通过所述第二密钥解密加密之后的所述第一请求;
所述第二电子设备根据所述第一请求设置所述第一标识,包括:
在所述指令验证模块通过所述第二密钥解密成功的情况下,所述指令验证模块根据所述第一请求,设置所述第一标识。
10.根据权利要求9所述的方法,其特征在于,所述第二电子设备还包括安装权限获取模块;
所述第二电子设备接收所述第一电子设备发送的第二请求,包括:
所述指令收发模块接收所述第一电子设备发送的所述第二请求;
所述第二电子设备安装所述第一应用程序,包括:
所述指令收发模块向所述安装权限获取模块发送所述第二请求;
所述安装权限获取模块根据所述第二请求,确定所述指令验证模块包括所述第一应用程序对应的所述第一标识的情况下,所述安装权限获取模块安装所述第一应用程序。
11.一种应用程序安装***,其特征在于,所述应用程序安装***包括:第一电子设备,以及与所述第一电子设备连接的至少一个第二电子设备;所述第一电子设备用于执行如权利要求1至3中任一项所述的方法,所述第二电子设备用于执行如权利要求4至10中任一项所述的方法。
12.一种电子设备,其特征在于,所述电子设备包括处理器,用于存储所述处理器可执行指令的存储器;所述处理器被配置为执行所述指令时,使得所述电子设备实现如权利要求1至3中任一项所述的方法;或者,所述处理器被配置为执行所述指令时,使得所述电子设备实现如权利要求4至10中任一项所述的方法。
13.一种计算机可读存储介质,其上存储有计算机程序指令;其特征在于,
当所述计算机程序指令被电子设备执行时,使得电子设备实现如权利要求1至3中任一项所述的方法;或者,当所述计算机程序指令被电子设备执行时,使得电子设备实现如权利要求4至10中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210587571.4A CN114692093B (zh) | 2022-05-27 | 2022-05-27 | 一种应用程序安装方法及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210587571.4A CN114692093B (zh) | 2022-05-27 | 2022-05-27 | 一种应用程序安装方法及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114692093A CN114692093A (zh) | 2022-07-01 |
CN114692093B true CN114692093B (zh) | 2022-10-25 |
Family
ID=82144484
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210587571.4A Active CN114692093B (zh) | 2022-05-27 | 2022-05-27 | 一种应用程序安装方法及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114692093B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108681662A (zh) * | 2018-05-17 | 2018-10-19 | 阿里巴巴集团控股有限公司 | 一种安装程序的方法及装置 |
CN109388532A (zh) * | 2018-09-26 | 2019-02-26 | Oppo广东移动通信有限公司 | 测试方法、装置、电子设备及计算机可读取存储介质 |
CN112486547A (zh) * | 2021-02-03 | 2021-03-12 | 苏州达家迎信息技术有限公司 | 多租户场景下的应用程序更新方法、装置及电子设备 |
CN113468606A (zh) * | 2020-03-30 | 2021-10-01 | 华为技术有限公司 | 一种应用程序的访问方法及电子设备 |
CN113569288A (zh) * | 2021-07-28 | 2021-10-29 | 维沃移动通信(杭州)有限公司 | 权限管理方法、装置及电子设备 |
CN113885896A (zh) * | 2021-09-29 | 2022-01-04 | 平安银行股份有限公司 | 应用程序软件包安装方法、装置、计算机设备及存储介质 |
WO2022022422A1 (zh) * | 2020-07-31 | 2022-02-03 | 华为技术有限公司 | 一种权限管理方法及终端设备 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104657187A (zh) * | 2015-03-24 | 2015-05-27 | 联想(北京)有限公司 | 一种应用安装处理方法、装置和电子设备 |
CN106155727B (zh) * | 2015-04-17 | 2021-04-30 | 腾讯科技(深圳)有限公司 | 一种应用程序的更新方法、装置及终端 |
KR102610058B1 (ko) * | 2017-01-10 | 2023-12-06 | 삼성전자주식회사 | 프로세스의 권한 상승을 검출하는 전자 장치 및 저장 매체 |
CN108347361B (zh) * | 2018-03-06 | 2020-08-04 | 平安普惠企业管理有限公司 | 应用程序测试方法、装置、计算机设备和存储介质 |
CN109344634B (zh) * | 2018-09-28 | 2021-04-13 | 东软集团股份有限公司 | 应用的权限授予方法、装置、终端及计算机可读存储介质 |
CN109783129A (zh) * | 2018-12-15 | 2019-05-21 | 深圳壹账通智能科技有限公司 | 应用程序处理方法、装置、计算机设备及存储介质 |
CN113821767A (zh) * | 2020-06-18 | 2021-12-21 | 华为技术有限公司 | 应用程序的权限管理方法、装置和电子设备 |
CN112115049B (zh) * | 2020-08-27 | 2023-06-02 | 北京奇艺世纪科技有限公司 | 应用程序测试方法、装置、设备和计算机可读存储介质 |
CN112016080A (zh) * | 2020-08-28 | 2020-12-01 | 维沃移动通信(杭州)有限公司 | 应用权限管理方法、装置及电子设备 |
CN114510248A (zh) * | 2020-11-16 | 2022-05-17 | 深圳Tcl新技术有限公司 | 应用程序安装方法、装置、存储介质及终端设备 |
CN112748934A (zh) * | 2020-12-31 | 2021-05-04 | 西安万像电子科技有限公司 | 应用部署方法、装置及*** |
CN113076258B (zh) * | 2021-04-21 | 2023-09-19 | ***通信集团陕西有限公司 | 一种权限申请的方法、装置、设备及可读存储介质 |
-
2022
- 2022-05-27 CN CN202210587571.4A patent/CN114692093B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108681662A (zh) * | 2018-05-17 | 2018-10-19 | 阿里巴巴集团控股有限公司 | 一种安装程序的方法及装置 |
CN109388532A (zh) * | 2018-09-26 | 2019-02-26 | Oppo广东移动通信有限公司 | 测试方法、装置、电子设备及计算机可读取存储介质 |
CN113468606A (zh) * | 2020-03-30 | 2021-10-01 | 华为技术有限公司 | 一种应用程序的访问方法及电子设备 |
WO2022022422A1 (zh) * | 2020-07-31 | 2022-02-03 | 华为技术有限公司 | 一种权限管理方法及终端设备 |
CN112486547A (zh) * | 2021-02-03 | 2021-03-12 | 苏州达家迎信息技术有限公司 | 多租户场景下的应用程序更新方法、装置及电子设备 |
CN113569288A (zh) * | 2021-07-28 | 2021-10-29 | 维沃移动通信(杭州)有限公司 | 权限管理方法、装置及电子设备 |
CN113885896A (zh) * | 2021-09-29 | 2022-01-04 | 平安银行股份有限公司 | 应用程序软件包安装方法、装置、计算机设备及存储介质 |
Non-Patent Citations (3)
Title |
---|
Android平台的应用软件安全评估平台的设计与研究;刘璐;《中国优秀硕士学位论文全文数据库 信息科技辑》;20160715(第7期);I138-28 * |
Android应用程序权限检测机制的研究;闫梅;《中国优秀硕士学位论文全文数据库 信息科技辑》;20140215(第2期);I138-63 * |
Information flows as a permission mechanism;Feng Shen 等;《ASE"14: Proceedings of the 29th ACM/IEEEInternational conference on Automated software engineering》;20140915;515-526 * |
Also Published As
Publication number | Publication date |
---|---|
CN114692093A (zh) | 2022-07-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110569130B (zh) | 一种跨进程通信方法、装置及设备 | |
CN105975864A (zh) | 操作***的启动方法、装置及终端 | |
CN113032766B (zh) | 应用权限管理的方法和装置 | |
CN114531676B (zh) | 一种密钥处理方法、装置和终端设备 | |
WO2022135215A1 (zh) | 一种开机异常的修复方法及装置 | |
CN115879088A (zh) | 权限检查的方法和电子设备 | |
US20210011736A1 (en) | Method and apparatus for managing application | |
CN110602689B (zh) | 一种设备安全操作的方法和装置 | |
CN114692093B (zh) | 一种应用程序安装方法及电子设备 | |
CN113468606A (zh) | 一种应用程序的访问方法及电子设备 | |
CN116700552B (zh) | 应用接续方法和终端设备 | |
CN116049799B (zh) | ***权限管理方法、***及电子设备 | |
CN109842593B (zh) | 信息获取方法、装置及计算机可读存储介质 | |
US20230136200A1 (en) | Organization-based Template Publishing and Discovery | |
CN115562732A (zh) | 一种开机方法、电子设备及计算机存储介质 | |
CN117131519B (zh) | 一种信息的保护方法及设备 | |
CN115270015A (zh) | 页面展示方法及装置 | |
CN114138343A (zh) | 一种终端及终端启动方法 | |
CN117131533A (zh) | 打开文件的方法和电子设备 | |
CN114205099B (zh) | 网页鉴权方法、电子设备及*** | |
CN116702100B (zh) | 权限管理方法和电子设备 | |
CN113850633B (zh) | 信息推送方法和装置 | |
CN116049812B (zh) | 访问硬件资源的方法和电子设备 | |
CN113938890B (zh) | 数据共享方法和终端设备 | |
CN111737680B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20230914 Address after: 201306 building C, No. 888, Huanhu West 2nd Road, Lingang New District, China (Shanghai) pilot Free Trade Zone, Pudong New Area, Shanghai Patentee after: Shanghai Glory Smart Technology Development Co.,Ltd. Address before: Unit 3401, unit a, building 6, Shenye Zhongcheng, No. 8089, Hongli West Road, Donghai community, Xiangmihu street, Futian District, Shenzhen, Guangdong 518040 Patentee before: Honor Device Co.,Ltd. |
|
TR01 | Transfer of patent right |