WO2023045876A1 - 应用程序安装方法及相关设备 - Google Patents

应用程序安装方法及相关设备 Download PDF

Info

Publication number
WO2023045876A1
WO2023045876A1 PCT/CN2022/119661 CN2022119661W WO2023045876A1 WO 2023045876 A1 WO2023045876 A1 WO 2023045876A1 CN 2022119661 W CN2022119661 W CN 2022119661W WO 2023045876 A1 WO2023045876 A1 WO 2023045876A1
Authority
WO
WIPO (PCT)
Prior art keywords
electronic device
application
application program
information
user
Prior art date
Application number
PCT/CN2022/119661
Other languages
English (en)
French (fr)
Inventor
陈闽江
Original Assignee
花瓣云科技有限公司
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 花瓣云科技有限公司 filed Critical 花瓣云科技有限公司
Publication of WO2023045876A1 publication Critical patent/WO2023045876A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation

Definitions

  • the present application relates to the field of communication technologies, and in particular to an application program installation method and related equipment.
  • Embodiments of the present application provide an application program installation method and related devices, which can implement cross-device application program installation, simplify user operations, and improve user experience.
  • the embodiment of the present application provides a method for installing an application program, which is applied to a first electronic device.
  • the method includes: the first electronic device displays a first interface of an application market program, and the first interface includes the first interface of the first application program.
  • the electronic device obtains from the server or the second electronic device; the first electronic device detects the user's second operation; in response to the second operation, the first electronic device sends a first request to the second electronic device, and the first request is used to indicate
  • the second electronic device installs the first application corresponding to the second electronic device.
  • the application program installation method provided by the embodiment of the present application can solve the problem that when a user uses an electronic device to search for an application program to be installed, the user may search for the same application program applicable to multiple different types of electronic devices (such as PCs, mobile phones, etc.).
  • cross-device application installation can solve the problem that users need to perform a download and installation process on each device when they want to install the same application on multiple devices, simplify user operations, and improve user experience.
  • the method before the first electronic device detects the user's second operation, the method further includes: the first electronic device detects the user's operation on the third option. In this way, the user can select an electronic device (for example, the second electronic device) to install the first application program.
  • the second interface further includes: a fourth option for identifying the third electronic device, and before the first electronic device detects the user's second operation, the method further includes: the first electronic device The user's operation on the third option and the fourth option is detected; in response to the second operation, the first electronic device also sends a second request to the third electronic device, and the second request is used to instruct the third electronic device to install the third electronic device with the third electronic device.
  • the first application program corresponding to the device. In this way, the user can simultaneously select multiple electronic devices (for example, the second electronic device and the third electronic device) to install the first application program.
  • the method before the first electronic device displays the first interface of the application market program, the method further includes: the first electronic device obtains a keyword input by the user, and searches for the first application program based on the keyword. In this way, the user can find the first application program through a search operation.
  • the method before the first electronic device detects the user's first operation on the first option, the method further includes: the first electronic device logs in the first account, and the first account is related to the second electronic device connection; the first electronic device obtains the device information of the second electronic device through the server. In this way, the first electronic device and the second electronic device can establish an association relationship through the server, and obtain the device information of the second electronic device through the server.
  • the first electronic device sends the first request to the second electronic device, which specifically includes: the first electronic device sends the first request to the second electronic device through the server, and the first request includes information related to the second electronic device. Information about the first application program corresponding to the electronic device.
  • the first electronic device can send the information of the first application program corresponding to the second electronic device to the second electronic device through the server, and further, the second electronic device can Information about the first application program corresponding to the electronic device to download the first application program.
  • the method before the first electronic device displays the first interface of the application market program, the method further includes: the first electronic device establishes a short-distance communication connection with the second electronic device; Obtain the device information of the second electronic device from the communication connection.
  • the first electronic device can establish a short-distance communication connection with other nearby electronic devices (such as the second electronic device), and obtain device information of other nearby electronic devices (such as the second electronic device).
  • the first electronic device sending the first request to the second electronic device specifically includes: the first electronic device sending the first request to the second electronic device based on a short-distance communication connection, and the first request includes Information about the first application program corresponding to the second electronic device.
  • the first electronic device can send the information of the first application program corresponding to the second electronic device to the second electronic device, and further, the second electronic device can Information about the first application program corresponding to the electronic device to download the first application program.
  • the method before the first electronic device displays the second interface of the application market program, the method further includes: the first electronic device sends a third request to the server, and the third request is used to obtain the first Application program information; the first electronic device receives the first application program information sent by the server, the first application program information includes the first application program information corresponding to the first electronic device and the first application program information corresponding to the second electronic device Application information. In this way, the first electronic device can acquire the information of the first application program through the server.
  • the third request includes device information of the second electronic device and device information of the first electronic device.
  • the second interface further includes status information of the first application program, and the status information of the first application program includes indication information indicating that the first application program has been installed, or indication information indicating that the first application program is not installed .
  • the first electronic device can obtain which electronic device has installed/not installed the first application program.
  • the method further includes: the first electronic device receives a message sent by the second electronic device that the first application program is successfully installed, and displays indication information that the second electronic device successfully installs the first application program. In this way, the first electronic device can be notified of the successful installation of the first application program on the second electronic device.
  • the second interface further includes installation progress information of the first application program.
  • the installation progress information of the first application program can be displayed on the first electronic device, so that the user can be notified in time.
  • the embodiment of the present application provides a method for installing an application program, which is applied to a communication system including a first electronic device and a second electronic device, and the method includes: the first electronic device displays a first interface of an application market program, The first interface includes the icon of the first application program and the first option corresponding to the first application program; the first electronic device detects the user's first operation on the first option; in response to the first operation, the first electronic device displays the application market
  • the second interface of the program the second interface includes a second option for identifying the first electronic device and a third option for identifying the second electronic device, the third option is generated based on the device information of the second electronic device, the second option
  • the device information of the second electronic device is obtained by the first electronic device from the server or the second electronic device; the first electronic device detects the second operation of the user; in response to the second operation, the first electronic device sends the second electronic device to the second electronic device A request, the first request is used to instruct the second electronic device to install the first application program corresponding to
  • the method before the first electronic device detects the user's second operation, the method further includes: the first electronic device detects the user's operation on the third option.
  • the second interface further includes: a fourth option for identifying the third electronic device, and before the first electronic device detects the user's second operation, the method further includes: the first electronic device The user's operation on the third option and the fourth option is detected; in response to the second operation, the first electronic device also sends a second request to the third electronic device, and the second request is used to instruct the third electronic device to install the third electronic device with the third electronic device.
  • the first application program corresponding to the device.
  • the method before the first electronic device displays the first interface of the application market program, the method further includes: the first electronic device obtains a keyword input by the user, and searches for the first application program based on the keyword.
  • the method before the first electronic device detects the user's first operation on the first option, the method further includes: logging in the first account with the first electronic device and the second electronic device.
  • the first electronic device sends the first request to the second electronic device, which specifically includes: the first electronic device sends the first request to the second electronic device through the server, and the first request includes information related to the second electronic device. Information about the first application program corresponding to the electronic device.
  • the communication system further includes a server
  • the method further includes: the first electronic device sends a request to the server to obtain the second electronic device request for device information; the server receives the request, and sends the device information of the second electronic device to the first electronic device; wherein, the device information of the second electronic device is obtained by the server after the second electronic device logs into the first account.
  • the method before the first electronic device displays the first interface of the application market program, the method further includes: the first electronic device establishes a short-distance communication connection with the second electronic device.
  • the method before the first electronic device displays the first interface of the application market program, the method further includes: the first electronic device and the second electronic device log in with the same account or with different accounts.
  • the first electronic device sending the first request to the second electronic device specifically includes: the first electronic device sending the first request to the second electronic device based on a short-distance communication connection, and the first request includes Information about the first application program corresponding to the second electronic device.
  • the method before the first electronic device displays the second interface of the application market program, the method further includes: the first electronic device requests the second electronic device to acquire the device information of the second electronic device; The second electronic device receives the request, and sends the device information of the second electronic device to the first electronic device.
  • the method further includes: the first electronic device sends a third request to the server, and the third request is used to obtain the first Application program information; the server receives the third request and sends the first application program information to the first electronic device, the first application program information includes the first application program information corresponding to the first electronic device and the information related to the second electronic device The information of the first application program corresponding to the device; the first electronic device receives the information of the first application program.
  • the third request includes device information of the second electronic device and device information of the first electronic device.
  • the second interface further includes status information of the first application program, and the status information of the first application program includes indication information indicating that the first application program has been installed, or indication information indicating that the first application program is not installed .
  • the method further includes: the second electronic device sends a message that the first application program is installed successfully to the first electronic device; the first electronic device receives the message and displays the first application program installed by the second electronic device An indication of the success of the application.
  • the second interface further includes installation progress information of the first application program.
  • the method before the second electronic device downloads the first application program, the method further includes: the second electronic device displays first prompt information, where the first prompt information is used to prompt the user to download the first application program; The second electronic device detects that the user downloads the first application program.
  • the method further includes: installing the first application program on the second electronic device; after the first application program is installed on the second electronic device, the second electronic device sends the first application program to the first electronic device A message of successful installation; the first electronic device receives the message and displays indication information indicating that the second electronic device has successfully installed the first application program.
  • the embodiment of the present application provides an application program installation method, which is applied to a second electronic device, and the method includes: the second electronic device receives the first request sent by the first electronic device; the second electronic device based on the first A request is made to obtain the information of the first application program corresponding to the second electronic device and to download the first application program; wherein, the first request is used to instruct the second electronic device to install the first application program corresponding to the second electronic device.
  • the method before the second electronic device receives the first request sent by the first electronic device, the method further includes: the second electronic device logs in the first account; wherein, the first account and the first electronic device Associated.
  • the second electronic device receiving the first request sent by the first electronic device specifically includes: the second electronic device receiving the first request sent by the first electronic device through the server, and the first request includes the Information about the first application program corresponding to the second electronic device.
  • the method before the second electronic device receives the first request sent by the first electronic device, the method further includes: the second electronic device establishes a short-distance communication connection with the first electronic device.
  • the second electronic device receiving the first request sent by the first electronic device specifically includes: the second electronic device receives the first request sent by the first electronic device based on a short-distance communication connection, and the first request includes information about the first application program corresponding to the second electronic device.
  • the method before the second electronic device receives the first request sent by the first electronic device, the method further includes: the second electronic device receives the request sent by the first electronic device to acquire the device information of the second electronic device. Request: the second electronic device sends the device information of the second electronic device to the first electronic device.
  • the method before the second electronic device downloads the first application program, the method further includes: the second electronic device displays first prompt information, where the first prompt information is used to prompt the user to download the first application program; The second electronic device detects that the user downloads the first application program.
  • the method further includes: installing the first application program on the second electronic device; after the first application program is successfully installed on the second electronic device, the second electronic device sends the first application program to the first electronic device A message that the program was installed successfully.
  • an embodiment of the present application provides an electronic device, where the electronic device includes one or more processors and one or more memories; wherein the one or more memories are coupled to the one or more processors,
  • the one or more memories are used to store computer program codes, the computer program codes include computer instructions, and when the one or more processors execute the computer instructions, the electronic device executes any one of the above-mentioned first aspect or third aspect Methods in the possible implementations of an item.
  • the embodiment of the present application provides a computer storage medium, the computer storage medium stores a computer program, the computer program includes program instructions, and when the program instructions are run on the electronic device, the electronic device executes the above-mentioned first step.
  • an embodiment of the present application provides a computer program product, which, when the computer program product is run on a computer, causes the computer to execute the method in any possible implementation manner of the first aspect or the third aspect above.
  • Fig. 1A-Fig. 1F are a group of user interface diagrams provided by the embodiment of the present application.
  • FIG. 2 is a schematic diagram of the architecture of a communication system provided by an embodiment of the present application.
  • FIG. 3A is a schematic flowchart of a method for installing an application provided by an embodiment of the present application
  • FIG. 3B is a schematic flowchart of another implementation manner of stage 2 in the application program installation method shown in FIG. 3A provided in the embodiment of the present application;
  • 4A-4M are schematic diagrams of another set of user interfaces provided by the embodiment of the present application.
  • FIG. 5 is a schematic flowchart of another method for installing an application program provided by an embodiment of the present application.
  • 6A-6F are schematic diagrams of another set of user interfaces provided by the embodiment of the present application.
  • FIG. 7 is a schematic structural diagram of an electronic device provided by an embodiment of the present application.
  • FIG. 8 is a schematic diagram of a software structure of an electronic device provided by an embodiment of the present application.
  • FIG. 9 is a schematic structural diagram of another electronic device provided by an embodiment of the present application.
  • FIG. 10 is a schematic structural diagram of a server provided by an embodiment of the present application.
  • the mobile Internet is an open system. Users can download and install various types of application programs on the electronic device through the application program of the application market (or called the application store).
  • the general application market can only provide The local device installs different applications, and there is no way to install applications across devices. For example, at present, when a user searches for the "XX Video" application on a mobile phone, the application market server will send the mobile phone the corresponding information about the model of the mobile phone.
  • the current application market servers commonly used in the industry send independent applications to local devices.
  • the application market server can only send the exe file corresponding to the application program to the local device.
  • the application market server can also simulate the device (for example with system's PC emulator) to send the APK file corresponding to the application.
  • sending an application program may mean that the application market server sends an installation package and/download link of an application program (Application, APP) that can run on the electronic device to the application program in the application market on the electronic device , further, the electronic device can download and install the corresponding application program through the application market.
  • Application Application, APP
  • FIGS. 1A-1F A typical application program installation scenario is introduced below with reference to FIGS. 1A-1F .
  • the electronic device 100 can be a PC.
  • Input "XX video” in the search box 111 in a user interface 110 of the market, at this time, two identical search results (such as the same icon and the same name) corresponding to "XX video" can be displayed on the user interface 110: search The result 112 and the search result 113, these two same search results are respectively used to represent the exe file corresponding to the "XX video” application program and the APK file corresponding to the "XX video” application program.
  • the application corresponding to the exe file of the same content provider (Content Provider, CP) and the application corresponding to the APK file are two separate applications, and these two applications are not related, such as the " XX Video” application is not associated with the PC version of "XX Video” application.
  • the search result 113 represents the APK file corresponding to the "XX Video” application, that is, the file is suitable for installing the mobile phone version of the "XX Video” application.
  • the electronic device 200 can be a mobile phone. If the user wants to download and install the "XX Video” application program on the electronic device 200, the electronic device 100 can detect the user's operation (such as a click operation) on the installation option 114, and respond to this Operation, the electronic device 100 may display the window 120 as exemplarily shown in FIG. 1B .
  • the window 120 may include a two-dimensional code 121 and a prompt 122, and the prompt 122 is used to remind the user to scan the two-dimensional code 121 through the electronic device 200 to download the "XX video" application.
  • the electronic device 200 may detect the user's code scanning operation, and in response to the operation, the electronic device 200 may display the user interface 130 in the code scanning scene as exemplarily shown in FIG. 1C .
  • the electronic device 200 can display a window 140 as shown in Figure 1D exemplarily, and the window 140 can include the APK file name (such as XX Video.apk) corresponding to the "XX Video” application, download options 141, etc.
  • APK file name such as XX Video.apk
  • the electronic device 200 may detect the user's operation on the download option 141 (such as a click operation), and in response to the operation, the electronic device 200 may download the APK file corresponding to the "XX video" application through the XX browser. After the download is successful, the electronic device 200 may display a window 150 as exemplarily shown in FIG. 1E .
  • the window 150 may include an allow option 151, a prompt 152, etc., and the prompt 152 is used to prompt the user to download the APK file corresponding to the "XX video” application. If successful, the XX browser can be used to install the "XX Video" application.
  • the electronic device 200 may detect the user's operation on the permission option 151 (for example, a click operation), and in response to the operation, the electronic device 200 may use the XX browser to install the "XX video" application. After the installation is successful, the electronic device 200 may display the user interface 160 as exemplarily shown in FIG. 1F , and the user interface 160 is used to prompt the user that the "XX video" application program is successfully installed.
  • the permission option 151 for example, a click operation
  • One way to solve the above-mentioned problem at present is that the user can download and install an application program on the local device first, and if the installation package of the application program includes an application program installation package corresponding to another electronic device, the When the device establishes a communication connection (such as a Bluetooth communication connection, etc.) with another electronic device, the local device can push the application program installation package to the other electronic device, thereby implementing cross-device application program installation.
  • a communication connection such as a Bluetooth communication connection, etc.
  • the local device needs to download and install the application program first, and then the application program can be installed across devices, and the user experience is poor.
  • the embodiment of the present application provides an application program installation method, which can solve the problem that when a user uses an electronic device to search for an application program to be installed, the user may search for the same application program applicable to multiple different types of electronic devices (such as PCs, mobile phones, etc.).
  • cross-device application installation can solve the problem that users need to perform a download and installation process on each device when they want to install the same application on multiple devices, simplify user operations, and improve user experience.
  • Solution 1 (far-field solution): establish a remote communication connection based on the same account logged in between different electronic devices, so as to realize cross-device application installation.
  • Solution 2 (near-field solution): establish a short-distance communication connection based on the mutual discovery between different nearby electronic devices, so as to realize cross-device application installation.
  • a communication system provided by an embodiment of the present application is introduced below.
  • Fig. 2 exemplarily shows a communication system provided by an embodiment of the present application.
  • the communication system may include multiple electronic devices (for example, electronic device 100 , electronic device 200 , etc.), a server 100 , and a server 200 .
  • the multiple electronic devices included in the communication system are intelligent electronic devices, and the embodiments of the present application do not limit the specific types of electronic devices.
  • electronic devices may include mobile phones, and may also include tablet computers, desktop computers, laptop computers, handheld computers, notebook computers, smart screens, wearable devices (such as smart watches), augmented reality (augmented reality, AR) devices, virtual reality (virtual reality, VR) devices, artificial intelligence (AI) devices, car machines, smart headsets, game consoles, and may also include Internet of Things (IOT) devices, smart home devices, etc.
  • electronic devices may include mobile phones, and may also include tablet computers, desktop computers, laptop computers, handheld computers, notebook computers, smart screens, wearable devices (such as smart watches), augmented reality (augmented reality, AR) devices, virtual reality (virtual reality, VR) devices, artificial intelligence (AI) devices, car machines, smart headsets, game consoles, and may also include Internet of Things (IOT) devices, smart home devices, etc.
  • IOT Internet of Things
  • the plurality of electronic devices in the communication system may also include non-portable terminal devices such as a laptop computer (laptop) with a touch-sensitive surface or a touch panel, a desktop computer with a touch-sensitive surface or a touch panel, etc. wait.
  • non-portable terminal devices such as a laptop computer (laptop) with a touch-sensitive surface or a touch panel, a desktop computer with a touch-sensitive surface or a touch panel, etc. wait.
  • the server 100 and the server 200 may be traditional servers or cloud servers, which is not limited in this embodiment of the present application.
  • the server 100 may be an account server, which is responsible for account login and device management, and may save a device information list of all electronic devices logged into the same account.
  • the server 200 may be a distribution server (usually referred to as an application market server), which is responsible for sending and managing various application programs. Data interaction can be performed between the server 100 and the server 200 .
  • the server 100 and the server 200 can be integrated into one server.
  • Multiple electronic devices in the communication system can be connected by logging in with the same account.
  • multiple electronic devices can log in to the same Huawei account, and remotely connect and communicate through the server.
  • the account can be a mobile phone number, an email address, a user-defined user name, a user name assigned by an APP server, a user name used for login in an APP in an electronic device, and the like.
  • Multiple electronic devices in the communication system can also establish connections by scanning two-dimensional codes, near field communication (near field communication, NFC) touching, searching for Bluetooth devices, etc. There is no limitation here.
  • the communication connections established between multiple electronic devices in the communication system may include but not limited to: wired connections, wireless connections such as Bluetooth (bluetooth, BT) connections, wireless local area networks (wireless local area networks, WLAN) Such as wireless fidelity point to point (wireless fidelity point to point, Wi-Fi P2P) connection, wireless fidelity (wireless fidelity, Wi-Fi) connection, near field communication (near field communication, NFC) connection, infrared technology (infrared, IR) connections, and remote connections (such as connections established through a server), and so on.
  • wireless connections such as Bluetooth (bluetooth, BT) connections, wireless local area networks (wireless local area networks, WLAN)
  • wireless fidelity point to point wireless fidelity point to point, Wi-Fi P2P
  • wireless fidelity wireless fidelity, Wi-Fi
  • NFC near field communication
  • infrared technology infrared, IR
  • multiple electronic devices in the communication system may also be connected and communicate in combination with any of the above methods, which is not limited in this embodiment of the present application.
  • Multiple electronic devices in the communication system can be configured with the same or different software operating systems (operating system, OS), including but not limited to etc. in, It is Huawei's Hongmeng system.
  • OS software operating systems
  • the electronic device 100 may be a PC, and the system of the electronic device 100 may be operating system, the electronic device 200 can be a mobile phone, and the system of the electronic device 200 can be operating system.
  • the embodiment of the present application provides a method for installing an application program, and the method can be applied to a communication system including a plurality of electronic devices, a server 100, and a server 200.
  • each electronic device needs to perform account login based on the same account, and the server 100 may save a device information list of all electronic devices that log in to the account.
  • the electronic device 100 can obtain from the server 100 the device information list of all electronic devices that log in to the account, and display it.
  • the electronic device 100 can send a corresponding instruction to the server 200, the server 200 can send the instruction to the electronic device 200 after receiving the instruction, and the electronic device 200 receives the instruction Then, based on the instruction, the installation package file corresponding to the above-mentioned application program can be automatically downloaded to the server 200, and the above-mentioned application program can be automatically installed, so as to realize cross-device application program installation.
  • FIG. 3A exemplarily shows a specific flow of an application installation method provided by an embodiment of the present application.
  • the method can be applied to a communication system including the electronic device 100 , the electronic device 200 , the server 100 , and the server 200 .
  • the server 100 can be an account server
  • the server 200 can be a distribution server
  • the electronic device 100 can be a PC
  • the electronic device 200 can be a mobile phone
  • both the electronic device 100 and the electronic device 200 can include an application download module for downloading and installing various
  • the application program download module of the electronic device 100 may be an application market of a PC
  • the application program download module of the electronic device 200 may be an application market of a mobile phone.
  • the electronic device 100 detects the operation of the user logging in account 1, and in response to the operation, the electronic device 100 sends the account name 1 and the device information 1 to the server 100, wherein the device information 1 includes the device name 1 and the device type 1 and other information.
  • the server 100 may store the above-mentioned account name 1 and device information 1 .
  • the electronic device 100 may include an application program download module, and the application program download module is used for downloading and installing various application programs.
  • the application program download module may be an application program installed on the electronic device 100 , an application market.
  • the electronic device 100 may detect the user's operation (for example, click operation) on the application market icon 411 displayed on the user interface 410 , and in response to the operation, the electronic device 100 may open the application program of the application market.
  • the electronic device 100 may detect the user's operation of logging in account 1 on the application market, and in response to the operation, the electronic device 100 may send the account name 1 and device information 1 to the server 100, which may include but not limited to Device name 1, device type 1 and other information.
  • the account name 1 is the account name of the account 1, and the account name may be a user-defined user name, mobile phone number, e-mail number and the like.
  • the account name of account 1 may be Summon.
  • the device name 1 is the device name of the electronic device 100, and the device name can be a default device name of the device, or a device name independently set by the user, for example, the device name of the electronic device 100 can be Huawei Matebook X.
  • the device type 1 is a device type of the electronic device 100, for example, if the electronic device 100 is a PC, then the device type of the electronic device 100 is a PC.
  • the server 100 may save the account name 1 and device information 1 .
  • the electronic device 200 detects the operation of the user logging in account 1, and in response to the operation, the electronic device 200 sends the account name 1 and the device information 2 to the server 100, wherein the device information 2 includes the device name 2 and the device type 2 and other information.
  • the server 100 may store the above-mentioned account name 1 and device information 2 .
  • the electronic device 200 may also include an application program download module, which is used for downloading and installing various application programs.
  • the application program download module may be an application program installed on the electronic device 200 , an application market.
  • the electronic device 100 may detect the user's operation (for example, click operation) on the application market icon 421 displayed on the user interface 420 , and in response to the operation, the electronic device 200 may open the application program of the application market.
  • the electronic device 200 may detect the user's operation of logging in account 1 on the application market, and in response to the operation, the electronic device 200 may send the account name 1 and device information 2 to the server 100, the device information 2 may include but not limited to Device name 2, device type 2 and other information.
  • the account name 1 is the account name of the account 1, and the account name may be a user-defined user name, mobile phone number, e-mail number and the like.
  • the account name of account 1 may be Summon.
  • the device name 2 is the device name of the electronic device 200, and the device name may be a default device name of the device, or a device name independently set by the user, for example, the device name of the electronic device 200 may be Huawei P40 Pro.
  • the device type 2 is the device type of the electronic device 200, for example, if the electronic device 200 is a mobile phone, then the device type of the electronic device 200 is a mobile phone.
  • the server 100 may save the account name 1 and device information 2 .
  • the embodiment of the present application does not limit the time sequence of executing steps S301-step S303, and executing steps S304-step S306. That is to say, the electronic device 100 and the electronic device 200 can log in to the account 1 at the same time, and the electronic device 100 can also log in to the account 1 before or after the electronic device 200 logs in to the account 1, which is not limited in this embodiment of the present application.
  • Table 1 exemplarily shows the account name and device information (such as device name and device type) saved by the server 100 after both the electronic device 100 and the electronic device 200 log in to the account 1 .
  • the server 100 may store device information of all electronic devices logged into the account 1 .
  • Table 1 only shows the device information of the electronic device 100 , the electronic device 200 , and the watch that log in account 1. It is easy to understand that the server 100 can also store more device information of the device logged in account 1 .
  • the electronic device can send both the account information and the device information to the account server, and the account server can save both the account information and the device information.
  • the account information is not limited to the aforementioned account name;
  • the device information is not limited to the aforementioned device name and device type, and may also include device ID, serial number, media access control address, device model and other information. This embodiment of the present application does not limit it.
  • step S301 and step S304 may refer to the operation of inputting the account name, account password and other information when the user logs into the application market for the first time; it may also refer to the user logging in to the system account, opening The application market, the operation of logging in to the system account by default in the application market; it can also refer to the operation that the user logs out of the application market after logging in to the application market for the first time, and then opens the application market and logs in to the account again.
  • Phase 2 Acquisition and display of application information and device information
  • the electronic device 100 detects the user's operation of searching for the application program 1, and in response to the operation, the electronic device 100 sends a request to the server 200 for obtaining relevant information of the application program 1, and the request may carry the application program of the application program 1 Name and other information.
  • the server 200 sends the relevant information of the application program 1 to the electronic device 100, wherein the relevant information includes the device type applicable to the application program 1, the name of the application program installation package corresponding to the different device types of the application program 1, and the download link. wait.
  • the user interface 430 is an exemplary user interface with a search function on the application market of the electronic device 100 .
  • the electronic device 100 may detect that the user searches for "XX video" in the search box 431 (for example, the user enters the keyword "XX video”) ”), in response to this operation, the electronic device 100 may send a request to the server 200 to obtain information related to the “XX Video” application, and the request may carry information such as the application name of the “XX Video” application.
  • the server 200 may send information related to the "XX Video” application to the electronic device 100.
  • the relevant information may include but not limited to the type of device to which the "XX Video” application applies, and the "XX Video” application. App installation package names, download links, etc. for different device types.
  • the related information also includes the name of the application program.
  • the above related information may not include the download link.
  • Table 2 exemplarily shows the information related to the “XX video” application sent by the server 200 to the electronic device 100 .
  • the application name is "XX Video", and there are two types of devices applicable to the "XX Video” application: PC and mobile phone.
  • the name of the application installation package of the "XX Video” application corresponding to the device type of PC is XXTV
  • the download link is http://AAAAAA
  • the name of the application installation package of the "XX Video” application corresponding to the device type of mobile phone is com .xxtv.quickapp
  • the download link is http://BBBBBB .
  • the electronic device 100 sends to the server 100 a request to obtain the device information of the device that has logged in the account 1, and the server 100 sends the device information of the device that has logged in the account 1 to the electronic device 100 after receiving the request.
  • the electronic device 100 may send a request to the server 100 to acquire the device information of the device that has logged into the account 1 (for example, the aforementioned account named Summon), and the request may carry There are information such as the account name of account 1. Since the server 100 has saved the device information of all electronic devices that have logged in account 1 in advance, after receiving the request, the server 100 can send the device information of the devices that have logged in account 1 to the electronic device 100, wherein the device information can be It is the device information of the device of the login account 1 saved by the server 100 shown in Table 1, for example, the device name and device type of the electronic device 100, and the device name and device type of the electronic device 200.
  • step S310-step S311 may be performed first, and then step S308-step S309 may be performed; in other embodiments, step S308-step S309 and step S310-step S311 may be performed simultaneously.
  • the electronic device 100 may first complete step S310-step S311, that is, obtain the device information of the device logged into the same account, and then, the execution process of step S308-step S309 may be as follows: the electronic device 100 based on The obtained device information sends a request to the server 200, the request includes the obtained device information, and the request is used to instruct the server 200 to send the application installation package name, download link, etc. corresponding to the device information to the electronic device 100. After receiving the request, the server 200 may send to the electronic device 100 the name of the application installation package, the download link, etc. corresponding to the device information.
  • the electronic device 100 displays the search result of the application program 1 and the device information list of devices that have logged in the account 1.
  • step S307-step S311 that is, after the electronic device 100 obtains the aforementioned application 1 related information and the device information of the device that has logged in account 1, the electronic device 100 can display the search information of the application 1.
  • the result for example, is the search result 432 of the "XX Video" application shown exemplarily in FIG. 4C.
  • the electronic device 100 can also display an installation option 435, and the installation option 435 can be used to install the "XX Video” application program on this machine or other devices.
  • the electronic device 100 may also display the device name 433 and the drop-down option 434 of the device.
  • the electronic device 100 may detect the user's operation (such as a click operation) on the drop-down option 434, and in response to the operation, the electronic device 100 may display a window 440 as exemplarily shown in FIG. A list of device information for the device.
  • the user's operation such as a click operation
  • window 440 may only include device names of devices that have logged in account 1, for example, the device name of electronic device 100 is Huawei Matebook X, the device name of electronic device 200 is Huawei P40 Pro, and so on.
  • the devices displayed in the above device information list may include all devices that log in account 1, including devices that are applicable to application program 1 (such as Huawei Matebook X, Huawei P40 Pro) and Include a device (such as Huawei Watch GT) that does not apply to the application program 1.
  • a prompt message "incompatible" can be displayed next to the device information of the device that does not apply to the application program 1; in other embodiments , the devices displayed in the above device information list may also only include devices that are logged in with Account 1 and that are applicable to Application 1, and do not include devices that are not applicable to Application 1.
  • the above device information list may only include other devices logged in with the same account as the electronic device 100 , without including the electronic device 100 .
  • step S307-step S312 in the above-mentioned stage 2 may also be step S307'-step S313' shown in Figure 3B, which will be described in detail below:
  • the electronic device 100 detects the operation of the user's search application 1.
  • the electronic device 100 sends to the server 200 a request for acquiring information 1 related to the application program 1.
  • step S307'-step S308' reference may be made to the relevant content in step S307-step S308 in the embodiment shown in FIG.
  • the server 200 sends the application program 1 related information 1 to the server 100, wherein the related information 1 may include the device type applicable to the application program 1, the name of the application program installation package corresponding to the different device types of the application program 1, the download link, etc. .
  • the above application 1 related information 1 is the application 1 related information in the aforementioned step S309 (for example, the “XX video” application related information shown in Table 2).
  • the electronic device 100 sends to the server 100 a request to obtain the device information of the device that has logged in account 1.
  • step S310' for the specific execution process of step S310', reference may be made to the related content in step S310 in the embodiment shown in FIG. 3A , which will not be repeated here.
  • the server 100 determines the relevant information 2 of the application 1 based on the device type applicable to the application 1 and the device type of the device that has logged in the account 1, wherein the relevant information 2 may include the applicable application 1 and the device that has logged in the account 1
  • the device type of the device the name of the installation package of the application 1, the download link of the application 1, etc.; wherein, different device types correspond to different versions of the application 1, and different versions of the application 1 correspond to different installation packages of the application 1 Name and download link of different apps 1.
  • the server 100 since the server 100 has stored the device information of all electronic devices that log in account 1 in advance, and the device information may include information such as device names and device types of all electronic devices, the server 100 may send information based on the received server 200.
  • the device type applicable to application 1 is used to determine the device type of the device that is applicable to application 1 and has logged in account 1.
  • the device types applicable to application 1 are PC, mobile phone, and watch, and the device types of devices that have logged in account 1 are PC and mobile phone, then the device types that apply to application 1 and have logged in account 1 are PC and mobile phones; For example, if the device types applicable to application 1 are PC and mobile phone, and the device types of devices that have logged in account 1 are PC, mobile phone, and watch, then application 1 is applicable and the device types of devices that have logged in account 1 are PC and mobile phone; For example, the device types applicable to application 1 are PC, mobile phone, and watch, and the device types of devices that have logged in account 1 are PC, mobile phone, and watch, then the device types that apply to application 1 and have logged in account 1 are PC, mobile phone ,watch.
  • the server 100 may also determine the installation package name of the application 1, the download link of the application 1, etc. based on the received application installation package names and download links of the application 1 corresponding to different device types sent by the server 200.
  • the name of the installation package of application 1 is the name of the application installation package of the device type of the device that application 1 corresponds to the above-mentioned applicable application 1 and has logged in account 1
  • the download link of application 1 is that application 1 corresponds to the above-mentioned applicable application Program 1 and the download link of the device type of the device that has logged in account 1, etc.
  • the server 100 has determined the relevant information 2 of the application 1, where the relevant information 2 may include, but not limited to, the device type of the device that is applicable to the application 1 and has logged in the account 1, the installation package name of the application 1, the application 1 download link etc.
  • the server 100 sends to the electronic device 100 the information 2 related to the application 1, and the device information of the device that is applicable to the application 1 and has logged in the account 1.
  • the electronic device 100 displays the search results of the application program 1 and the device information list of devices that are applicable to the application program 1 and have logged in the account 1.
  • the server 100 may also send to the electronic device 100 the device information of all devices that have logged in the account 1, and these devices may include devices for which the application program 1 is not applicable. For example, assuming that application 1 does not apply to smart watches, but the devices that have logged into account 1 include smart watches, the server 100 can also send the device information of smart watches to the electronic device 100. In this case, the above device information list The device information of the smart watch can also be displayed in , and a prompt message (for example, the prompt message "incompatible" shown in window 440 in FIG. 4D ) can be displayed to prompt the user that the application program 1 is not suitable for the smart watch.
  • a prompt message for example, the prompt message "incompatible" shown in window 440 in FIG. 4D
  • Phase 3 Application download and installation phase
  • the electronic device 100 detects that the user chooses to install the application 1 on the device corresponding to the device name 2. In response to this operation, the electronic device 100 determines that the device type of the device is device type 2 based on the device selected by the user. And further determine the download link of the application program 1 corresponding to the device type 2.
  • the electronic device 100 can detect the operation of the user choosing to install the "XX Video” application program on the device corresponding to the device name 2 (for example, the user clicks the operation of the Huawei P40 Pro option shown in FIG. 4D and the user clicks the icon 4E), in response to this operation, the electronic device 100 puts the Huawei P40 Pro option in the selected state shown in FIG. 4E, which means that the device selected by the user is Huawei P40 Pro.
  • the device 100 has obtained the device information of the device that has logged in account 1 in advance (refer to Table 1). Therefore, the electronic device 100 can determine that the device type of the device is device type 2 (ie, mobile phone) based on the device selected by the user. Further, because The electronic device 100 has acquired the relevant information of the "XX Video” application in advance (refer to Table 2), therefore, the electronic device 100 can determine that the download link of the "XX Video” application corresponding to device type 2 is http://BBBBBB.
  • the above-mentioned operation of detecting that the user chooses to install the "XX Video” application on the device corresponding to the device name 2 may also be the operation of the user clicking the Huawei P40 Pro option shown in Figure 4D, that is, That is to say, after the user selects the device option to install the "XX Video” application program, the electronic device 100 can perform subsequent steps without clicking the installation option.
  • the electronic device 100 may also determine, based on the device type 2, the name of the application program installation package corresponding to the device type 2 of the application program 1 .
  • the interface display and user operation may be different from those in FIG. 4C-FIG. 4E.
  • the electronic device 100 can only display the search result 432 and the installation option 435 of the "XX video" application. Further, the electronic device 100 may detect the user's operation on the installation option 435 (such as a click operation), and in response to the operation, the electronic device 100 may display the window 450 exemplarily shown in FIG. 4G . Referring to Fig. 4G and Fig. 4H, different from Fig. 4D-Fig.
  • the aforementioned operation of the user choosing to install the "XX Video" application on the device corresponding to the device name 2 may include the user clicking the Huawei P40 Pro option shown in Fig. 4G and the user clicks the install to device option shown in Figure 4H.
  • the user can select only one device (such as Huawei P40 Pro) to install the "XX Video” application at a time, or select multiple devices (such as Huawei Matebook X, Huawei P40 Pro, etc.) to install at the same time "XX Video” application to improve installation efficiency.
  • one device such as Huawei P40 Pro
  • select multiple devices such as Huawei Matebook X, Huawei P40 Pro, etc.
  • the electronic device 100 sends the download instruction 1 to the server 200, the instruction includes the device information 2, the download link of the application program 1 corresponding to the device type 2, etc., and the server 200 sends the download instruction 1 to the electronic device 200 after receiving the download instruction 1.
  • the electronic device 200 may display prompt information for prompting the user to install the application program 1 , and may detect that the user agrees to the operation of installing the application program 1 .
  • the electronic device 100 may send the download instruction 1 to the server 200, the instruction may include but not limited to the device information of the electronic device 200 (i.e., the device information 2), the download link of the application program 1 corresponding to the device type 2 (such as "XX "Video” application corresponds to the download link of device type 2 http://BBBBBB) and so on.
  • the device information of the electronic device 200 i.e., the device information 2
  • the download link of the application program 1 corresponding to the device type 2 such as "XX "Video” application corresponds to the download link of device type 2 http://BBBBBB) and so on.
  • the device information 2 may include information such as the device name, device ID, and media access control address of the electronic device 200, for the server 200 to find the electronic device 200. After the electronic device 200 is found, the server 200 can communicate with the electronic device 200. to communicate.
  • the download instruction 1 may also include the name of the application installation package of the application 1 corresponding to the device type 2 .
  • the download instruction 1 may further include account information of the electronic device 100 and device information of the electronic device 100 .
  • the server 200 may send the download instruction 1 to the electronic device 200 .
  • the server 200 can first obtain the device information list of all devices logged into the same account as the electronic device 100 from the server 100 based on the account information of the electronic device 100, and then can based on the electronic device 100 Information such as the device name, device ID, and media access control address of the device 200 is found in the device information list, and the device corresponding to the device information 2 is the electronic device 200. In this way, the server 200 can confirm that the download instruction 1 needs to be sent to the electronic device. 200. Further, the server 200 may send the download instruction 1 to the electronic device 200.
  • the server 200 may also only send the download link of the application program 1 corresponding to the device type 2 and the device name of the electronic device 200 to the electronic device 200 .
  • the server 200 may also only send the name of the application installation package of the application 1 corresponding to the device type 2 and the device name of the electronic device 200 to the electronic device 200 .
  • the electronic device 100 can perform a remote communication connection with the electronic device 200 through the server 200 , and notify the electronic device 200 to download and install the application program 1 through the server 200 .
  • the electronic device 200 may display a window 460 as shown in FIG. Prompt the user to download and install Application 1. In this way, the user can be given the right to choose, and at the same time, security can be improved.
  • the electronic device 200 may detect that the user agrees to the operation of downloading and installing the application program 1 (for example, a click operation on option 461 ), and in response to this operation, the electronic device 200 may perform subsequent steps.
  • the display form of the above window 460 may be a Push notification, a pop-up window displayed on a user interface (such as a negative screen, a lock screen interface, a main interface, etc.), which is not limited in this embodiment of the present application.
  • the server 200 does not need to send the name of the application installation package, the download link, etc. of the application 1 corresponding to all device types.
  • the name of the application program 1 the name of the application program installation package for the device type of the electronic device 100 applicable to the application program 1, the download link, etc. may be sent to the electronic device 100, and the electronic device 100 may obtain the
  • the obtained device information displays a window 440 as shown in FIG. 4D , that is, a drop-down menu.
  • the electronic device 100 can install the device of the electronic device 200
  • the information, the name of the application program 1, the account information of the electronic device 100, etc. are sent to the server 200, and the server 200 then determines the application that the application program 1 is applicable to the device type of the electronic device 200 based on the device information of the electronic device 200 and the name of the application program 1.
  • the name of the program installation package, the download link, etc., and based on the device information of the electronic device 200 and the account information of the electronic device 100 it is determined that the application program installation package name, download link, etc.
  • the electronic device 200, further, the server 200 may send the application program installation package name, download link, etc.
  • the server 200 may send a prompt message to the electronic device 100, and the prompt message is used to The user is prompted that there is no installation package or download link of the application program 1 corresponding to the device type of the electronic device 200 .
  • the electronic device 200 sends to the server 200 a request for obtaining the installation package of the application program 1 corresponding to the device type 2, wherein the request includes the download link of the application program 1 corresponding to the device type 2, etc., after the server 200 receives the request , sending the installation package of the application program 1 corresponding to the device type 2 to the electronic device 200, and the electronic device 200 installs the application program 1 after receiving the installation package.
  • the above request may carry the download link of the application program 1 corresponding to the device type 2, and the electronic device 200 Based on the download link of the application program 1 corresponding to the device type 2 sent by the server 200, it can be automatically routed to the server 200 to download the installation package of the application program 1 corresponding to the device type 2. After the download is completed, the electronic device 200 can install the application program 1 .
  • the installation process is the same as the prior art, and will not be repeated here.
  • the above request may carry the application installation package name of the application program 1 corresponding to the device type 2.
  • package name the server 200 sends the installation package of the application program 1 corresponding to the device type 2 to the electronic device 200 , and the electronic device 200 can install the application program 1 after receiving the installation package.
  • the installation process is the same as the prior art, and will not be repeated here.
  • the electronic device 200 sends an instruction that the application program 1 is successfully installed to the server 200, and after receiving the instruction, the server 200 sends the instruction to the electronic device 100, and after receiving the instruction, the electronic device 100 displays that the application program 1 is installed successfully instructions for the .
  • the electronic device 200 may send an instruction to the server 200 indicating that the application program 1 is successfully installed. Carried when sending download command 1.
  • the server 200 may send the instruction to the electronic device 100 for notifying the electronic device 100 that the electronic device 200 has successfully installed the application program 1 .
  • the electronic device 100 may display the indication information 471 exemplarily shown in FIG. 4J that the application program 1 has been installed successfully, and the indication information is used to indicate that the electronic device 200 has successfully installed the application program 1 . That is to say, the electronic device 100 successfully installs the application program 1 to the electronic device 200, realizing cross-device application installation.
  • the above instruction of successful installation may also be a message of successful installation.
  • the application program 1 is the "XX video” application program, as shown in Figure 4K, compared to Figure 4B, the electronic device 200 displays the icon 422 of the newly added "XX video” application program in the user interface 420, It is used to indicate that the electronic device 200 has successfully installed the "XX Video” application program.
  • steps S321 to S323 are optional, and in some embodiments, steps S321 to S323 may not be executed, that is, the electronic device 200 may not notify the electronic device 100 after the application 1 is successfully installed, and the electronic The device 100 also does not need to display the indication information that the application program 1 is installed successfully.
  • FIG. 4H it can be understood that in FIG. 4H , more device information of other electronic devices connected with the electronic device 100 may be displayed, such as the electronic device 300 (not shown in the figure).
  • the user can select multiple devices at one time to install the "XX Video” application program at the same time, for example, the user can select the electronic device 200 and the electronic device 300 at the same time. It is easy to understand that the process of installing the “XX Video” application program on the electronic device 300 is similar to the process of installing the “XX Video” application program on the electronic device 200 , and will not be repeated here.
  • multiple unassociated electronic devices can be associated by logging in with the same account, so as to realize remote cross-device installation of applications The function of the program.
  • the native device such as the electronic device 100
  • the native device does not need to provide multiple application program names suitable for different device types in the foreground for the user to choose. In this way, the problem of the user being confused by multiple application programs with the same name can be well solved. question.
  • the local device can provide the peer device with a download link corresponding to the device type of the peer device.
  • the terminal device can download the installation package file of the corresponding application program according to the download link, so that cross-device application program installation can be realized. In this way, the terminal device can automatically install the application program without repeated download and installation operations by the user, simplifying user operations , improve user experience.
  • the application program 1 related information 1 may also include device information (such as device name, device ID, etc.) Information (such as "installed"), the device information is recorded by the server 200 after the application program 1 is installed on the electronic device; it can also include device information (such as device name, device ID, etc.) of the electronic device that does not install the application program 1 ) and indication information (such as "not installed"), after the server 100 receives the device information of the above-mentioned electronic device that has installed/not installed the application program 1, it can combine the device information with the saved login account 1 device device The information is compared, so as to determine the device information of the device that has logged in account 1 and has installed/not installed application program 1.
  • device information such as device name, device ID, etc.
  • Information such as "installed”
  • the device information is recorded by the server 200 after the application program 1 is installed on the electronic device; it can also include device information (such as device name, device ID, etc.) of the electronic device that does not install the application program 1 ) and indication
  • the information 2 related to the application program 1 may also include device information and indication information of devices that log in to the account 1 and have/have not installed the application program 1.
  • step S313' as exemplarily shown in FIG. 4L, if the device with the login account 1 and the application program 1 installed is the electronic device 200, that is, Huawei P40 Pro, then in the device information list shown in FIG. 4L The prompt message "Installed" can be displayed next to the Huawei P40 Pro to remind the user that the application 1 has been installed on the Huawei P40 Pro.
  • the information 1 related to the application program 1 may also include an application market version suitable for installing the application program 1 .
  • the server 100 After the server 100 receives the application market version suitable for installing the application program 1, it can send a request to obtain the application market version to all electronic devices with the login account 1.
  • the server 100 can receive the application of all electronic devices with the login account 1 The market version, further, the server 100 can compare the above-mentioned application market version suitable for installing the application program 1 with the application market versions of all electronic devices with the login account 1, so as to determine the device information of the device whose application market version is too low ( That is, the device information of the device corresponding to the application market version of the application program 1 is not applicable), further, in step S311', the application program 1 related information 2 may also include the device information of the device whose application market version is too low. Further, in step S313', as exemplarily shown in FIG.
  • the server 100 does not need to send a request to obtain the application market version to all electronic devices that log in account 1, but the electronic device can send the application market version of the electronic device to the server 100 after logging in to the account, and the server 100 can save it.
  • the embodiment of the present application provides another application program installation method, which can be applied to a communication system including multiple electronic devices and the server 200 .
  • the plurality of electronic devices are all nearby electronic devices (i.e., near-end devices), and these multiple electronic devices can discover each other based on Wi-Fi, Bluetooth, NFC and other technologies.
  • a communication path can be established between two electronic devices, that is, a short-distance communication connection. Further, two electronic devices that have discovered each other can acquire the device information of the other.
  • the electronic device 100 may display a device information list of nearby devices acquired by the electronic device 100, and the electronic device 100 may detect that the user chooses to install a certain application program on the electronic device 200.
  • the electronic device 100 can send a corresponding instruction to the electronic device 200 based on the above-mentioned short-distance communication connection, and the electronic device 200 can automatically download the installation corresponding to the above-mentioned application program on the server 200 based on the instruction after receiving the instruction.
  • FIG. 5 exemplarily shows a specific flow of another method for installing an application program provided by an embodiment of the present application.
  • the method can be applied to a communication system including an electronic device 100 , an electronic device 200 , and a server 200 .
  • the server 200 can be a distribution server
  • the electronic device 100 can be a PC
  • the electronic device 200 can be a mobile phone.
  • Both the electronic device 100 and the electronic device 200 can include an application program download module and a device discovery module, and the application program download module is used for downloading and installing Various application programs, for example, the application program download module of the electronic device 100 can be the application market of the PC, the application program download module of the electronic device 200 can be the application market of the mobile phone, and the device discovery module is used to be responsible for the mutual discovery of nearby devices, and A short-distance communication connection is established between different electronic devices.
  • the device discovery module may be a Wi-Fi module, a Bluetooth module, an NFC module, and the like. The specific steps of this method are described in detail below:
  • the electronic device 100 establishes a short-distance communication connection with the electronic device 200 .
  • the method for establishing a short-distance communication connection between the electronic device 100 and the electronic device 200 may include but not limited to scanning a two-dimensional code, near field communication (near field communication, NFC) touch, and searching for Bluetooth devices.
  • the type of the short-distance communication connection established between the electronic device 100 and the electronic device 200 in the embodiment of the present application may include but not limited to Wi-Fi, Bluetooth, NFC, and the like.
  • the electronic device 100 and the electronic device 200 may be devices logged into the same account or logged into different accounts.
  • Phase 2 Acquisition and display of application information and device information
  • the electronic device 100 detects the user's operation of searching for the application program 1, and in response to the operation, the electronic device 100 sends a request to the server 200 to obtain information related to the application program 1, and the server 200 sends a request to the electronic device 100 after receiving the request.
  • the related information of the application program 1 is sent, wherein the related information includes the device type applicable to the application program 1, the name of the application program installation package corresponding to the different device types of the application program 1, the download link, and the like.
  • step S502-step S504 for the specific execution process of step S502-step S504, reference may be made to the relevant content in step S307-step S309 in the embodiment shown in FIG. 3A, and details are not repeated here.
  • step S503 may further include: the electronic device 100 logs in an account (for example, account 1, etc.) on its application program download module.
  • an account for example, account 1, etc.
  • the application program downloading module of the electronic device 100 sends an instruction to the device discovery module of the electronic device 100 to obtain the device information of nearby devices, and the device discovery module of the electronic device 100 receives the instruction, and then sends the device discovery module of the electronic device 200 The module sends a request to obtain the device information of nearby devices.
  • the device discovery module of the electronic device 200 sends the device information 2 to the device discovery module of the electronic device 100, wherein the device information 2 includes the device name 2 and the device type. 2 and other information.
  • the device discovery module of the electronic device 100 sends the device information 2 to the application download module of the electronic device 100 .
  • the application download module of the electronic device 100 may send an instruction to acquire device information of nearby devices to the device discovery module of the electronic device 100, and the device discovery module of the electronic device 100 receives After the instruction, a request for obtaining the device information of the nearby device can be sent to other electronic devices near the electronic device 100. For example, if other nearby electronic devices include the electronic device 200, the above request can be sent to the electronic device 200.
  • the discovery module After the discovery module receives the upper request, it can send the device information 2 (that is, the device information of the electronic device 200) to the device discovery module of the electronic device 100, wherein the device information 2 includes the device name 2 (that is, the device name of the electronic device 200) , device type 2 (that is, the device type of the electronic device 200 ), and other information.
  • the device discovery module of the electronic device 100 may send the device information 2 to the application download module of the electronic device 100 .
  • other electronic devices near the electronic device 100 may refer to electronic devices that establish a short-distance communication connection with the electronic device 100 .
  • Table 3 exemplarily shows the device information (eg, device name, device type) of the local device (ie, the electronic device 100 ) and its acquired nearby devices (eg, the electronic device 200 ).
  • Table 3 only shows the device information of the electronic device 200 by taking the electronic device 200 near the electronic device 100 as an example. There may be more other electronic devices near the electronic device 100, and the electronic device 100 may acquire and record the device information of these electronic devices.
  • step S505-step S508 may be performed first, and then step S503-step S504 may be performed; in other embodiments, step S503-step S504 and step S505-step S508 may also be performed simultaneously.
  • the electronic device 100 may first execute step S505-step S508, that is, obtain the device information of nearby devices, and then, the execution process of step S503-step S504 may be as follows: the electronic device 100 The information sends a request to the server 200, and the request is used to instruct the server 200 to send to the electronic device 100 the name of the application program installation package and the download link corresponding to the device information. After receiving the request, the server 200 may send to the electronic device 100 the name of the application installation package, the download link, etc. corresponding to the device information.
  • the electronic device 100 displays the search result of the application program 1 and the acquired device information list of nearby devices, where the device information 2 is included in the device information list.
  • the electronic device 100 may display the search result of the application 1, for example, the search result 432 of the "XX video" application shown in FIG. 4C exemplarily.
  • the search result 432 of the "XX video” application shown in FIG. 4C exemplarily.
  • the electronic device 100 may detect the user's operation (such as a click operation) on the drop-down option 434 shown in FIG. 4C, and in response to the operation, the electronic device 100 may display a window 610 as shown in FIG. 610 may include the device information list of the local device and its acquired nearby devices.
  • the user's operation such as a click operation
  • the window 610 may only include the device name of the local device and the device names of nearby devices acquired by the local device, for example, the device name of the electronic device 100 is Huawei Matebook X, and the device name of the electronic device 200 is Huawei P40 Pro wait.
  • Phase 3 Application download and installation phase
  • the electronic device 100 detects that the user chooses to install the application program 1 on the device corresponding to the device name 2, and in response to this operation, the electronic device 100 determines that the device type of the device is device type 2 based on the device selected by the user, And further determine the download link of the application program 1 corresponding to the device type 2.
  • the electronic device 100 can detect the operation of the user choosing to install the “XX Video” application program on the device corresponding to the device name 2 (for example, the user clicks the operation of the Huawei P40 Pro option shown in FIG. 6A and the user clicks the icon 6B), in response to this operation, the electronic device 100 puts the Huawei P40 Pro option in the selected state shown in FIG. 6B, which means that the device selected by the user is Huawei P40 Pro.
  • the device 100 has obtained the device information of nearby devices in advance (refer to Table 3), therefore, the electronic device 100 can determine that the device type of the device is device type 2 (ie, mobile phone) based on the device selected by the user. Further, since the electronic device 100 advances The information related to the "XX Video” application has been obtained (refer to Table 2), therefore, the electronic device 100 can determine that the download link of the "XX Video” application corresponding to device type 2 is http://BBBBBB.
  • the electronic device 100 may also determine, based on the device type 2, the name of the application program installation package corresponding to the device type 2 of the application program 1 .
  • FIGS. 6A-6B another implementation of the process of interface display and user operation exemplarily shown in FIGS. 6A-6B may be the process of interface display and user operation exemplarily shown in FIGS. 4G-4H , specifically Reference may be made to the aforementioned content, and details are not repeated here.
  • the application download module of the electronic device 100 sends a download instruction 2 to the device discovery module of the electronic device 100, the instruction includes the device information 2, the download link of the application 1 corresponding to the device type 2, etc., the electronic device 100 device
  • the discovery module receives the download instruction 2
  • the device discovery module of the electronic device 200 receives the download instruction 2
  • Download instruction 2 may display prompt information for prompting the user to install the application 1, and may detect that the user agrees to the operation of installing the application 1.
  • the application program download module of the electronic device 100 may send a download instruction 2 to the device discovery module of the electronic device 100, and the instruction may include but not limited to the device information of the electronic device 200 (that is, the device information 2), the corresponding The download link of device type 2 (for example, the "XX Video" application corresponds to the download link of device type 2 http://BBBBBB), etc.
  • the device information 2 may include information such as a device name, a device ID, and a media access control address of the electronic device 200 .
  • the download instruction 2 may also include the name of the application installation package of the application 1 corresponding to the device type 2 .
  • the download instruction 2 may further include device information and account information of the electronic device 100 .
  • the device discovery module of the electronic device 100 may send the download instruction 2 to the device discovery module of the electronic device 200 .
  • the above download instruction 2 may also only include the download link of the application program 1 corresponding to the device type 2 and the device name of the electronic device 200 .
  • the download instruction 2 may only include the name of the application installation package of the application 1 corresponding to the device type 2 and the device name of the electronic device 200 .
  • the device discovery module of the electronic device 200 may send the download instruction 2 to the application program download module of the electronic device 200 .
  • the electronic device 100 can notify the electronic device 200 to download and install the application program 1 through the short-distance communication connection established between the electronic device 100 and the electronic device 200 .
  • the electronic device 200 may display a window 460 as exemplarily shown in FIG. Information 463 is used to prompt the user to download and install the application program 1 . In this way, the user can be given the right to choose, and at the same time, security can be improved.
  • the electronic device 200 may detect that the user agrees to the operation of downloading and installing the application program 1 (for example, a click operation on option 461 ), and in response to this operation, the electronic device 200 may perform subsequent steps.
  • the display form of the above window 460 may be a Push notification, a pop-up window displayed on a user interface (such as a negative screen, a lock screen interface, a main interface, etc.), which is not limited in this embodiment of the present application.
  • the electronic device 200 may also display a window 630 as exemplarily shown in FIG. .
  • the prompt message 633 is used to prompt the user to download and install the application program 1 .
  • the prompt information 633 may include the device information of the electronic device 100 (such as the device name of the electronic device 100, Huawei Matebook X, etc.), and may also include the account information of the electronic device 100 (such as the name of the account logged in by the electronic device 100, etc.). In this way, the user can be given the right to choose, and at the same time, security can be improved.
  • the electronic device 200 may detect that the user agrees to the operation of downloading and installing the application program 1 (for example, a click operation on option 631 ), and in response to this operation, the electronic device 200 may perform subsequent steps.
  • the display form of the above window 630 may be a Push notification, a pop-up window displayed on a user interface (such as a negative screen, a lock screen interface, a main interface, etc.), which is not limited in this embodiment of the present application.
  • the electronic device 200 sends to the server 200 a request for obtaining the installation package of the application program 1 corresponding to the device type 2, wherein the request includes the download link of the application program 1 corresponding to the device type 2, etc., after the server 200 receives the request , sending the installation package of the application program 1 corresponding to the device type 2 to the electronic device 200 , and the electronic device 100 installs the application program 1 after receiving the installation package.
  • step S516-step S5128 for the specific execution process of step S516-step S518, reference may be made to the relevant content in step S318-step S320 in the embodiment shown in FIG. 3A , which will not be repeated here.
  • step S514 may further include: the electronic device 200 logs in an account (for example, account 1, etc.) in its application program download module.
  • an account for example, account 1, etc.
  • the application program download module of the electronic device 200 sends an instruction that the application program 1 is successfully installed to the device discovery module of the electronic device 200, and the device discovery module of the electronic device 200 sends the instruction to the device discovery module of the electronic device 100 after receiving the instruction.
  • the device discovery module of the electronic device 100 sends the instruction to the application program download module of the electronic device 100 after receiving the instruction, and after the application program download module of the electronic device 100 receives the instruction, it displays that the application program 1 is installed successfully instructions for the .
  • the application program download module of the electronic device 200 may send an instruction that the application program 1 is successfully installed to the electronic device through the device discovery module of the electronic device 200 and the device discovery module of the electronic device 100.
  • the application downloading module of the device 100 is configured to notify the electronic device 100 that the electronic device 200 has successfully installed the application program 1 .
  • the electronic device 100 After the electronic device 100 receives the above-mentioned instruction that the application program 1 is successfully installed, it may display the indication information 471 exemplarily shown in FIG. 4J that the application program 1 is successfully installed. That is to say, the electronic device 100 successfully installs the application program 1 for the electronic device 200, realizing cross-device application installation.
  • the above instruction of successful installation may also be a message of successful installation.
  • the application program 1 is the "XX video” application program, as shown in Figure 4K, compared to Figure 4B, the electronic device 200 displays the icon 422 of the newly added "XX video” application program in the user interface 420, It is used to indicate that the electronic device 200 has successfully installed the "XX Video” application program.
  • step S519-step S522 is optional, and in some embodiments, step S519-step S522 may not be performed, that is, the electronic device 200 may not notify the electronic device 100 after the application program 1 is successfully installed, and the electronic The device 100 also does not need to display the indication information that the application program 1 is successfully installed.
  • steps S510-step S522 in the third stage shown in FIG. 5 may also be the implementation shown in FIG. 3A Step S313-step S323 in the example.
  • multiple unassociated electronic devices for example, the local device and one or more peer devices
  • a short-distance communication connection for example, the local device and one or more peer devices
  • a device-to-device relationship can be established.
  • Communication channel so as to realize the function of near-end cross-device installation of applications. It can be seen that this embodiment can achieve the same technical effect as the embodiment shown in FIG. 3A .
  • the embodiment shown in FIG. 3A can be combined with the embodiment shown in FIG. 5 , that is to say, the electronic device 100 can not only obtain all the electronic devices logged into the same account as the electronic device 100
  • the device information of the device, and the device information of devices near the electronic device 100 can also be obtained.
  • the electronic device 100 can display all the device information of these devices for the user to choose which device/device to install the application program, so that the function of installing the application program across devices at the remote end and at the near end can be realized at the same time.
  • the electronic device 100 may display applications installed on other electronic devices that log in with the same account and/or establish a short-distance communication connection with the electronic device 100 for the user to view.
  • the user can use one electronic device to view the application programs installed on one or more other electronic devices, and at the same time, it can prevent the user from triggering the electronic device to execute the above-mentioned application when the user forgets that a certain application program has been installed on a certain electronic device How to install the program.
  • the electronic device 100 may display the installation progress bar 641 of the electronic device 200 installing the application 1 in real time. It can be seen from the figure that the current electronic device 200 has the application 1 The installation progress is 30%. In this way, the user can know the installation progress of the application program 1 on the electronic device 200 in real time.
  • the electronic device 100 may also display an open option, and the electronic device 200 may directly start and run the application program 1 after the user clicks on this option. In this way, the user can instruct the electronic device 200 to start and run the application program 1 by operating the electronic device 100 .
  • the electronic device 100 detects the user's operation of searching for the application 1" in the above-mentioned FIGS. operate.
  • the electronic device 100 may display a user interface of the application market as shown in FIG. "Camera” application program, "reading” application program, etc.), the electronic device 100 can detect that the user chooses to install the application program 1 (for example, the "XX Video” application program) operation (for example, click the installation button corresponding to the "XX Video” application program) option), in response to this operation, the electronic device 100 may display a window 620 as exemplarily shown in FIG. 6F .
  • the application program 1 for example, the "XX Video” application program
  • the electronic device 100 may display a window 620 as exemplarily shown in FIG. 6F .
  • the first electronic device may be electronic device 100
  • the second electronic device may be electronic device 200
  • the third electronic device may be electronic device 300
  • the first application program may be application program 1 (for example, "XX video "application program)
  • the server can be server 100 and server 200
  • the first account can be account 1
  • the first interface can be the user interface shown in Figure 4C, or, the user interface shown in Figure 6E
  • the second interface can be The window 440 shown in Figure 4D, or the window 450 shown in Figure 4G, or, the window 610 shown in Figure 6A
  • the first request can be the download command 1 in Figure 3A or the download command 2 in Figure 5
  • the request may be a download instruction 3 (that is, including device information of the electronic device 300, a download link of the application program 1 corresponding to the device type of the electronic device 300, etc.)
  • the third request may be a request for obtaining relevant information of the application program 1
  • the first operation may be It is the operation that the user clicks on the option 434 (also
  • FIG. 7 exemplarily shows the structure of an electronic device 100 provided in the embodiment of the present application.
  • the electronic device 100 may include: a processor 110, an external memory interface 120, an internal memory 121, a universal serial bus (universal serial bus, USB) interface 130, a charging management module 140, a power management module 141, a battery 142, antenna 1, antenna 2, mobile communication module 150, wireless communication module 160, audio module 170, speaker 170A, receiver 170B, microphone 170C, earphone interface 170D, sensor module 180, button 190, motor 191, indicator 192, camera 193, a display screen 194, and a subscriber identification module (subscriber identification module, SIM) card interface 195, etc.
  • SIM subscriber identification module
  • the sensor module 180 may include a pressure sensor 180A, a gyroscope sensor 180B, an air pressure sensor 180C, a magnetic sensor 180D, an acceleration sensor 180E, a distance sensor 180F, a proximity light sensor 180G, a fingerprint sensor 180H, a temperature sensor 180J, a touch sensor 180K, an ambient light sensor 180L, bone conduction sensor 180M, etc.
  • the structure illustrated in the embodiment of the present application does not constitute a specific limitation on the electronic device 100 .
  • the electronic device 100 may include more or fewer components than shown in the figure, or combine certain components, or separate certain components, or arrange different components.
  • the illustrated components can be realized in hardware, software or a combination of software and hardware.
  • the processor 110 may include one or more processing units, for example: the processor 110 may include an application processor (application processor, AP), a modem processor, a graphics processing unit (graphics processing unit, GPU), an image signal processor (image signal processor, ISP), controller, memory, video codec, digital signal processor (digital signal processor, DSP), baseband processor, and/or neural network processor (neural-network processing unit, NPU) wait. Wherein, different processing units may be independent devices, or may be integrated in one or more processors.
  • application processor application processor, AP
  • modem processor graphics processing unit
  • GPU graphics processing unit
  • image signal processor image signal processor
  • ISP image signal processor
  • controller memory
  • video codec digital signal processor
  • DSP digital signal processor
  • baseband processor baseband processor
  • neural network processor neural-network processing unit, NPU
  • the controller may be the nerve center and command center of the electronic device 100 .
  • the controller can generate an operation control signal according to the instruction opcode and timing signal, and complete the control of fetching and executing the instruction.
  • a memory may also be provided in the processor 110 for storing instructions and data.
  • the memory in processor 110 is a cache memory.
  • the memory may hold instructions or data that the processor 110 has just used or recycled. If the processor 110 needs to use the instruction or data again, it can be called directly from the memory. Repeated access is avoided, and the waiting time of the processor 110 is reduced, thereby improving the efficiency of the system.
  • processor 110 may include one or more interfaces.
  • the interface may include an integrated circuit (inter-integrated circuit, I2C) interface, an integrated circuit built-in audio (inter-integrated circuit sound, I2S) interface, a pulse code modulation (pulse code modulation, PCM) interface, a universal asynchronous transmitter (universal asynchronous receiver/transmitter, UART) interface, mobile industry processor interface (mobile industry processor interface, MIPI), general-purpose input and output (general-purpose input/output, GPIO) interface, subscriber identity module (subscriber identity module, SIM) interface, and /or universal serial bus (universal serial bus, USB) interface, etc.
  • I2C integrated circuit
  • I2S integrated circuit built-in audio
  • PCM pulse code modulation
  • PCM pulse code modulation
  • UART universal asynchronous transmitter
  • MIPI mobile industry processor interface
  • GPIO general-purpose input and output
  • subscriber identity module subscriber identity module
  • SIM subscriber identity module
  • USB universal serial bus
  • the I2C interface is a bidirectional synchronous serial bus, including a serial data line (serial data line, SDA) and a serial clock line (derail clock line, SCL).
  • processor 110 may include multiple sets of I2C buses.
  • the processor 110 can be respectively coupled to the touch sensor 180K, the charger, the flashlight, the camera 193 and the like through different I2C bus interfaces.
  • the processor 110 may be coupled to the touch sensor 180K through the I2C interface, so that the processor 110 and the touch sensor 180K communicate through the I2C bus interface to realize the touch function of the electronic device 100 .
  • the I2S interface can be used for audio communication.
  • processor 110 may include multiple sets of I2S buses.
  • the processor 110 can be coupled with the audio module 170 through an I2S bus to realize communication between the processor 110 and the audio module 170.
  • the audio module 170 can transmit audio signals to the wireless communication module 160 through the I2S interface, so as to realize the function of answering calls through the Bluetooth headset.
  • the PCM interface can also be used for audio communication, sampling, quantizing and encoding the analog signal.
  • the audio module 170 and the wireless communication module 160 may be coupled through a PCM bus interface.
  • the audio module 170 can also transmit audio signals to the wireless communication module 160 through the PCM interface, so as to realize the function of answering calls through the Bluetooth headset. Both the I2S interface and the PCM interface can be used for audio communication.
  • the UART interface is a universal serial data bus used for asynchronous communication.
  • the bus can be a bidirectional communication bus. It converts the data to be transmitted between serial communication and parallel communication.
  • a UART interface is generally used to connect the processor 110 and the wireless communication module 160 .
  • the processor 110 communicates with the Bluetooth module in the wireless communication module 160 through the UART interface to realize the Bluetooth function.
  • the audio module 170 can transmit audio signals to the wireless communication module 160 through the UART interface, so as to realize the function of playing music through the Bluetooth headset.
  • the MIPI interface can be used to connect the processor 110 with peripheral devices such as the display screen 194 and the camera 193 .
  • MIPI interface includes camera serial interface (camera serial interface, CSI), display serial interface (display serial interface, DSI), etc.
  • the processor 110 communicates with the camera 193 through the CSI interface to realize the shooting function of the electronic device 100 .
  • the processor 110 communicates with the display screen 194 through the DSI interface to realize the display function of the electronic device 100 .
  • the GPIO interface can be configured by software.
  • the GPIO interface can be configured as a control signal or as a data signal.
  • the GPIO interface can be used to connect the processor 110 with the camera 193 , the display screen 194 , the wireless communication module 160 , the audio module 170 , the sensor module 180 and so on.
  • the GPIO interface can also be configured as an I2C interface, I2S interface, UART interface, MIPI interface, etc.
  • the USB interface 130 is an interface conforming to the USB standard specification, specifically, it can be a Mini USB interface, a Micro USB interface, a USB Type C interface, and the like.
  • the USB interface 130 can be used to connect a charger to charge the electronic device 100 , and can also be used to transmit data between the electronic device 100 and peripheral devices. It can also be used to connect headphones and play audio through them. This interface can also be used to connect other terminal devices, such as AR devices.
  • the interface connection relationship between the modules shown in the embodiment of the present application is only a schematic illustration, and does not constitute a structural limitation of the electronic device 100 .
  • the electronic device 100 may also adopt different interface connection manners in the foregoing embodiments, or a combination of multiple interface connection manners.
  • the charging management module 140 is configured to receive a charging input from a charger.
  • the charger may be a wireless charger or a wired charger.
  • the charging management module 140 can receive charging input from the wired charger through the USB interface 130 .
  • the charging management module 140 may receive a wireless charging input through a wireless charging coil of the electronic device 100 . While the charging management module 140 is charging the battery 142 , it can also supply power to the electronic device 100 through the power management module 141 .
  • the power management module 141 is used for connecting the battery 142 , the charging management module 140 and the processor 110 .
  • the power management module 141 receives the input from the battery 142 and/or the charging management module 140 to provide power for the processor 110 , the internal memory 121 , the external memory, the display screen 194 , the camera 193 , and the wireless communication module 160 .
  • the power management module 141 can also be used to monitor parameters such as battery capacity, battery cycle times, and battery health status (leakage, impedance).
  • the power management module 141 may also be disposed in the processor 110 .
  • the power management module 141 and the charging management module 140 may also be set in the same device.
  • the wireless communication function of the electronic device 100 can be realized by the antenna 1 , the antenna 2 , the mobile communication module 150 , the wireless communication module 160 , a modem processor, a baseband processor, and the like.
  • Antenna 1 and Antenna 2 are used to transmit and receive electromagnetic wave signals.
  • Each antenna in electronic device 100 may be used to cover a single or multiple communication frequency bands. Different antennas can also be multiplexed to improve the utilization of the antennas.
  • Antenna 1 can be multiplexed as a diversity antenna of a wireless local area network.
  • the antenna may be used in conjunction with a tuning switch.
  • the mobile communication module 150 can provide wireless communication solutions including 2G/3G/4G/5G applied on the electronic device 100 .
  • the mobile communication module 150 may include at least one filter, switch, power amplifier, low noise amplifier (low noise amplifier, LNA) and the like.
  • the mobile communication module 150 can receive electromagnetic waves through the antenna 1, filter and amplify the received electromagnetic waves, and send them to the modem processor for demodulation.
  • the mobile communication module 150 can also amplify the signals modulated by the modem processor, and convert them into electromagnetic waves through the antenna 1 for radiation.
  • at least part of the functional modules of the mobile communication module 150 may be set in the processor 110 .
  • at least part of the functional modules of the mobile communication module 150 and at least part of the modules of the processor 110 may be set in the same device.
  • a modem processor may include a modulator and a demodulator.
  • the modulator is used for modulating the low-frequency baseband signal to be transmitted into a medium-high frequency signal.
  • the demodulator is used to demodulate the received electromagnetic wave signal into a low frequency baseband signal. Then the demodulator sends the demodulated low-frequency baseband signal to the baseband processor for processing.
  • the low-frequency baseband signal is passed to the application processor after being processed by the baseband processor.
  • the application processor outputs sound signals through audio equipment (not limited to speaker 170A, receiver 170B, etc.), or displays images or videos through display screen 194 .
  • the modem processor may be a stand-alone device.
  • the modem processor may be independent from the processor 110, and be set in the same device as the mobile communication module 150 or other functional modules.
  • the wireless communication module 160 can provide wireless local area networks (wireless local area networks, WLAN) (such as wireless fidelity (Wireless Fidelity, Wi-Fi) network), bluetooth (bluetooth, BT), global navigation satellite, etc. applied on the electronic device 100.
  • System global navigation satellite system, GNSS
  • frequency modulation frequency modulation, FM
  • near field communication technology near field communication, NFC
  • infrared technology infrared, IR
  • the wireless communication module 160 may be one or more devices integrating at least one communication processing module.
  • the wireless communication module 160 receives electromagnetic waves via the antenna 2 , frequency-modulates and filters the electromagnetic wave signals, and sends the processed signals to the processor 110 .
  • the wireless communication module 160 can also receive the signal to be sent from the processor 110 , frequency-modulate it, amplify it, and convert it into electromagnetic waves through the antenna 2 for radiation.
  • the antenna 1 of the electronic device 100 is coupled to the mobile communication module 150, and the antenna 2 is coupled to the wireless communication module 160, so that the electronic device 100 can communicate with the network and other devices through wireless communication technology.
  • the wireless communication technology may include global system for mobile communications (GSM), general packet radio service (general packet radio service, GPRS), code division multiple access (code division multiple access, CDMA), broadband Code division multiple access (wideband code division multiple access, WCDMA), time division code division multiple access (time-division code division multiple access, TD-SCDMA), long term evolution (long term evolution, LTE), BT, GNSS, WLAN, NFC , FM, and/or IR techniques, etc.
  • GSM global system for mobile communications
  • GPRS general packet radio service
  • code division multiple access code division multiple access
  • CDMA broadband Code division multiple access
  • WCDMA wideband code division multiple access
  • time division code division multiple access time-division code division multiple access
  • TD-SCDMA time-division code division multiple access
  • the GNSS may include a global positioning system (global positioning system, GPS), a global navigation satellite system (global navigation satellite system, GLONASS), a Beidou navigation satellite system (beidou navigation satellite system, BDS), a quasi-zenith satellite system (quasi -zenith satellite system (QZSS) and/or satellite based augmentation systems (SBAS).
  • GPS global positioning system
  • GLONASS global navigation satellite system
  • Beidou navigation satellite system beidou navigation satellite system
  • BDS Beidou navigation satellite system
  • QZSS quasi-zenith satellite system
  • SBAS satellite based augmentation systems
  • the electronic device 100 realizes the display function through the GPU, the display screen 194 , and the application processor.
  • the GPU is a microprocessor for image processing, and is connected to the display screen 194 and the application processor. GPUs are used to perform mathematical and geometric calculations for graphics rendering.
  • Processor 110 may include one or more GPUs that execute program instructions to generate or change display information.
  • the display screen 194 is used to display images, videos and the like.
  • the display screen 194 includes a display panel.
  • the display panel can be a liquid crystal display (LCD), an organic light-emitting diode (OLED), an active matrix organic light emitting diode or an active matrix organic light emitting diode (active-matrix organic light emitting diode, AMOLED), flexible light-emitting diode (flex light-emitting diode, FLED), Miniled, MicroLed, Micro-oLed, quantum dot light emitting diodes (quantum dot light emitting diodes, QLED), etc.
  • the electronic device 100 may include 1 or N display screens 194 , where N is a positive integer greater than 1.
  • the electronic device 100 can realize the shooting function through the ISP, the camera 193 , the video codec, the GPU, the display screen 194 and the application processor.
  • the ISP is used for processing the data fed back by the camera 193 .
  • the light is transmitted to the photosensitive element of the camera through the lens, and the light signal is converted into an electrical signal, and the photosensitive element of the camera transmits the electrical signal to the ISP for processing, and converts it into an image visible to the naked eye.
  • ISP can also perform algorithm optimization on image noise, brightness, and skin color.
  • ISP can also optimize the exposure, color temperature and other parameters of the shooting scene.
  • the ISP may be located in the camera 193 .
  • Camera 193 is used to capture still images or video.
  • the object generates an optical image through the lens and projects it to the photosensitive element.
  • the photosensitive element may be a charge coupled device (CCD) or a complementary metal-oxide-semiconductor (CMOS) phototransistor.
  • CMOS complementary metal-oxide-semiconductor
  • the photosensitive element converts the light signal into an electrical signal, and then transmits the electrical signal to the ISP to convert it into a digital image signal.
  • the ISP outputs the digital image signal to the DSP for processing.
  • DSP converts digital image signals into standard RGB, YUV and other image signals.
  • the electronic device 100 may include 1 or N cameras 193 , where N is a positive integer greater than 1.
  • Digital signal processors are used to process digital signals. In addition to digital image signals, they can also process other digital signals. For example, when the electronic device 100 selects a frequency point, the digital signal processor is used to perform Fourier transform on the energy of the frequency point.
  • Video codecs are used to compress or decompress digital video.
  • the electronic device 100 may support one or more video codecs.
  • the electronic device 100 can play or record videos in various encoding formats, for example: moving picture experts group (moving picture experts group, MPEG) 1, MPEG2, MPEG3, MPEG4 and so on.
  • MPEG moving picture experts group
  • the NPU is a neural-network (NN) computing processor.
  • NN neural-network
  • Applications such as intelligent cognition of the electronic device 100 can be realized through the NPU, such as image recognition, face recognition, speech recognition, text understanding, and the like.
  • the external memory interface 120 can be used to connect an external memory card, such as a Micro SD card, so as to expand the storage capacity of the electronic device 100.
  • the external memory card communicates with the processor 110 through the external memory interface 120 to implement a data storage function. Such as saving music, video and other files in the external memory card.
  • the internal memory 121 may be used to store computer-executable program codes including instructions.
  • the processor 110 executes various functional applications and data processing of the electronic device 100 by executing instructions stored in the internal memory 121 .
  • the internal memory 121 may include an area for storing programs and an area for storing data.
  • the stored program area can store an operating system, at least one application program required by a function (such as a sound playing function, an image playing function, etc.) and the like.
  • the storage data area can store data created during the use of the electronic device 100 (such as audio data, phonebook, etc.) and the like.
  • the internal memory 121 may include a high-speed random access memory, and may also include a non-volatile memory, such as at least one magnetic disk storage device, flash memory device, universal flash storage (universal flash storage, UFS) and the like.
  • the electronic device 100 can implement audio functions through the audio module 170 , the speaker 170A, the receiver 170B, the microphone 170C, the earphone interface 170D, and the application processor. Such as music playback, recording, etc.
  • the audio module 170 is used to convert digital audio information into analog audio signal output, and is also used to convert analog audio input into digital audio signal.
  • the audio module 170 may also be used to encode and decode audio signals.
  • the audio module 170 may be set in the processor 110 , or some functional modules of the audio module 170 may be set in the processor 110 .
  • Speaker 170A also referred to as a "horn" is used to convert audio electrical signals into sound signals.
  • Electronic device 100 can listen to music through speaker 170A, or listen to hands-free calls.
  • Receiver 170B also called “earpiece” is used to convert audio electrical signals into sound signals.
  • the receiver 170B can be placed close to the human ear to receive the voice.
  • the microphone 170C also called “microphone” or “microphone” is used to convert sound signals into electrical signals. When making a phone call or sending a voice message, the user can put his mouth close to the microphone 170C to make a sound, and input the sound signal to the microphone 170C.
  • the electronic device 100 may be provided with at least one microphone 170C. In some other embodiments, the electronic device 100 may be provided with two microphones 170C, which may also implement a noise reduction function in addition to collecting sound signals. In some other embodiments, the electronic device 100 can also be provided with three, four or more microphones 170C to collect sound signals, reduce noise, identify sound sources, and realize directional recording functions, etc.
  • the earphone interface 170D is used for connecting wired earphones.
  • the earphone interface 170D may be a USB interface 130, or a 3.5mm open mobile terminal platform (open mobile terminal platform, OMTP) standard interface, or a cellular telecommunications industry association of the USA (CTIA) standard interface.
  • OMTP open mobile terminal platform
  • CTIA cellular telecommunications industry association of the USA
  • the pressure sensor 180A is used to sense the pressure signal and convert the pressure signal into an electrical signal.
  • pressure sensor 180A may be disposed on display screen 194 .
  • pressure sensors 180A such as resistive pressure sensors, inductive pressure sensors, and capacitive pressure sensors.
  • a capacitive pressure sensor may be comprised of at least two parallel plates with conductive material.
  • the electronic device 100 determines the intensity of pressure according to the change in capacitance.
  • the electronic device 100 detects the intensity of the touch operation according to the pressure sensor 180A.
  • the electronic device 100 may also calculate the touched position according to the detection signal of the pressure sensor 180A.
  • touch operations acting on the same touch position but with different touch operation intensities may correspond to different operation instructions. For example: when a touch operation with a touch operation intensity less than the first pressure threshold acts on the short message application icon, an instruction to view short messages is executed. When a touch operation whose intensity is greater than or equal to the first pressure threshold acts on the icon of the short message application, the instruction of creating a new short message is executed.
  • the gyro sensor 180B can be used to determine the motion posture of the electronic device 100 .
  • the angular velocity of the electronic device 100 around three axes may be determined by the gyro sensor 180B.
  • the gyro sensor 180B can be used for image stabilization. Exemplarily, when the shutter is pressed, the gyro sensor 180B detects the shaking angle of the electronic device 100, calculates the distance that the lens module needs to compensate according to the angle, and allows the lens to counteract the shaking of the electronic device 100 through reverse movement to achieve anti-shake.
  • the gyro sensor 180B can also be used for navigation and somatosensory game scenes.
  • the air pressure sensor 180C is used to measure air pressure.
  • the electronic device 100 calculates the altitude based on the air pressure value measured by the air pressure sensor 180C to assist positioning and navigation.
  • the magnetic sensor 180D includes a Hall sensor.
  • the electronic device 100 may use the magnetic sensor 180D to detect the opening and closing of the flip leather case.
  • the electronic device 100 when the electronic device 100 is a clamshell machine, the electronic device 100 can detect opening and closing of the clamshell according to the magnetic sensor 180D.
  • features such as automatic unlocking of the flip cover are set.
  • the acceleration sensor 180E can detect the acceleration of the electronic device 100 in various directions (generally three axes). When the electronic device 100 is stationary, the magnitude and direction of gravity can be detected. It can also be used to identify the posture of the electronic device 100, and can be applied to applications such as horizontal and vertical screen switching, pedometers, etc.
  • the distance sensor 180F is used to measure the distance.
  • the electronic device 100 may measure the distance by infrared or laser. In some embodiments, when shooting a scene, the electronic device 100 may use the distance sensor 180F for distance measurement to achieve fast focusing.
  • Proximity light sensor 180G may include, for example, light emitting diodes (LEDs) and light detectors, such as photodiodes.
  • the light emitting diodes may be infrared light emitting diodes.
  • the electronic device 100 emits infrared light through the light emitting diode.
  • Electronic device 100 uses photodiodes to detect infrared reflected light from nearby objects. When sufficient reflected light is detected, it can be determined that there is an object in the vicinity of the electronic device 100. When insufficient reflected light is detected, the electronic device 100 may determine that there is no object near the electronic device 100 .
  • the electronic device 100 can use the proximity light sensor 180G to detect that the user is holding the electronic device 100 close to the ear to make a call, so as to automatically turn off the screen to save power.
  • the proximity light sensor 180G can also be used in leather case mode, automatic unlock and lock screen in pocket mode.
  • the ambient light sensor 180L is used for sensing ambient light brightness.
  • the electronic device 100 can adaptively adjust the brightness of the display screen 194 according to the perceived ambient light brightness.
  • the ambient light sensor 180L can also be used to automatically adjust the white balance when taking pictures.
  • the ambient light sensor 180L can also cooperate with the proximity light sensor 180G to detect whether the electronic device 100 is in the pocket, so as to prevent accidental touch.
  • the fingerprint sensor 180H is used to collect fingerprints.
  • the electronic device 100 can use the collected fingerprint characteristics to implement fingerprint unlocking, access to application locks, take pictures with fingerprints, answer incoming calls with fingerprints, and the like.
  • the temperature sensor 180J is used to detect temperature.
  • the electronic device 100 uses the temperature detected by the temperature sensor 180J to implement a temperature treatment strategy. For example, when the temperature reported by the temperature sensor 180J exceeds the threshold, the electronic device 100 may reduce the performance of the processor located near the temperature sensor 180J, so as to reduce power consumption and implement thermal protection.
  • the electronic device 100 when the temperature is lower than another threshold, the electronic device 100 heats the battery 142 to prevent the electronic device 100 from being shut down abnormally due to the low temperature.
  • the electronic device 100 boosts the output voltage of the battery 142 to avoid abnormal shutdown caused by low temperature.
  • Touch sensor 180K also known as "touch panel”.
  • the touch sensor 180K can be disposed on the display screen 194, and the touch sensor 180K and the display screen 194 form a touch screen, also called a “touch screen”.
  • the touch sensor 180K is used to detect a touch operation on or near it.
  • the touch sensor can pass the detected touch operation to the application processor to determine the type of touch event.
  • Visual output related to the touch operation can be provided through the display screen 194 .
  • the touch sensor 180K may also be disposed on the surface of the electronic device 100 , which is different from the position of the display screen 194 .
  • the bone conduction sensor 180M can acquire vibration signals. In some embodiments, the bone conduction sensor 180M can acquire the vibration signal of the vibrating bone mass of the human voice. The bone conduction sensor 180M can also contact the human pulse and receive the blood pressure beating signal. In some embodiments, the bone conduction sensor 180M can also be disposed in the earphone, combined into a bone conduction earphone.
  • the audio module 170 can analyze the voice signal based on the vibration signal of the vibrating bone mass of the vocal part acquired by the bone conduction sensor 180M, so as to realize the voice function.
  • the application processor can analyze the heart rate information based on the blood pressure beating signal acquired by the bone conduction sensor 180M, so as to realize the heart rate detection function.
  • the keys 190 include a power key, a volume key and the like.
  • the key 190 may be a mechanical key. It can also be a touch button.
  • the electronic device 100 can receive key input and generate key signal input related to user settings and function control of the electronic device 100 .
  • the motor 191 can generate a vibrating reminder.
  • the motor 191 can be used for incoming call vibration prompts, and can also be used for touch vibration feedback.
  • touch operations applied to different applications may correspond to different vibration feedback effects.
  • the motor 191 may also correspond to different vibration feedback effects for touch operations acting on different areas of the display screen 194 .
  • Different application scenarios for example: time reminder, receiving information, alarm clock, games, etc.
  • the touch vibration feedback effect can also support customization.
  • the indicator 192 can be an indicator light, and can be used to indicate charging status, power change, and can also be used to indicate messages, missed calls, notifications, and the like.
  • the SIM card interface 195 is used for connecting a SIM card.
  • the SIM card can be connected and separated from the electronic device 100 by inserting it into the SIM card interface 195 or pulling it out from the SIM card interface 195 .
  • the electronic device 100 may support 1 or N SIM card interfaces, where N is a positive integer greater than 1.
  • SIM card interface 195 can support Nano SIM card, Micro SIM card, SIM card etc. Multiple cards can be inserted into the same SIM card interface 195 at the same time. The types of the multiple cards may be the same or different.
  • the SIM card interface 195 is also compatible with different types of SIM cards.
  • the SIM card interface 195 is also compatible with external memory cards.
  • the electronic device 100 interacts with the network through the SIM card to implement functions such as calling and data communication.
  • the electronic device 100 adopts an eSIM, that is, an embedded SIM card.
  • the eSIM card can be embedded in the electronic device 100 and cannot be separated from the electronic device 100 .
  • the electronic device 100 shown in FIG. 7 is only an example, and that the electronic device 100 may have more or fewer components than those shown in FIG. 7, two or more components may be combined, or Different component configurations are possible.
  • the various components shown in Figure 7 may be implemented in hardware, software, or a combination of hardware and software including one or more signal processing and/or application specific integrated circuits.
  • the structure of the electronic device 200 may be the same as or similar to that of the electronic device 100.
  • the relevant content about the structure of the electronic device 200 please refer to the related text description of the structure of the electronic device 100 shown in FIG. 7 , which will not be repeated here.
  • FIG. 8 exemplarily shows a software structure of an electronic device 100 provided in the embodiment of the present application.
  • the software system of the electronic device 100 may adopt a layered architecture, an event-driven architecture, a micro-kernel architecture, a micro-service architecture, or a cloud architecture.
  • the embodiment of the present application takes the Android system with a layered architecture as an example to illustrate the software structure of the electronic device 100 .
  • the layered architecture divides the software into several layers, and each layer has a clear role and division of labor. Layers communicate through software interfaces.
  • the Android system is divided into four layers, which are respectively the application program layer, the application program framework layer, the Android runtime (Android runtime) and the system library, and the kernel layer from top to bottom.
  • the application layer can consist of a series of application packages.
  • the application package may include application programs such as camera, gallery, calendar, call, map, application market, WLAN, Bluetooth, music, video, and short message.
  • application programs such as camera, gallery, calendar, call, map, application market, WLAN, Bluetooth, music, video, and short message.
  • the application framework layer provides an application programming interface (application programming interface, API) and a programming framework for applications in the application layer.
  • the application framework layer includes some predefined functions.
  • the application framework layer can include window manager, content provider, view system, phone manager, resource manager, notification manager, etc.
  • a window manager is used to manage window programs.
  • the window manager can get the size of the display screen, determine whether there is a status bar, lock the screen, capture the screen, etc.
  • Content providers are used to store and retrieve data and make it accessible to applications.
  • Said data may include video, images, audio, calls made and received, browsing history and bookmarks, phonebook, etc.
  • the view system includes visual controls, such as controls for displaying text, controls for displaying pictures, and so on.
  • the view system can be used to build applications.
  • a display interface can consist of one or more views.
  • a display interface including a text message notification icon may include a view for displaying text and a view for displaying pictures.
  • the phone manager is used to provide communication functions of the electronic device 100 . For example, the management of call status (including connected, hung up, etc.).
  • the resource manager provides various resources for the application, such as localized strings, icons, pictures, layout files, video files, and so on.
  • the notification manager enables the application to display notification information in the status bar, which can be used to convey notification-type messages, and can automatically disappear after a short stay without user interaction.
  • the notification manager is used to notify the download completion, message reminder, etc.
  • the notification manager can also be a notification that appears on the top status bar of the system in the form of a chart or scroll bar text, such as a notification of an application running in the background, or a notification that appears on the screen in the form of a dialog window. For example, prompting text information in the status bar, making a sound, vibrating the electronic device, and flashing the indicator light, etc.
  • the Android Runtime includes core library and virtual machine. The Android runtime is responsible for the scheduling and management of the Android system.
  • the core library consists of two parts: one part is the function function that the java language needs to call, and the other part is the core library of Android.
  • the application layer and the application framework layer run in virtual machines.
  • the virtual machine executes the java files of the application program layer and the application program framework layer as binary files.
  • the virtual machine is used to perform functions such as object life cycle management, stack management, thread management, security and exception management, and garbage collection.
  • a system library can include multiple function modules. For example: surface manager (surface manager), media library (Media Libraries), 3D graphics processing library (eg: OpenGL ES), 2D graphics engine (eg: SGL), etc.
  • the surface manager is used to manage the display subsystem and provides the fusion of 2D and 3D layers for multiple applications.
  • the media library supports playback and recording of various commonly used audio and video formats, as well as still image files, etc.
  • the media library can support a variety of audio and video encoding formats, such as: MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, etc.
  • the 3D graphics processing library is used to implement 3D graphics drawing, image rendering, compositing, and layer processing, etc.
  • 2D graphics engine is a drawing engine for 2D drawing.
  • the kernel layer is the layer between hardware and software.
  • the kernel layer includes at least a display driver, a camera driver, a Bluetooth driver, and a sensor driver.
  • the workflow of the software and hardware of the electronic device 100 will be exemplarily described below in conjunction with capturing and photographing scenes.
  • a corresponding hardware interrupt is sent to the kernel layer.
  • the kernel layer processes touch operations into original input events (including touch coordinates, time stamps of touch operations, and other information). Raw input events are stored at the kernel level.
  • the application framework layer obtains the original input event from the kernel layer, and identifies the control corresponding to the input event. Take the touch operation as a touch click operation, and the control corresponding to the click operation is the control of the camera application icon as an example.
  • the camera application calls the interface of the application framework layer to start the camera application, and then starts the camera driver by calling the kernel layer.
  • Camera 193 captures still images or video.
  • the software structure of the electronic device 200 may be the same as or similar to the software structure of the electronic device 100, and the relevant content about the software structure of the electronic device 200 may refer to the relevant text description of the software structure of the electronic device 100 shown in FIG. 8 , here No longer.
  • FIG. 9 exemplarily shows the structure of another electronic device 100 provided in the embodiment of the present application.
  • the electronic device 100 may include: an application download module 901 and a device discovery module 902 .
  • the application program downloading module 901 can be used for downloading and installing various application programs, installing various application programs for other devices, receiving and/or sending related instructions, requests, and the like.
  • the application program downloading module 901 may be an application program of an application market on the electronic device 100 .
  • the device discovery module 902 may be responsible for mutual discovery of nearby devices, establishing short-distance communication connections between different electronic devices, and receiving and/or sending related instructions and requests.
  • the device discovery module 902 may be a Wi-Fi module, a Bluetooth module, an NFC module, and the like.
  • the electronic device 200 may also include an application program download module and a device discovery module.
  • an application program download module and a device discovery module.
  • FIG. 10 exemplarily shows the structure of a server 200 provided by the embodiment of the present application.
  • the server 200 may include: one or more processors 1001 , memory 1002 , communication interface 1003 , transmitter 1005 , receiver 1006 , coupler 1007 , and antenna 1008 . These components can be connected through the bus 1004 or in other ways, and FIG. 10 takes the connection through the bus as an example. in:
  • the communication interface 1003 can be used for the server 200 to communicate with other communication devices, such as the electronic device 100, the electronic device 200 and so on.
  • the communication interface 1003 may be a 3G communication interface, a 4G communication interface, a 5G communication interface, or a communication interface of a future new air interface, and the like.
  • the server 200 may also be configured with a wired communication interface 1003, such as a local access network (local access network, LAN) interface.
  • the transmitter 1005 may be used to perform transmission processing on the signal output by the processor 1001 .
  • the receiver 1006 can be used for receiving and processing the mobile communication signal received by the antenna 1008 .
  • the transmitter 1005 and receiver 1006 can be regarded as a wireless modem.
  • the number of transmitters 1005 and receivers 1006 may be one or more.
  • Antenna 1008 may be used to convert electromagnetic energy in a transmission line to electromagnetic waves in free space, or to convert electromagnetic waves in free space to electromagnetic energy in a transmission line.
  • the coupler 1007 is used to divide the mobile communication signals received by the antenna 1008 into multiple paths and distribute them to multiple receivers 1006 .
  • the memory 1002 is coupled with the processor 1001 and is used for storing various software programs and/or sets of instructions.
  • the memory 1002 may include a high-speed random access memory, and may also include a non-volatile memory, such as one or more magnetic disk storage devices, flash memory devices, or other non-volatile solid-state storage devices.
  • the memory 1002 can store a network communication program, which can be used to communicate with one or more additional devices, one or more terminal devices, and one or more network devices.
  • the memory 1002 may be used to store an implementation program on the server 200 side of the application installation method provided by one or more embodiments of the present application.
  • the implementation of the application program installation method provided by one or more embodiments of the present application please refer to the above embodiments.
  • Processor 1001 may be used to read and execute computer readable instructions. Specifically, the processor 1001 may be configured to call a program stored in the memory 1002, such as a program for implementing the application program installation method provided by one or more embodiments of the present application on the server 200 side, and execute instructions included in the program.
  • a program stored in the memory 1002 such as a program for implementing the application program installation method provided by one or more embodiments of the present application on the server 200 side, and execute instructions included in the program.
  • server 200 shown in FIG. 10 is only an implementation manner of the embodiment of the present application. In practical applications, the server 200 may include more or fewer components, which is not limited here.
  • the structure of the server 100 may be the same as or similar to that of the server 200.
  • the relevant content of the structure of the server 100 reference may be made to the related text description of the structure of the server 200 shown in FIG. 10 , which will not be repeated here.
  • all or part of them may be implemented by software, hardware, firmware or any combination thereof.
  • software When implemented using software, it may be implemented in whole or in part in the form of a computer program product.
  • the computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on the computer, the processes or functions according to the present application will be produced in whole or in part.
  • the computer can be a general purpose computer, a special purpose computer, a computer network, or other programmable devices.
  • the computer instructions may be stored in or transmitted from one computer-readable storage medium to another computer-readable storage medium, for example, the computer instructions may be transmitted from a website, computer, server or data center Transmission to another website site, computer, server, or data center by wired (eg, coaxial cable, optical fiber, DSL) or wireless (eg, infrared, wireless, microwave, etc.) means.
  • the computer-readable storage medium may be any available medium that can be accessed by a computer, or a data storage device such as a server or a data center integrated with one or more available media.
  • the available medium may be a magnetic medium (such as a floppy disk, a hard disk, or a magnetic tape), an optical medium (such as a DVD), or a semiconductor medium (such as a solid state disk (solid state disk, SSD)), etc.
  • the processes can be completed by computer programs to instruct related hardware.
  • the programs can be stored in computer-readable storage media.
  • When the programs are executed may include the processes of the foregoing method embodiments.
  • the aforementioned storage medium includes: ROM or random access memory RAM, magnetic disk or optical disk, and other various media that can store program codes.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本申请公开了一种应用程序安装方法及相关设备,可以解决用户使用电子设备搜索想要安装的应用程序时,可能会搜索到适用于多个不同设备类型的电子设备(例如PC、手机等)的同一个应用程序,从而造成用户混淆的问题。此外,可以基于不同电子设备之间登录同一账号建立远程通信连接和/或基于附近的不同电子设备之间的互相发现建立短距离通信连接来实现跨设备应用程序安装,可以解决用户想要在多个设备上安装同一个应用程序时需要在每个设备上都执行一遍下载安装流程的问题,简化用户操作,提高用户体验。

Description

应用程序安装方法及相关设备
本申请要求于2021年09月24日提交中国国家知识产权局、申请号为202111126103.9、申请名称为“应用程序分发方法及相关设备”的中国专利申请的优先权,本申请要求于2021年11月19日提交中国国家知识产权局、申请号为202111383611.5、申请名称为“应用程序安装方法及相关设备”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及通信技术领域,尤其涉及一种应用程序安装方法及相关设备。
背景技术
随着智能电子设备(例如智能手机、平板电脑等)的广泛应用,同一用户可能同时拥有多个智能电子设备,这些智能电子设备的各种功能通常是通过安装在其内部的应用程序来实现的。
然而,目前这些智能电子设备只能给自身安装应用程序,无法跨设备安装应用程序,用户如果想要在多个设备上安装同一个应用程序,则需要在每个设备上都执行一遍下载安装流程,操作繁琐,用户体验差。
发明内容
本申请实施例提供了一种应用程序安装方法及相关设备,可以实现跨设备的应用程序安装,简化用户操作,提高用户体验。
第一方面,本申请实施例提供了一种应用程序安装方法,应用于第一电子设备,该方法包括:第一电子设备显示应用市场程序的第一界面,第一界面包括第一应用程序的图标和第一应用程序对应的第一选项;第一电子设备检测到用户针对第一选项的第一操作;响应于第一操作,第一电子设备显示应用市场程序的第二界面,第二界面包括用于标识第一电子设备的第二选项和用于标识第二电子设备的第三选项,第三选项是基于第二电子设备的设备信息生成的,第二电子设备的设备信息是第一电子设备从服务器或第二电子设备获取的;第一电子设备检测到用户的第二操作;响应于第二操作,第一电子设备向第二电子设备发送第一请求,第一请求用于指示第二电子设备安装与第二电子设备对应的第一应用程序。
本申请实施例提供的一种应用程序安装方法,可以解决用户使用电子设备搜索想要安装的应用程序时,可能会搜索到适用于多个不同类型的电子设备(例如PC、手机等)的同一个应用程序,从而造成用户混淆的问题。此外,通过跨设备进行应用程序安装,可以解决用户想要在多个设备上安装同一个应用程序时需要在每个设备上都执行一遍下载安装流程的问题,简化用户操作,提高用户体验。
在一种可能的实现方式中,在第一电子设备检测到用户的第二操作之前,该方法还包括:第一电子设备检测到用户针对第三选项的操作。这样,用户可以选择一个电子设备(例如第二电子设备)来安装第一应用程序。
在一种可能的实现方式中,第二界面还包括:用于标识第三电子设备的第四选项,在第 一电子设备检测到用户的第二操作之前,该方法还包括:第一电子设备检测到用户针对第三选项和第四选项的操作;响应于第二操作,第一电子设备还向第三电子设备发送第二请求,第二请求用于指示第三电子设备安装与第三电子设备对应的第一应用程序。这样,用户可以同时选择多个电子设备(例如第二电子设备和第三电子设备)来安装第一应用程序。
在一种可能的实现方式中,在第一电子设备显示应用市场程序的第一界面之前,该方法还包括:第一电子设备获取用户输入的关键词,并基于关键词搜索第一应用程序。这样,用户可以通过搜索操作来查找第一应用程序。
在一种可能的实现方式中,在第一电子设备检测到用户针对第一选项的第一操作之前,该方法还包括:第一电子设备登录第一账号,第一账号和第二电子设备相关联;第一电子设备通过服务器获取第二电子设备的设备信息。这样,第一电子设备与第二电子设备可以通过服务器建立关联关系,并通过服务器获取到第二电子设备的设备信息。
在一种可能的实现方式中,第一电子设备向第二电子设备发送第一请求,具体包括:第一电子设备通过服务器向第二电子设备发送第一请求,第一请求中包括与第二电子设备对应的第一应用程序的信息。这样,在登录同一账号的情况下,第一电子设备可以通过服务器向第二电子设备发送与第二电子设备对应的第一应用程序的信息,进一步地,第二电子设备可以基于该与第二电子设备对应的第一应用程序的信息来下载第一应用程序。
在一种可能的实现方式中,在第一电子设备显示应用市场程序的第一界面之前,该方法还包括:第一电子设备与第二电子设备建立短距离通信连接;第一电子设备通过短距离通信连接获取第二电子设备的设备信息。这样,第一电子设备可以与附近的其他电子设备(例如第二电子设备)建立短距离通信连接,并获取到附近的其他电子设备(例如第二电子设备)的设备信息。
在一种可能的实现方式中,第一电子设备向第二电子设备发送第一请求,具体包括:第一电子设备基于短距离通信连接向第二电子设备发送第一请求,第一请求中包括与第二电子设备对应的第一应用程序的信息。这样,在建立短距离通信连接的情况下,第一电子设备可以向第二电子设备发送与第二电子设备对应的第一应用程序的信息,进一步地,第二电子设备可以基于该与第二电子设备对应的第一应用程序的信息来下载第一应用程序。
在一种可能的实现方式中,在第一电子设备显示应用市场程序的第二界面之前,该方法还包括:第一电子设备向服务器发送第三请求,第三请求用于从服务器获取第一应用程序的信息;第一电子设备接收服务器发送的第一应用程序的信息,第一应用程序的信息包括与第一电子设备对应的第一应用程序的信息及与第二电子设备对应的第一应用程序的信息。这样,第一电子设备可以通过服务器获取到第一应用程序的信息。
在一种可能的实现方式中,第三请求中包括第二电子设备的设备信息和第一电子设备的设备信息。
在一种可能的实现方式中,第二界面还包括第一应用程序的状态信息,第一应用程序的状态信息包括第一应用程序已安装的指示信息,或第一应用程序未安装的指示信息。这样,可以第一电子设备可以获取到哪个电子设备上已安装/未安装第一应用程序。
在一种可能的实现方式中,该方法还包括:第一电子设备接收第二电子设备发送的第一应用程序安装成功的消息,并显示第二电子设备安装第一应用程序成功的指示信息。这样,可以向第一电子设备通知第二电子设备上成功安装第一应用程序。
在一种可能的实现方式中,第二界面中还包括第一应用程序的安装进度信息。这样,第一电子设备上可以显示第一应用程序的安装进度信息,以便用户及时获知。
第二方面,本申请实施例提供了一种应用程序安装方法,应用于包括第一电子设备和第二电子设备的通信***,该方法包括:第一电子设备显示应用市场程序的第一界面,第一界面包括第一应用程序的图标和第一应用程序对应的第一选项;第一电子设备检测到用户针对第一选项的第一操作;响应于第一操作,第一电子设备显示应用市场程序的第二界面,第二界面包括用于标识第一电子设备的第二选项和用于标识第二电子设备的第三选项,第三选项是基于第二电子设备的设备信息生成的,第二电子设备的设备信息是第一电子设备从服务器或第二电子设备获取的;第一电子设备检测到用户的第二操作;响应于第二操作,第一电子设备向第二电子设备发送第一请求,第一请求用于指示第二电子设备安装与第二电子设备对应的第一应用程序;第二电子设备接收第一请求;第二电子设备基于第一请求获取与第二电子设备对应的第一应用程序的信息并下载第一应用程序。
在一种可能的实现方式中,在第一电子设备检测到用户的第二操作之前,该方法还包括:第一电子设备检测到用户针对第三选项的操作。
在一种可能的实现方式中,第二界面还包括:用于标识第三电子设备的第四选项,在第一电子设备检测到用户的第二操作之前,该方法还包括:第一电子设备检测到用户针对第三选项和第四选项的操作;响应于第二操作,第一电子设备还向第三电子设备发送第二请求,第二请求用于指示第三电子设备安装与第三电子设备对应的第一应用程序。
在一种可能的实现方式中,在第一电子设备显示应用市场程序的第一界面之前,该方法还包括:第一电子设备获取用户输入的关键词,并基于关键词搜索第一应用程序。
在一种可能的实现方式中,在第一电子设备检测到用户针对第一选项的第一操作之前,该方法还包括:第一电子设备与第二电子设备登录第一账号。
在一种可能的实现方式中,第一电子设备向第二电子设备发送第一请求,具体包括:第一电子设备通过服务器向第二电子设备发送第一请求,第一请求中包括与第二电子设备对应的第一应用程序的信息。
在一种可能的实现方式中,通信***还包括服务器,在第一电子设备检测到用户针对第一选项的第一操作之前,该方法还包括:第一电子设备向服务器发送获取第二电子设备的设备信息的请求;服务器接收该请求,并向第一电子设备发送第二电子设备的设备信息;其中,第二电子设备的设备信息是服务器在第二电子设备登录第一账号之后获取的。
在一种可能的实现方式中,在第一电子设备显示应用市场程序的第一界面之前,该方法还包括:第一电子设备与第二电子设备建立短距离通信连接。
在一种可能的实现方式中,在第一电子设备显示应用市场程序的第一界面之前,该方法还包括:第一电子设备与第二电子设备登录相同账号或不同账号。
在一种可能的实现方式中,第一电子设备向第二电子设备发送第一请求,具体包括:第一电子设备基于短距离通信连接向第二电子设备发送第一请求,第一请求中包括与第二电子设备对应的第一应用程序的信息。
在一种可能的实现方式中,在第一电子设备显示应用市场程序的第二界面之前,该方法还包括:第一电子设备向第二电子设备获取第二电子设备的设备信息的请求;第二电子设备接收该请求,并向第一电子设备发送第二电子设备的设备信息。
在一种可能的实现方式中,在第一电子设备显示应用市场程序的第二界面之前,该方法还包括:第一电子设备向服务器发送第三请求,第三请求用于从服务器获取第一应用程序的信息;服务器接收第三请求,并向第一电子设备发送第一应用程序的信息,第一应用程序的 信息包括与第一电子设备对应的第一应用程序的信息及与第二电子设备对应的第一应用程序的信息;第一电子设备接收第一应用程序的信息。
在一种可能的实现方式中,第三请求中包括第二电子设备的设备信息和第一电子设备的设备信息。
在一种可能的实现方式中,第二界面还包括第一应用程序的状态信息,第一应用程序的状态信息包括第一应用程序已安装的指示信息,或第一应用程序未安装的指示信息。
在一种可能的实现方式中,该方法还包括:第二电子设备向第一电子设备发送第一应用程序安装成功的消息;第一电子设备接收该消息,并显示第二电子设备安装第一应用程序成功的指示信息。
在一种可能的实现方式中,第二界面中还包括第一应用程序的安装进度信息。
在一种可能的实现方式中,在第二电子设备下载第一应用程序之前,该方法还包括:第二电子设备显示第一提示信息,第一提示信息用于提示用户下载第一应用程序;第二电子设备检测到用户下载第一应用程序的操作。
在一种可能的实现方式中,该方法还包括:第二电子设备安装第一应用程序;在第二电子设备安装第一应用程序之后,第二电子设备向第一电子设备发送第一应用程序安装成功的消息;第一电子设备接收该消息,并显示第二电子设备安装第一应用程序成功的指示信息。
第三方面,本申请实施例提供了一种应用程序安装方法,应用于第二电子设备,该方法包括:第二电子设备接收第一电子设备发送的第一请求;第二电子设备基于第一请求获取与第二电子设备对应的第一应用程序的信息并下载第一应用程序;其中,第一请求用于指示第二电子设备安装与第二电子设备对应的第一应用程序。
在一种可能的实现方式中,在第二电子设备接收第一电子设备发送的第一请求之前,该方法还包括:第二电子设备登录第一账号;其中,第一账号与第一电子设备相关联。
在一种可能的实现方式中,第二电子设备接收第一电子设备发送的第一请求,具体包括:第二电子设备接收第一电子设备通过服务器发送的第一请求,第一请求中包括与第二电子设备对应的第一应用程序的信息。
在一种可能的实现方式中,在第二电子设备接收第一电子设备发送的第一请求之前,该方法还包括:第二电子设备与第一电子设备建立短距离通信连接。
在一种可能的实现方式中,第二电子设备接收第一电子设备发送的第一请求,具体包括:第二电子设备基于短距离通信连接接收第一电子设备发送的第一请求,第一请求中包括与第二电子设备对应的第一应用程序的信息。
在一种可能的实现方式中,在第二电子设备接收第一电子设备发送的第一请求之前,该方法还包括:第二电子设备接收第一电子设备发送获取第二电子设备的设备信息的请求;第二电子设备向第一电子设备发送第二电子设备的设备信息。
在一种可能的实现方式中,在第二电子设备下载第一应用程序之前,该方法还包括:第二电子设备显示第一提示信息,第一提示信息用于提示用户下载第一应用程序;第二电子设备检测到用户下载第一应用程序的操作。
在一种可能的实现方式中,该方法还包括:第二电子设备安装第一应用程序;在第二电子设备安装第一应用程序成功之后,第二电子设备向第一电子设备发送第一应用程序安装成功的消息。
第四方面,本申请实施例提供了一种电子设备,该电子设备包括一个或多个处理器和一个或多个存储器;其中,该一个或多个存储器与该一个或多个处理器耦合,该一个或多个存储器用于存储计算机程序代码,该计算机程序代码包括计算机指令,当该一个或多个处理器执行该计算机指令时,使得该电子设备执行上述第一方面或第三方面任一项可能的实现方式中的方法。
第五方面,本申请实施例提供了一种计算机存储介质,该计算机存储介质存储有计算机程序,该计算机程序包括程序指令,当该程序指令在电子设备上运行时,使得该电子设备执行上述第一方面或第三方面任一项可能的实现方式中的方法。
第六方面,本申请实施例提供了一种计算机程序产品,当计算机程序产品在计算机上运行时,使得计算机执行上述第一方面或第三方面任一项可能的实现方式中的方法。
附图说明
图1A-图1F是本申请实施例提供的一组用户界面示意图;
图2是本申请实施例提供的一种通信***的架构示意图;
图3A是本申请实施例提供的一种应用程序安装方法的流程示意图;
图3B是本申请实施例提供的图3A所示的应用程序安装方法中阶段二的另一种实现方式的流程示意图;
图4A-图4M是本申请实施例提供的另一组用户界面示意图;
图5是本申请实施例提供的另一种应用程序安装方法的流程示意图;
图6A-图6F是本申请实施例提供的另一组用户界面示意图;
图7是本申请实施例提供的一种电子设备的结构示意图;
图8是本申请实施例提供的一种电子设备的软件结构示意图;
图9是本申请实施例提供的另一种电子设备的结构示意图;
图10是本申请实施例提供的一种服务器的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。其中,在本申请实施例的描述中,除非另有说明,“/”表示或的意思,例如,A/B可以表示A或B;文本中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况,另外,在本申请实施例的描述中,“多个”是指两个或多于两个。
应当理解,本申请的说明书和权利要求书及附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、***、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
在本申请中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实 施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本申请所描述的实施例可以与其它实施例相结合。
移动互联网是一个开放的体系,用户可以在电子设备上通过应用市场(或称为应用商店)这一应用程序给本机下载安装各种类型的应用程序,但是,一般的应用市场都只能给本机设备安装不同的应用程序,没有办法跨设备进行应用程序安装,例如,目前,当用户在手机上搜索“XX视频”应用程序时,应用市场服务器会给手机发送和该手机的型号对应的“XX视频”安卓应用程序包(Android Application Package,APK)文件,同理,当用户在个人计算机(Personal Computer,PC)上搜索“XX视频”应用程序时,应用市场服务器会给PC发送和该PC的型号对应的“XX视频”可执行文件(Executable File),即exe文件。
也就是说,当前业界通用的应用市场服务器都是给本机设备发送独立的应用程序,例如对于手机上的应用市场来说,应用市场服务器只能给本机设备发送应用程序对应的APK文件,对于PC上的应用市场来说,应用市场服务器只能给本机设备发送应用程序对应的exe文件,在实际的一些场景中,对于PC上的应用市场来说,应用市场服务器也可以给PC模拟器(例如带有
Figure PCTCN2022119661-appb-000001
***的PC模拟器)发送应用程序对应的APK文件。
在本申请实施例中,应用程序发送可以是指应用市场服务器向电子设备上的应用市场这一应用程序发送可以在该电子设备上运行的应用程序(Application,APP)的安装包和/下载链接,进一步地,电子设备可以通过应用市场来下载并安装对应的应用程序。
下面结合图1A-图1F来介绍一种典型的应用程序安装场景。
以“XX视频”应用程序为例,如图1A所示,电子设备100可以为PC,如果用户想在PC上面也下载“XX视频”应用程序对应的APK文件,那么用户可以在PC上的应用市场的一个用户界面110中的搜索框111中输入“XX视频”,此时,用户界面110上可以显示有“XX视频”对应的两个相同的搜索结果(例如相同图标、相同名字):搜索结果112和搜索结果113,这两个相同的搜索结果分别用于表示“XX视频”应用程序对应的exe文件和“XX视频”应用程序对应的APK文件。但是,同一家内容提供商(Content Provider,CP)的exe文件对应的应用程序和APK文件对应的应用程序为两个单独的应用程序,这两个应用程序是没有关联的,例如手机版本的“XX视频”应用程序和PC版本的“XX视频”应用程序是没有关联的。
这样,在用户界面110中显示两个相同图标、相同名字但没有关联的应用程序,容易给用户造成很大的误解,用户在选择安装的时候也会存在很大的疑惑,而且很难识别出哪一个适用于安装在手机上,哪一个适用于安装在PC上。只有在用户选择正确的情况下才有可能成功安装应用程序,用户选择错误的情况下则无法成功安装应用程序,用户体验差。
继续参阅图1A,假设搜索结果113表示的是“XX视频”应用程序对应的APK文件,即该文件适用于安装手机版本的“XX视频”应用程序。示例性地,电子设备200可以为手机,若用户想在电子设备200上下载安装“XX视频”应用程序,则电子设备100可以检测用户针对安装选项114的操作(例如点击操作),响应于该操作,电子设备100可以显示如图1B示例性所示的窗口120。
如图1B所示,窗口120中可以包括二维码121、提示122,提示122用于提示用户通过电子设备200扫描二维码121来下载“XX视频”应用程序。进一步地,电子设备200可以检测到用户的扫码操作,响应于该操作,电子设备200可以显示如图1C示例性所示的扫码场景下的用户界面130。扫码成功之后,电子设备200可以显示如图1D示例性所示的窗口140,窗口140中可以包括“XX视频”应用程序对应的APK文件名称(例如XX Video.apk)、下载选项141等。进一步地,电子设备200可以检测到用户针对下载选项141的操作(例如点击操作),响应于该操作,电子设备200可以通过XX浏览器来下载“XX视频”应用程序对应的APK文件。下载成功之后,电子设备200可以显示如图1E示例性所示的窗口150,窗口150中可以包括允许选项151、提示152等,提示152用于提示用户“XX视频”应用程序对应的APK文件下载成功,可以利用XX浏览器来安装“XX视频”应用程序。电子设备200可以检测到用户针对允许选项151的操作(例如点击操作),响应于该操作,电子设备200可以利用XX浏览器来安装“XX视频”应用程序。安装成功之后,电子设备200可以显示如图1F示例性所示的用户界面160,该用户界面160用于提示用户“XX视频”应用程序安装成功。
从图1A-图1F中可以看出,目前,如果用户想要通过PC的应用市场给手机安装适用于手机安装的应用程序,则用户需要利用手机扫描PC上显示的二维码来下载应用程序对应的APK文件到手机上,下载完成之后再进一步执行安装流程,从而实现通过PC发送应用程序到手机上。也就是说,用户如果想要在多个设备上安装同一个应用程序,则需要在每个设备上都执行一遍下载安装流程,操作繁琐,用户体验差。
目前解决上述问题的一种方法是,用户可以先在本机设备上下载并安装一个应用程序,若该应用程序的安装包中包括与另一个电子设备对应的应用程序安装包,则在本机设备与另一个电子设备建立有通信连接(例如蓝牙通信连接等)的情况下,本机设备可以向另一个电子设备推送该应用程序安装包,从而实现跨设备应用程序安装。但是,这种方法的缺点在于,需要本机设备先下载安装应用程序,然后才可以进行跨设备安装该应用程序,用户体验差。
本申请实施例提供了一种应用程序安装方法,可以解决用户使用电子设备搜索想要安装的应用程序时,可能会搜索到适用于多个不同类型的电子设备(例如PC、手机等)的同一个应用程序,从而造成用户混淆的问题。此外,通过跨设备进行应用程序安装,可以解决用户想要在多个设备上安装同一个应用程序时需要在每个设备上都执行一遍下载安装流程的问题,简化用户操作,提高用户体验。
本申请实施例提供的应用程序安装方法,主要包括以下两种方案:
方案一(远场方案):基于不同电子设备之间登录的同一账号建立远程通信连接,从而实现跨设备的应用程序安装。
方案二(近场方案):基于附近的不同电子设备之间的互相发现建立短距离通信连接,从而实现跨设备的应用程序安装。
后续实施例中会详细介绍上述两种方案,在此先不展开。
下面介绍本申请实施例提供的一种通信***。
图2示例性示出了本申请实施例提供的一种通信***。
如图2所示,该通信***可以包括多个电子设备(例如电子设备100、电子设备200等)、服务器100、服务器200。
该通信***中包括的多个电子设备均为智能电子设备,本申请实施例对电子设备的具体类型不作限定。例如,电子设备可以包括手机,还可以包括平板电脑、桌面型计算机、膝上型计算机、手持计算机、笔记本电脑、智慧屏、可穿戴式设备(例如智能手表)、增强现实(augmented reality,AR)设备、虚拟现实(virtual reality,VR)设备、人工智能(artificial intelligence,AI)设备、车机、智能耳机,游戏机,还可以包括物联网(internet of things,IOT)设备,智能家居设备等。不限于此,该通信***中的多个电子设备还可以包括具有触敏表面或触控面板的膝上型计算机(laptop)、具有触敏表面或触控面板的台式计算机等非便携式终端设备等等。
服务器100和服务器200可以是传统服务器,也可以是云端服务器,本申请实施例对此不作限定。
在本申请实施例中,服务器100可以为账号服务器,用于负责账号登录和设备管理,可以保存登录同一账号的全部电子设备的设备信息列表。服务器200可以为分发服务器(通常可以指应用市场服务器),用于负责各类应用程序的发送和管理。服务器100和服务器200之间可以进行数据交互。
在一些实施例中,服务器100和服务器200可以集成为一个服务器。
该通信***中的多个电子设备之间可以通过登录相同的账号进行连接。例如,多个电子设备可以登录同一华为账号,并通过服务器来远程连接并通信。账号可以是手机号,电子邮箱号,自定义的用户名,APP服务器分配的用户名,电子设备中某个APP中的登录使用的用户名等。
该通信***中的多个电子设备还可以通过扫描二维码、近场通信(near field communication,NFC)碰一碰、搜索蓝牙设备等方式建立连接,这里不做限制。
总的来说,该通信***中的多个电子设备之间建立的通信连接可以包括但不限于:有线连接、无线连接例如蓝牙(bluetooth,BT)连接、无线局域网(wireless local area networks,WLAN)例如无线保真点对点(wireless fidelity point to point,Wi-Fi P2P)连接、无线保真(wireless fidelity,Wi-Fi)连接、近距离无线通信(near field communication,NFC)连接,红外技术(infrared,IR)连接,以及远程连接(例如通过服务器建立的连接)等等。
此外,该通信***中的多个电子设备也可以结合上述任意几种方式来连接并通信,本申请实施例对此不做限制。
该通信***中的多个电子设备可以配置相同或不同的软件操作***(operatingsystem,OS),包括但不限于
Figure PCTCN2022119661-appb-000002
等等。其中,
Figure PCTCN2022119661-appb-000003
为华为的鸿蒙***。
在本申请实施例中,电子设备100可以为PC,电子设备100的***可以为
Figure PCTCN2022119661-appb-000004
操作***,电子设备200可以为手机,电子设备200的***可以为
Figure PCTCN2022119661-appb-000005
操作***。
本申请实施例提供了一种应用程序安装方法,该方法可以应用于包括多个电子设备、服 务器100、服务器200的通信***。
在该方法中,每一个电子设备都需要基于同一账号进行账号登录,服务器100可以保存登录该账号的全部电子设备的设备信息列表。以电子设备100给电子设备200安装应用程序为例,电子设备100可以从服务器100获取登录该账号的全部电子设备的设备信息列表,并进行显示,之后,电子设备100可以检测到用户选择给电子设备200安装某一个应用程序的操作,响应于该操作,电子设备100可以向服务器200发送对应的指令,服务器200接收到该指令后可以向电子设备200发送该指令,电子设备200接收到该指令后可以基于该指令到服务器200上自动下载上述应用程序对应的安装包文件,并自动安装上述应用程序,从而实现跨设备应用程序安装。
下面对上述应用程序安装方法进行详细介绍。
图3A示例性示出了本申请实施例提供的一种应用程序安装方法的具体流程。
如图3A所示,该方法可以应用于包括电子设备100、电子设备200、服务器100、服务器200的通信***。其中,服务器100可以为账号服务器,服务器200可以为分发服务器,电子设备100可以为PC,电子设备200可以为手机,电子设备100和电子设备200均可以包括应用程序下载模块,用于下载安装各类应用程序,例如,电子设备100的应用程序下载模块可以为PC的应用市场,电子设备200的应用程序下载模块可以为手机的应用市场。下面详细介绍该方法的具体步骤:
阶段一:账号登录阶段
S301-S303、电子设备100检测到用户登录账号1的操作,响应于该操作,电子设备100向服务器100发送账号名称1、设备信息1,其中,设备信息1中包括设备名称1、设备类型1等信息。服务器100可以保存上述账号名称1、设备信息1。
具体地,电子设备100可以包括应用程序下载模块,该应用程序下载模块用于下载安装各类应用程序。示例性地,如图4A所示,该应用程序下载模块可以为电子设备100上安装的应用市场这一应用程序。电子设备100可以检测到用户针对用户界面410上显示的应用市场图标411的操作(例如点击操作),响应于该操作,电子设备100可以打开应用市场这一应用程序。
进一步地,电子设备100可以检测到用户在应用市场上登录账号1的操作,响应于该操作,电子设备100可以向服务器100发送账号名称1、设备信息1,设备信息1中可以包括但不限于设备名称1、设备类型1等信息。
其中,账号名称1为账号1的账号名称,账号名称可以为自定义的用户名、手机号,电子邮箱号等等。例如,账号1的账号名称可以为Summon。
其中,设备名称1为电子设备100的设备名称,设备名称可以是设备默认的设备名称,也可以是用户自主设置的设备名称,例如,电子设备100的设备名称可以为Huawei Matebook X。
其中,设备类型1为电子设备100的设备类型,例如,电子设备100为PC,则电子设备100的设备类型为PC。
服务器100接收到电子设备100发送的账号名称1、设备信息1后,可以保存账号名称1、设备信息1。
S304-S306、电子设备200检测到用户登录账号1的操作,响应于该操作,电子设备200 向服务器100发送账号名称1、设备信息2,其中,设备信息2中包括设备名称2、设备类型2等信息。服务器100可以保存上述账号名称1、设备信息2。
具体地,电子设备200也可以包括应用程序下载模块,该应用程序下载模块用于下载安装各类应用程序。示例性地,如图4B所示,该应用程序下载模块可以为电子设备200上安装的应用市场这一应用程序。电子设备100可以检测到用户针对用户界面420上显示的应用市场图标421的操作(例如点击操作),响应于该操作,电子设备200可以打开应用市场这一应用程序。
进一步地,电子设备200可以检测到用户在应用市场上登录账号1的操作,响应于该操作,电子设备200可以向服务器100发送账号名称1、设备信息2,设备信息2中可以包括但不限于设备名称2、设备类型2等信息。
其中,账号名称1为账号1的账号名称,账号名称可以为自定义的用户名、手机号,电子邮箱号等等。例如,账号1的账号名称可以为Summon。
其中,设备名称2为电子设备200的设备名称,设备名称可以是设备默认的设备名称,也可以是用户自主设置的设备名称,例如,电子设备200的设备名称可以为Huawei P40 Pro。
其中,设备类型2为电子设备200的设备类型,例如,电子设备200为手机,则电子设备200的设备类型为手机。
服务器100接收到电子设备100发送的账号名称1、设备信息2后,可以保存账号名称1、设备信息2。
需要说明的是,本申请实施例对执行步骤S301-步骤S303、执行步骤S304-步骤S306的时间顺序不作限定。也即是说,电子设备100可以与电子设备200同时登录账号1,电子设备100也可以在电子设备200登录账号1之前或之后登录账号1,本申请实施例对此不作限定。
表1示例性示出了在电子设备100和电子设备200均登录账号1之后服务器100所保存的账号名称、设备信息(例如设备名称、设备类型)。
从表1可以看出,登录账号名称为Summon的这一账号(即账号1)的电子设备有三个,一个是设备名称为Huawei Matebook X,设备类型为PC的电子设备(即电子设备100),另一个是设备名称为Huawei P40 Pro,设备类型为手机的电子设备(即电子设备200),还有一个是设备名称为Huawei Watch GT,设备类型为手表的电子设备。
账号名称 设备名称 设备类型
Summon Huawei Matebook X 个人计算机(PC)
Summon Huawei P40 Pro 手机(phone)
Summon Huawei Watch GT 手表(Watch)
表1
服务器100可以保存登录账号1的全部电子设备的设备信息。表1中仅仅示出了登录账号1的电子设备100、电子设备200、手表的设备信息。容易理解,服务器100还可以保存更多登录账号1的设备的设备信息。
需要说明的是,在检测到用户登录账号的操作后,电子设备可以将账号信息、设备信息均发送给账号服务器,账号服务器可以将账号信息、设备信息均保存下来。其中,账号信息不限于前述账号名称;设备信息也不限于前述设备名称、设备类型,还可以包括设备ID、序列号、媒体访问控制地址、设备型号等信息。本申请实施例对此不作限定。
需要说明的是,上述步骤S301和步骤S304中用户登录账号的操作可以是指用户第一次登录应用市场时输入账号名称、账号密码等信息的操作;还可以是指用户登录***账号后,打开应用市场,应用市场默认登录***账号的操作;还可以是指用户在首次登录应用市场后,退出应用市场,之后再打开应用市场,再次登录账号的操作。
阶段二:应用程序信息和设备信息的获取与显示阶段
S307-S309、电子设备100检测到用户搜索应用程序1的操作,响应于该操作,电子设备100向服务器200发送获取应用程序1相关信息的请求,该请求中可以携带有应用程序1的应用程序名称等信息。服务器200接收到该请求后,向电子设备100发送应用程序1相关信息,其中,该相关信息中包括应用程序1适用的设备类型、应用程序1对应不同设备类型的应用程序安装包名称、下载链接等。
具体地,如图4C所示,用户界面430是电子设备100的应用市场上具有搜索功能的一个示例性的用户界面。以上述应用程序1是“XX视频”应用程序为例,在完成上述账号登录阶段之后,电子设备100可以检测到用户在搜索框431搜索“XX视频”的操作(例如用户输入关键词“XX视频”),响应于该操作,电子设备100可以向服务器200发送获取“XX视频”应用程序相关信息的请求,该请求中可以携带有“XX视频”应用程序的应用程序名称等信息。服务器200接收到该请求后,可以向电子设备100发送“XX视频”应用程序相关信息,该相关信息中可以包括但不限于“XX视频”应用程序适用的设备类型、“XX视频”应用程序对应不同设备类型的应用程序安装包名称、下载链接等。例如该相关信息中还包括应用程序名称。
在一些实施例中,上述相关信息中也可以不包括下载链接。在检测到用户确定下载该应用程序1操作(例如图6A中用户选择Huawei P40 Pro的操作)后,电子设备100可以再向服务器200发送请求,该请求用于指示服务器200向电子设备100发送应用程序1的下载链接。
表2示例性示出了服务器200向电子设备100发送的“XX视频”应用程序相关信息。
从表2可以看出,应用程序名称为“XX视频”,“XX视频”应用程序适用的设备类型有两种:PC和手机。其中,“XX视频”应用程序对应设备类型为PC的应用程序安装包名称为XXTV、下载链接为http://AAAAAA,“XX视频”应用程序对应设备类型为手机的应用程序安装包名称为com.xxtv.quickapp、下载链接为 http://BBBBBB
应用程序名称 应用程序安装包名称 设备类型 下载链接
XX视频 XXTV 个人计算机(PC) http://AAAAAA
XX视频 com.xxtv.quickapp 手机(phone) http://BBBBBB
表2
S310-S311、电子设备100向服务器100发送获取已经登录账号1的设备的设备信息的请求,服务器100接收到该请求后,向电子设备100发送已经登录账号1的设备的设备信息。
具体地,在获取到前述应用程序1相关信息之后,电子设备100可以向服务器100发送获取已经登录账号1(例如前述账号名称为Summon的账号)的设备的设备信息的请求,该请求中可以携带有账号1的账号名称等信息。由于服务器100已经提前保存了登录账号1的全部电子设备的设备信息,因此,服务器100接收到该请求后,可以向电子设备100发送已经登录账号1的设备的设备信息,其中,该设备信息可以为前述表1中示例性所示的服务器100已经保存的登录账号1的设备的设备信息,例如,电子设备100的设备名称和设备类型,电子设备200的设备名称和设备类型。
需要说明的是,本申请实施例对执行步骤S308-步骤S309与执行步骤S310-步骤S311的时间顺序不作限定。在一些实施例中,也可以先执行步骤S310-步骤S311,之后再执行步骤S308-步骤S309;在另一些实施例中,也可以同时执行步骤S308-步骤S309与步骤S310-步骤S311。
在一些实施例中,电子设备100可以先执行完步骤S310-步骤S311,即获取到登录同一账号的设备的设备信息,之后,步骤S308-步骤S309的执行过程可以为如下过程:电子设备100基于获取到的设备信息向服务器200发送请求,该请求中包括上述获取到的设备信息等,该请求用于指示服务器200向电子设备100发送对应该设备信息的应用程序安装包名称、下载链接等。服务器200接收到该请求后,可以向电子设备100发送对应该设备信息的应用程序安装包名称、下载链接等。
S312、电子设备100显示应用程序1的搜索结果和已经登录账号1的设备的设备信息列表。
具体地,电子设备100在完成步骤S307-步骤S311之后,即电子设备100在获取到前述应用程序1相关信息和已经登录账号1的设备的设备信息之后,电子设备100可以显示应用程序1的搜索结果,例如,图4C示例性所示的“XX视频”应用程序的搜索结果432。
电子设备100还可以显示安装选项435,安装选项435可以用于在本机或其他设备上安装“XX视频”应用程序。
可选地,电子设备100还可以显示本机的设备名称433、下拉选项434。
电子设备100可以检测到用户针对下拉选项434的操作(例如点击操作),响应于该操作,电子设备100可以显示如图4D示例性所示的窗口440,窗口440中可以包括已经登录账号1的设备的设备信息列表。
可选地,窗口440中可以只包括已经登录账号1的设备的设备名称,例如,电子设备100的设备名称Huawei Matebook X,电子设备200的设备名称Huawei P40 Pro等。
在一些实施例中,如图4D所示,上述设备信息列表中显示的设备可以包括全部登录账号1的设备,其中,既包括适用应用程序1的设备(例如Huawei Matebook X、Huawei P40 Pro)也包括不适用应用程序1的设备(例如Huawei Watch GT),示例性地,参阅图4D,在不适 用应用程序1的设备的设备信息旁可以显示提示信息“不兼容”;在另一些实施例中,上述设备信息列表中显示的设备也可以只包括登录账号1且适用应用程序1的设备,而不包括不适用应用程序1的设备。在另一些实施例中,上述设备信息列表中也可以只包括与电子设备100登录同一账号的其他设备,而不包括电子设备100。
在一些实施例中,上述阶段二中的步骤S307-步骤S312的另一种实现方式也可以是图3B示例性所示的步骤S307’-步骤S313’,下面详细介绍:
S307’、电子设备100检测到用户搜索应用程序1的操作。
S308’、电子设备100向服务器200发送获取应用程序1相关信息1的请求。
其中,步骤S307’-步骤S308’的具体执行过程可以参照前述图3A所示实施例中的步骤S307-步骤S308中的相关内容,在此不再赘述。
S309’、服务器200向服务器100发送应用程序1相关信息1,其中,该相关信息1中可以包括应用程序1适用的设备类型、应用程序1对应不同设备类型的应用程序安装包名称、下载链接等。
其中,上述应用程序1相关信息1即为前述步骤S309中的应用程序1相关信息(例如表2中示例性示出的“XX视频”应用程序相关信息)。
S310’、电子设备100向服务器100发送获取已经登录账号1的设备的设备信息的请求。
其中,步骤S310’的具体执行过程可以参照前述图3A所示实施例中的步骤S310中的相关内容,在此不再赘述。
S311’、服务器100基于应用程序1适用的设备类型与已经登录账号1的设备的设备类型确定应用程序1相关信息2,其中,该相关信息2中可以包括适用应用程序1且已经登录账号1的设备的设备类型、应用程序1的安装包名称、应用程序1的下载链接等;其中,不同的设备类型对应不同的应用程序1版本,不同的应用程序1版本对应不同的应用程序1的安装包名称和不同的应用程序1的下载链接。
具体地,由于服务器100已经提前保存了登录账号1的全部电子设备的设备信息,该设备信息可以包括全部电子设备的设备名称、设备类型等信息,因此,服务器100可以基于接收到的服务器200发送的应用程序1适用的设备类型来确定适用应用程序1且已经登录账号1的设备的设备类型。
例如,应用程序1适用的设备类型为PC、手机、手表,已经登录账号1的设备的设备类型为PC、手机,则适用应用程序1且已经登录账号1的设备的设备类型PC、手机;又例如,应用程序1适用的设备类型为PC、手机,已经登录账号1的设备的设备类型为PC、手机、手表,则适用应用程序1且已经登录账号1的设备的设备类型PC、手机;再例如,应用程序1适用的设备类型为PC、手机、手表,已经登录账号1的设备的设备类型为PC、手机、手表,则适用应用程序1且已经登录账号1的设备的设备类型PC、手机、手表。
进一步地,服务器100还可以基于接收到的服务器200发送的应用程序1对应不同设备类型的应用程序安装包名称、下载链接等来确定应用程序1的安装包名称、应用程序1的下载链接等。其中,应用程序1的安装包名称为应用程序1对应上述适用应用程序1且已经登录账号1的设备的设备类型的应用程序安装包名称,应用程序1的下载链接为应用程序1对 应上述适用应用程序1且已经登录账号1的设备的设备类型的下载链接等。
至此,服务器100确定了应用程序1相关信息2,其中,该相关信息2中可以包括但不限于适用应用程序1且已经登录账号1的设备的设备类型、应用程序1的安装包名称、应用程序1的下载链接等。
S312’、服务器100向电子设备100发送应用程序1相关信息2、适用应用程序1且已经登录账号1的设备的设备信息。
S313’、电子设备100显示应用程序1的搜索结果和适用应用程序1且已经登录账号1的设备的设备信息列表。
在一些实施例中,服务器100也可以向电子设备100发送全部已经登录账号1的设备的设备信息,这些设备可以包括不适用应用程序1的设备。例如,假设应用程序1不适用智能手表,但已经登录账号1的设备中包括智能手表,则服务器100也可以将智能手表的设备信息发送给电子设备100,在这种情况下,上述设备信息列表中也可以显示有智能手表的设备信息,同时还可以显示提示信息(例如图4D中窗口440中所示的提示信息“不兼容”),以提示用户应用程序1不适用智能手表。
阶段三:应用程序下载与安装阶段
S313-S314、电子设备100检测到用户选择在设备名称2对应的设备上安装应用程序1的操作,响应于该操作,电子设备100基于用户选择的设备确定该设备的设备类型为设备类型2,并进一步确定应用程序1对应设备类型2的下载链接。
具体地,以电子设备100给电子设备200安装“XX视频”应用程序为例,电子设备200的设备名称为设备名称2,设备名称2为Huawei P40 Pro,应用程序1为“XX视频”应用程序。如图4D所示,电子设备100可以检测到用户选择在设备名称2对应的设备上安装“XX视频”应用程序的操作(例如用户点击图4D所示的Huawei P40 Pro选项的操作和用户点击图4E所示的安装选项435的操作),响应于该操作,电子设备100将Huawei P40 Pro选项置于图4E所示的被选中状态,即表示用户选择的设备为Huawei P40 Pro,同时,由于电子设备100提前获取到了已经登录账号1的设备的设备信息(参照表1),因此,电子设备100可以基于用户选择的设备确定该设备的设备类型为设备类型2(即手机),进一步地,由于电子设备100提前获取到了“XX视频”应用程序相关信息(参照表2),因此,电子设备100可以确定“XX视频”应用程序对应设备类型2的下载链接为http://BBBBBB。
在一种可能的实现方式中,上述检测到用户选择在设备名称2对应的设备上安装“XX视频”应用程序的操作也可以只是用户点击图4D所示的Huawei P40 Pro选项的操作,也即是说,用户选择要安装“XX视频”应用程序的设备选项之后,无需再点击安装选项,电子设备100即可执行后续步骤。
可选地,电子设备100也可以基于设备类型2确定应用程序1对应设备类型2的应用程序安装包名称。
在一种可能的实现方式中,参阅图4F-图4H,用户在搜索“XX视频”应用程序之后,在界面显示与用户操作上可以与图4C-图4E有所不同。参阅图4F,与图4C不同的是,电子 设备100可以只显示“XX视频”应用程序的搜索结果432和安装选项435。进一步地,电子设备100可以检测到用户针对安装选项435的操作(例如点击操作),响应于该操作,电子设备100可以显示图4G示例性所示的窗口450。参阅图4G和图4H,与图4D-图4E不同的是,前述用户选择在设备名称2对应的设备上安装“XX视频”应用程序的操作可以包括用户点击图4G所示的Huawei P40 Pro选项的操作和用户点击图4H所示的安装到设备选项的操作。
参阅图4G与图4H,用户一次可以只选择一个设备(例如Huawei P40 Pro)来安装“XX视频”应用程序,也可以一次选择多个设备(例如Huawei Matebook X、Huawei P40 Pro等)同时来安装“XX视频”应用程序,提高安装效率。
从图4C或图4F可以看出,与图1A的不同之处在于,在用户搜索“XX视频”应用程序之后,图4C或图4F中显示的“XX视频”应用程序的搜索结果只有一个,而不是图1A中所示的多个搜索结果,也即是说,实施本方案,“XX视频”应用程序的搜索结果在界面上(即前台)只显示一个,可以不需要用户来区分“XX视频”应用程序的安装包适用的是哪一种设备类型,从而可以解决用户使用电子设备搜索想要安装的应用程序时,可能会因为搜索到适用于多个不同类型的电子设备(例如PC、手机等)的同一个应用程序,而造成用户混淆的问题。
S315-S317、电子设备100向服务器200发送下载指令1,该指令中包括设备信息2、应用程序1对应设备类型2的下载链接等,服务器200接收到该下载指令1后,向电子设备200发送该下载指令1。可选地,电子设备200接收到该下载指令1之后,可以显示提示信息,用于提示用户安装应用程序1,并可以检测到用户同意安装应用程序1的操作。
具体地,电子设备100可以向服务器200发送下载指令1,该指令中可以包括但不限于电子设备200的设备信息(即设备信息2)、应用程序1对应设备类型2的下载链接(例如“XX视频”应用程序对应设备类型2的下载链接http://BBBBBB)等。
其中,设备信息2中可以包括电子设备200的设备名称、设备ID、媒体访问控制地址等信息,用于服务器200查找到电子设备200,查找到电子设备200之后,服务器200才可以与电子设备200进行通信。
可选地,下载指令1中还可以包括应用程序1对应设备类型2的应用程序安装包名称。
在本申请实施例中,下载指令1中还可以包括电子设备100的账号信息和电子设备100的设备信息。
服务器200接收到该下载指令1后,可以向电子设备200发送该下载指令1。
一种可能的实现方式是,服务器200在接收到该下载指令后,可以先基于电子设备100的账号信息向服务器100获取与电子设备100登录同一账号的全部设备的设备信息列表,然后可以基于电子设备200的设备名称、设备ID、媒体访问控制地址等信息在该设备信息列表中查找到对应设备信息2的设备为电子设备200,这样,服务器200可以确认需要将该下载 指令1发送给电子设备200,进一步地,服务器200可以向电子设备200发送该下载指令1。
可选地,服务器200也可以只向电子设备200发送应用程序1对应设备类型2的下载链接、电子设备200的设备名称。
可选地,服务器200也可以只向电子设备200发送应用程序1对应设备类型2的应用程序安装包名称、电子设备200的设备名称。
这样,电子设备100可以通过服务器200与电子设备200进行远程通信连接,并通过服务器200来通知电子设备200下载安装应用程序1。
在一些实施例中,电子设备200接收到服务器200发送的下载指令1后,可以显示如图4I示例性所示的窗口460,窗口460中可以包括选项461、选项462、提示信息463,用于提示用户下载安装应用程序1。这样,可以给用户选择权,同时也可以提高安全性。电子设备200可以检测到用户同意下载安装应用程序1的操作(例如针对选项461的点击操作),响应于该操作,电子设备200可以执行后续步骤。其中,上述窗口460的显示形式可以为Push通知、显示在用户界面(例如负一屏、锁屏界面、主界面等)上的弹窗等,本申请实施例对此不作限定。
在一种可能的实现方式中,电子设备100在向服务器200发送获取应用程序1相关信息的请求之后,服务器200不需要将应用程序1对应全部设备类型的应用程序安装包名称、下载链接等发送给电子设备100,而是,可以先将应用程序1的名称、应用程序1适用电子设备100这一设备类型的应用程序安装包名称、下载链接等发送给电子设备100,电子设备100可以基于获取到的设备信息显示如图4D所示的窗口440,即下拉菜单,在检测到用户在下拉菜单中选择在电子设备200上安装应用程序1的操作之后,电子设备100可以将电子设备200的设备信息、应用程序1的名称、电子设备100的账号信息等发送给服务器200,服务器200再基于电子设备200的设备信息、应用程序1的名称确定应用程序1适用电子设备200这一设备类型的应用程序安装包名称、下载链接等,并基于电子设备200的设备信息、电子设备100的账号信息确定需要将应用程序1适用电子设备200这一设备类型的应用程序安装包名称、下载链接等发送给电子设备200,进一步地,服务器200可以将应用程序1适用电子设备200这一设备类型的应用程序安装包名称、下载链接等发送给电子设备200,从而可以触发电子设备200下载安装应用程序1。若服务器200基于电子设备200的设备信息、应用程序1的名称,没有匹配到适用电子设备200这一设备类型的应用程序1,则服务器200可以向电子设备100发送提示信息,该提示信息用于提示用户没有与电子设备200这一设备类型对应的应用程序1的安装包或下载链接。
S318-S320、电子设备200向服务器200发送获取应用程序1对应设备类型2的安装包的请求,其中,该请求中包括应用程序1对应设备类型2的下载链接等,服务器200接收到该请求后,向电子设备200发送应用程序1对应设备类型2的安装包,电子设备200接收到该安装包后,安装应用程序1。
示例性地,在电子设备200接收到的下载指令1中包括应用程序1对应设备类型2的下载链接的情况下,上述请求中可以携带有应用程序1对应设备类型2的下载链接,电子设备 200可以基于服务器200发送的应用程序1对应设备类型2的下载链接自动路由到服务器200去下载应用程序1对应设备类型2的安装包。下载完成后,电子设备200可以安装应用程序1。安装的过程与现有技术相同,在此不再赘述。
示例性地,在电子设备200接收到的下载指令1中包括应用程序1对应设备类型2的应用程序安装包名称的情况下,上述请求中可以携带有应用程序1对应设备类型2的应用程序安装包名称。服务器200接收到上述请求后,向电子设备200发送应用程序1对应设备类型2的安装包,电子设备200接收到该安装包后,可以安装应用程序1。安装的过程与现有技术相同,在此不再赘述。
S321-S323、电子设备200向服务器200发送应用程序1安装成功的指令,服务器200接收到该指令后,向电子设备100发送该指令,电子设备100接收到该指令后,显示应用程序1安装成功的指示信息。
具体地,电子设备200在成功安装应用程序1之后,可以向服务器200发送应用程序1安装成功的指令,该指令中可以包括电子设备100的设备信息,该设备信息可以是服务器200向电子设备100发送下载指令1时携带的。服务器200接收到该指令后,可以向电子设备100发送该指令,用于向电子设备100通知电子设备200已经成功安装应用程序1。电子设备100接收到该指令后,可以显示图4J示例性所示的应用程序1安装成功的指示信息471,该指示信息用于指示电子设备200已经成功安装应用程序1。也即是说,电子设备100成功向电子设备200安装应用程序1,实现了跨设备应用程序安装。
在一些实施例中,上述安装成功的指令还可以是安装成功的消息。
示例性地,应用程序1为“XX视频”应用程序,如图4K所示,相比于图4B,电子设备200在用户界面420中显示了新增的“XX视频”应用程序的图标422,用于表示电子设备200成功安装“XX视频”应用程序。
需要说明的是,步骤S321-步骤S323是可选的,在一些实施例中,也可以不执行步骤S321-步骤S323,即电子设备200在成功安装应用程序1之后可以不通知电子设备100,电子设备100也不需要显示应用程序1安装成功的指示信息。
参阅图4H,可以理解,图4H中还可以显示更多其他与电子设备100建立连接的电子设备的设备信息,例如电子设备300(图中未示出)。用户可以一次选择多个设备同时安装“XX视频”应用程序,例如,用户可以同时选择电子设备200和电子设备300。容易理解,电子设备300安装“XX视频”应用程序的过程与电子设备200安装“XX视频”应用程序的过程类似,在此不再赘述。
实施上述实施例提供的应用程序安装方法,可以将没有关联的多个电子设备(例如本机设备与一个或多个对端设备)通过登录同一账号来进行关联,从而实现远端跨设备安装应用程序的功能。一方面,本机设备(例如电子设备100)无需在前台提供多个适用于不同设备类型的应用程序名称来供用户选择,这样,可以很好地解决用户被多个相同名称的应用程序迷惑的问题。另一方面,通过登录同一账号来关联本机设备与对端设备(例如电子设备200), 本机设备可以向对端设备提供与对端设备的设备类型相对应的应用程序的下载链接,对端设备可以根据该下载链接来下载对应的应用程序的安装包文件,从而可以实现跨设备应用程序安装,这样,对端设备无需用户重复进行下载安装操作,即可自动安装应用程序,简化用户操作,提高用户体验。
在一些实施例中,继续参阅图3B,在步骤S309’中,应用程序1相关信息1中还可以包括已安装该应用程序1的电子设备的设备信息(例如设备名称、设备ID等)以及指示信息(例如“已安装”),该设备信息是电子设备在安装应用程序1后服务器200记录下来的;还可以包括未安装该应用程序1的电子设备的设备信息(例如设备名称、设备ID等)以及指示信息(例如“未安装”),服务器100接收到上述已安装/未安装该应用程序1的电子设备的设备信息后,可以将该设备信息与已保存的登录账号1的设备的设备信息进行比对,从而确定出登录账号1且已安装/未安装应用程序1的设备的设备信息。进一步地,在步骤S311’中,应用程序1相关信息2中还可以包括登录账号1且已安装/未安装应用程序1的设备的设备信息以及指示信息。进一步地,在步骤S313’中,如图4L示例性所示,若登录账号1且已安装应用程序1的设备为电子设备200,即Huawei P40 Pro,则图4L所示的设备信息列表中的Huawei P40 Pro旁可以显示提示信息“已安装”,用于提示用户Huawei P40 Pro上已安装应用程序1。
在一些实施例中,继续参阅图3B,在步骤S309’中,应用程序1相关信息1中还可以包括适用安装应用程序1的应用市场版本。服务器100接收到上述适用安装应用程序1的应用市场版本后,可以向登录账号1的全部电子设备发送获取应用市场版本的请求,进一步地,服务器100可以接收到登录账号1的全部电子设备的应用市场版本,进一步地,服务器100可以将上述适用安装应用程序1的应用市场版本与登录账号1的全部电子设备的应用市场版本进行比对,从而确定出应用市场版本过低的设备的设备信息(即不适用安装应用程序1的应用市场版本对应设备的设备信息),进一步地,在步骤S311’中,应用程序1相关信息2中还可以包括应用市场版本过低的设备的设备信息。进一步地,在步骤S313’中,如图4M示例性所示,若应用市场版本过低的设备为电子设备200,即Huawei P40 Pro,则图4M所示的设备信息列表中可以显示提示信息“应用市场版本过低”,用于提示用户Huawei P40 Pro上的应用市场版本过低,不适用安装应用程序1。
在一些实施例中,服务器100不需要向登录账号1的全部电子设备发送获取应用市场版本的请求,而是电子设备在登录账号后就可以将该电子设备的应用市场版本发送给服务器100,服务器100可以将其保存下来。
本申请实施例提供了另一种应用程序安装方法,该方法可以应用于包括多个电子设备、服务器200的通信***。
在该方法中,多个电子设备均为附近的电子设备(即近端设备),这多个电子设备之间可以基于Wi-Fi、蓝牙、NFC等技术进行近端设备的互相发现,互相发现的两个电子设备之间可以建立互相通信的通路,即短距离通信连接。进一步地,互相发现的两个电子设备之间可以获取对方的设备信息。以电子设备100给电子设备200安装应用程序为例,电子设备100上可以显示电子设备100获取的附近设备的设备信息列表,电子设备100可以检测到用户选择给电子设备200安装某一个应用程序的操作,响应于该操作,电子设备100可以基于上述 短距离通信连接向电子设备200发送对应的指令,电子设备200接收到该指令后可以基于该指令到服务器200上自动下载上述应用程序对应的安装包文件,并自动安装上述应用程序,从而实现跨设备应用程序安装。
下面对上述应用程序安装方法进行详细介绍。
图5示例性示出了本申请实施例提供的另一种应用程序安装方法的具体流程。
如图5所示,该方法可以应用于包括电子设备100、电子设备200、服务器200的通信***。其中,服务器200可以为分发服务器,电子设备100可以为PC,电子设备200可以为手机,电子设备100和电子设备200均可以包括应用程序下载模块和设备发现模块,应用程序下载模块用于下载安装各类应用程序,例如,电子设备100的应用程序下载模块可以为PC的应用市场,电子设备200的应用程序下载模块可以为手机的应用市场,设备发现模块用于负责附近设备的互相发现,并在不同电子设备之间建立短距离通信连接,例如,设备发现模块可以为Wi-Fi模块、蓝牙模块、NFC模块等。下面详细介绍该方法的具体步骤:
阶段一:通信连接建立阶段
S501、电子设备100与电子设备200建立短距离通信连接。
本申请实施例中电子设备100与电子设备200建立短距离通信连接的方式可以包括但不限于扫描二维码、近场通信(near field communication,NFC)碰一碰、搜索蓝牙设备等方式。本申请实施例中电子设备100与电子设备200建立的短距离通信连接的类型可以包括但不限于Wi-Fi、蓝牙、NFC等。
其中,电子设备100与电子设备200可以为登录同一账号或登录不同账号的设备。
阶段二:应用程序信息和设备信息的获取与显示阶段
S502-S504、电子设备100检测到用户搜索应用程序1的操作,响应于该操作,电子设备100向服务器200发送获取应用程序1相关信息的请求,服务器200接收到该请求后,向电子设备100发送应用程序1相关信息,其中,该相关信息中包括应用程序1适用的设备类型、应用程序1对应不同设备类型的应用程序安装包名称、下载链接等。
其中,步骤S502-步骤S504的具体执行过程可以参照前述图3A所示实施例中的步骤S307-步骤S309中的相关内容,在此不再赘述。
在一些实施例中,在步骤S503之前,还可以包括:电子设备100在其应用程序下载模块上登录账号(例如账号1等)。
S505-S508、电子设备100的应用程序下载模块向电子设备100的设备发现模块发送获取附近设备的设备信息的指令,电子设备100的设备发现模块接收到该指令后,向电子设备200的设备发现模块发送获取附近设备的设备信息的请求,电子设备200的设备发现模块接收到该请求后,向电子设备100的设备发现模块发送设备信息2,其中,设备信息2中包括设备名称2、设备类型2等信息。电子设备100的设备发现模块接收到设备信息2后,向电子设备100的应用程序下载模块发送设备信息2。
具体地,在获取到前述应用程序1相关信息之后,电子设备100的应用程序下载模块可以向电子设备100的设备发现模块发送获取附近设备的设备信息的指令,电子设备100的设备发现模块接收到该指令后,可以向电子设备100附近的其他电子设备发送获取附近设备的 设备信息的请求,例如,附近其他电子设备包括电子设备200,则可以向电子设备200发送上述请求,电子设备200的设备发现模块接收到上请求后,可以向电子设备100的设备发现模块发送设备信息2(即电子设备200的设备信息),其中,设备信息2中包括设备名称2(即电子设备200的设备名称)、设备类型2(即电子设备200的设备类型)等信息。电子设备100的设备发现模块接收到设备信息2后,可以向电子设备100的应用程序下载模块发送设备信息2。
在本申请实施例中,电子设备100附近的其他电子设备可以是指与电子设备100建立短距离通信连接的电子设备。
表3示例性示出了本机设备(即电子设备100)及其获取到的附近设备(例如电子设备200)的设备信息(例如设备名称、设备类型)。
从表3中可以看出,本机设备及其附近设备有两个,一个是设备名称为Huawei Matebook X,设备类型为PC的电子设备(即电子设备100),另一个是设备名称为Huawei P40 Pro,设备类型为手机的电子设备(即电子设备200)。
设备名称 设备类型
Huawei Matebook X 个人计算机(PC)
Huawei P40 Pro 手机(phone)
表3
可以理解,表3中仅仅以电子设备100附近的电子设备为电子设备200为例示出了电子设备200的设备信息。电子设备100附近的其他电子设备还可以有更多,电子设备100均可以获取并记录这些电子设备的设备信息。
需要说明的是,本申请实施例对执行步骤S503-步骤S504与执行步骤S505-步骤S508的时间顺序不作限定。在一些实施例中,也可以先执行步骤S505-步骤S508,再执行步骤步骤S503-步骤S504;在另一些实施例中,也可以同时执行步骤S503-步骤S504与步骤S505-步骤S508。
在一些实施例中,电子设备100可以先执行步骤S505-步骤S508,即获取到附近设备的设备信息,之后,步骤S503-步骤S504的执行过程可以为如下过程:电子设备100基于获取到的设备信息向服务器200发送请求,该请求用于指示服务器200向电子设备100发送对应该设备信息的应用程序安装包名称、下载链接等。服务器200接收到该请求后,可以向电子设备100发送对应该设备信息的应用程序安装包名称、下载链接等。
S509、电子设备100显示应用程序1的搜索结果和获取到的附近设备的设备信息列表,其中,该设备信息列表中包括设备信息2。
具体地,同样以应用程序1是“XX视频”应用程序为例,电子设备100在完成步骤S502-步骤S508之后,即电子设备100在获取到前述应用程序1相关信息和附近设备的设备信息之后,电子设备100可以显示应用程序1的搜索结果,例如,图4C示例性所示的“XX视频” 应用程序的搜索结果432。其中,关于图4C所示用户界面430的描述可以参照前述相关内容,在此不再赘述。
进一步地,电子设备100可以检测到用户针对图4C中所示的下拉选项434的操作(例如点击操作),响应于该操作,电子设备100可以显示如图6A示例性所示的窗口610,窗口610中可以包括本机设备及其获取到的附近设备的设备信息列表。
可选地,窗口610中可以只包括本机设备的设备名称及本机设备获取到的附近设备的设备名称,例如,电子设备100的设备名称Huawei Matebook X,电子设备200的设备名称Huawei P40 Pro等。
阶段三:应用程序下载与安装阶段
S510-S511、电子设备100检测到用户选择在设备名称2对应的设备上安装应用程序1的操作,响应于该操作,电子设备100基于用户选择的设备确定该设备的设备类型为设备类型2,并进一步确定应用程序1对应设备类型2的下载链接。
具体地,以电子设备100给电子设备200安装“XX视频”应用程序为例,电子设备200的设备名称为设备名称2,设备名称2为Huawei P40 Pro,应用程序1为“XX视频”应用程序。如图6A所示,电子设备100可以检测到用户选择在设备名称2对应的设备上安装“XX视频”应用程序的操作(例如用户点击图6A所示的Huawei P40 Pro选项的操作和用户点击图6B所示的安装选项435的操作),响应于该操作,电子设备100将Huawei P40 Pro选项置于图6B所示的被选中状态,即表示用户选择的设备为Huawei P40 Pro,同时,由于电子设备100提前获取到了附近设备的设备信息(参照表3),因此,电子设备100可以基于用户选择的设备确定该设备的设备类型为设备类型2(即手机),进一步地,由于电子设备100提前获取到了“XX视频”应用程序相关信息(参照表2),因此,电子设备100可以确定“XX视频”应用程序对应设备类型2的下载链接为http://BBBBBB。
可选地,电子设备100也可以基于设备类型2确定应用程序1对应设备类型2的应用程序安装包名称。
在一些实施例中,图6A-图6B示例性所示的界面显示和用户操作的过程的另一种实现方式可以是图4G-图4H示例性所示的界面显示和用户操作的过程,具体可以参照前述内容,在此不再赘述。
S512-S515、电子设备100的应用程序下载模块向电子设备100的设备发现模块发送下载指令2,该指令中包括设备信息2、应用程序1对应设备类型2的下载链接等,电子设备100的设备发现模块接收到该下载指令2后,向电子设备200的设备发现模块发送该下载指令2,电子设备200的设备发现模块接收到该下载指令2后,向电子设备200的应用程序下载模块发送该下载指令2。可选地,电子设备200的应用程序下载模块接收到该下载指令2之后,电子设备200可以显示提示信息,用于提示用户安装应用程序1,并可以检测到用户同意安装应用程序1的操作。
具体地,电子设备100的应用程序下载模块可以向电子设备100的设备发现模块发送下载指令2,该指令中可以包括但不限于电子设备200的设备信息(即设备信息2)、应用程序 1对应设备类型2的下载链接(例如“XX视频”应用程序对应设备类型2的下载链接http://BBBBBB)等。
其中,设备信息2中可以包括电子设备200的设备名称、设备ID、媒体访问控制地址等信息。
可选地,下载指令2中还可以包括应用程序1对应设备类型2的应用程序安装包名称。
在本申请实施例中,下载指令2中还可以包括电子设备100的设备信息和账号信息。
电子设备100的设备发现模块接收到该下载指令2后,可以向电子设备200的设备发现模块发送该下载指令2。
可选地,上述下载指令2也可以只包括应用程序1对应设备类型2的下载链接、电子设备200的设备名称。
可选地,上述下载指令2也可以只包括应用程序1对应设备类型2的应用程序安装包名称、电子设备200的设备名称。
电子设备200的设备发现模块接收到该下载指令2后,可以向电子设备200的应用程序下载模块发送该下载指令2。
这样,电子设备100可以通过电子设备100与电子设备200建立的短距离通信连接来通知电子设备200下载安装应用程序1。
在一些实施例中,电子设备200的应用程序下载模块接收到上述下载指令2后,电子设备200可以显示如图4I示例性所示的窗口460,窗口460中可以包括选项461、选项462、提示信息463,用于提示用户下载安装应用程序1。这样,可以给用户选择权,同时也可以提高安全性。电子设备200可以检测到用户同意下载安装应用程序1的操作(例如针对选项461的点击操作),响应于该操作,电子设备200可以执行后续步骤。其中,上述窗口460的显示形式可以为Push通知、显示在用户界面(例如负一屏、锁屏界面、主界面等)上的弹窗等,本申请实施例对此不作限定。
在另一些实施例中,电子设备200的应用程序下载模块接收到上述下载指令2后,电子设备200也可以显示如图6C示例性所示的窗口630,窗口630中可以包括选项631、选项632、提示信息633,用于提示用户下载安装应用程序1。其中,提示信息633中可以包括电子设备100的设备信息(例如电子设备100的设备名称Huawei Matebook X等信息),还可以包括电子设备100的账号信息(例如电子设备100登录的账号名称等)。这样,可以给用户选择权,同时也可以提高安全性。电子设备200可以检测到用户同意下载安装应用程序1的操作(例如针对选项631的点击操作),响应于该操作,电子设备200可以执行后续步骤。其中,上述窗口630的显示形式可以为Push通知、显示在用户界面(例如负一屏、锁屏界面、主界面等)上的弹窗等,本申请实施例对此不作限定。
S516-S518、电子设备200向服务器200发送获取应用程序1对应设备类型2的安装包的请求,其中,该请求中包括应用程序1对应设备类型2的下载链接等,服务器200接收到该 请求后,向电子设备200发送应用程序1对应设备类型2的安装包,电子设备100接收到该安装包后,安装应用程序1。
其中,步骤S516-步骤S518的具体执行过程可以参照前述图3A所示实施例中的步骤S318-步骤S320中的相关内容,在此不再赘述。
在一些实施例中,在步骤S514之前,还可以包括:电子设备200在其应用程序下载模块登录账号(例如账号1等)。
S519-S522、电子设备200的应用程序下载模块向电子设备200的设备发现模块发送应用程序1安装成功的指令,电子设备200的设备发现模块接收到该指令后,向电子设备100的设备发现模块发送该指令,电子设备100的设备发现模块接收到该指令后,向电子设备100的应用程序下载模块发送该指令,电子设备100的应用程序下载模块接收到该指令后,显示应用程序1安装成功的指示信息。
具体地,电子设备200在成功安装应用程序1之后,电子设备200的应用程序下载模块可以通过电子设备200的设备发现模块、电子设备100的设备发现模块将应用程序1安装成功的指令发送给电子设备100的应用下载模块,用于向电子设备100通知电子设备200已经成功安装应用程序1。电子设备100接收到上述应用程序1安装成功的指令之后,可以显示图4J示例性所示的应用程序1安装成功的指示信息471,该指示信息用于指示电子设备200已经成功安装应用程序1。也即是说,电子设备100成功为电子设备200安装应用程序1,实现了跨设备应用程序安装。
在一些实施例中,上述安装成功的指令还可以是安装成功的消息。
示例性地,应用程序1为“XX视频”应用程序,如图4K所示,相比于图4B,电子设备200在用户界面420中显示了新增的“XX视频”应用程序的图标422,用于表示电子设备200成功安装“XX视频”应用程序。
需要说明的是,步骤S519-步骤S522是可选的,在一些实施例中,也可以不执行步骤S519-步骤S522,即电子设备200在成功安装应用程序1之后可以不通知电子设备100,电子设备100也不需要显示应用程序1安装成功的指示信息。
在一些实施例中,在电子设备100和电子设备200均登录同一账号的情况下,上述图5所示的阶段三中步骤S510-步骤S522的另一种实现方式也可以是图3A所示实施例中的步骤S313-步骤S323。
实施上述实施例提供的应用程序安装方法,可以将没有关联的多个电子设备(例如本机设备与一个或多个对端设备)通过短距离通信连接来进行关联,建立设备与设备之间的通信通道,从而实现近端跨设备安装应用程序的功能。可以看出,该实施例可以达到与图3A所示实施例相同的技术效果。
在一种可能的实现方式中,图3A所示的实施例与图5所示的实施例可以进行结合,也即是说,电子设备100不仅可以获取到与电子设备100登录同一账号的全部电子设备的设备 信息,同时还可以获取到电子设备100附近设备(即与电子设备100建立短距离无线通信连接的设备)的设备信息。进一步地,电子设备100可以将这些设备的设备信息全部显示出来,以供用户选择在哪个/哪些设备上安装应用程序,从而可以同时实现远端和近端跨设备安装应用程序的功能。
在一些实施例中,电子设备100上可以显示与电子设备100登录同一账号和/或建立短距离通信连接的其他电子设备上已经安装的应用程序,以供用户查看。这样,用户可以通过一个电子设备来查看一个或多个其他电子设备上安装的应用程序,同时可以避免用户在忘记某个电子设备上已安装某一应用程序的情况下还触发电子设备执行上述应用程序安装方法。
在另一些实施例中,如图6D示例性所示,电子设备100上可以实时显示电子设备200安装应用程序1的安装进度条641,从图中可以看出,当前电子设备200上应用程序1的安装进度为30%。这样,用户可以实时获知电子设备200上应用程序1的安装进度。
在另一些实施例中,电子设备200上应用程序1安装成功之后,电子设备100也可以显示一个打开选项,在用户点击该选项之后,电子设备200可以直接启动并运行应用程序1。这样,用户可以通过操作电子设备100来指示电子设备200启动并运行应用程序1。
在一种可能的实现方式中,前述图3A、图3B、图5中“电子设备100检测到用户搜索应用程序1的操作”可以被替代为“电子设备100检测到用户选择安装应用程序1的操作”。示例性地,电子设备100可以显示如图6E所示的应用市场的一个用户界面,在该用户界面中可以显示一个或多个应用程序(例如“XX视频”应用程序、“音乐”应用程序、“相机”应用程序、“阅读”应用程序等等),电子设备100可以检测到用户选择安装应用程序1(例如“XX视频”应用程序)的操作(例如点击“XX视频”应用程序对应的安装选项的操作),响应于该操作,电子设备100可以显示如图6F示例性所示的窗口620。
在本申请实施例中,第一电子设备可以是电子设备100,第二电子设备可以是电子设备200,第三电子设备为电子设备300,第一应用程序可以是应用程序1(例如“XX视频”应用程序),服务器可以是服务器100和服务器200,第一账号可以是账号1,第一界面可以是图4C所示的用户界面,或,图6E所示的用户界面,第二界面可以是图4D所示的窗口440,或图4G所示的窗口450,或,图6A所示的窗口610,第一请求可以是图3A中的下载指令1或图5中的下载指令2,第二请求可以是下载指令3(即包括电子设备300的设备信息、应用程序1对应电子设备300的设备类型的下载链接等),第三请求可以是获取应用程序1相关信息的请求,第一操作可以是用户点击图4C所示的选项434(也可以称为第一选项)的操作,或,用户点击图6E所示的“XX视频”应用程序的安装选项(也可以称为第一选项)的操作,第二操作可以是指图4E用户点击安装选项的操作,或,图4H用户点击安装到设备选项的操作,或,用户点击图4D所示的设备选项(例如Huawei P40 Pro选项)的操作,第二选项可以是电子设备100的设备选项(例如Huawei Matebook X选项),第二选项可以是电子设备200的设备选项(例如Huawei P40 Pro选项),第四选项可以是电子设备300的设备选项,第一应用程序的状态信息可以是第一应用程序在第一电子设备上和第二电子设备上已安装或未安装的指示信息,第一提示信息可以是图4I所示的提示信息463,或,图6C所示的提示 信息633。
下面介绍本申请实施例提供的一种电子设备100的结构。
图7示例性示出了本申请实施例中提供的一种电子设备100的结构。
如图7所示,电子设备100可以包括:处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,USB)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,传感器模块180,按键190,马达191,指示器192,摄像头193,显示屏194,以及用户标识模块(subscriber identification module,SIM)卡接口195等。其中传感器模块180可以包括压力传感器180A,陀螺仪传感器180B,气压传感器180C,磁传感器180D,加速度传感器180E,距离传感器180F,接近光传感器180G,指纹传感器180H,温度传感器180J,触摸传感器180K,环境光传感器180L,骨传导传感器180M等。
可以理解的是,本申请实施例示意的结构并不构成对电子设备100的具体限定。在本申请另一些实施例中,电子设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processing unit,GPU),图像信号处理器(image signal processor,ISP),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
其中,控制器可以是电子设备100的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了***的效率。
在一些实施例中,处理器110可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I2C)接口,集成电路内置音频(inter-integrated circuit sound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purpose input/output,GPIO)接口,用户标识模块(subscriber identity module,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。
I2C接口是一种双向同步串行总线,包括一根串行数据线(serial data line,SDA)和一根串行时钟线(derail clock line,SCL)。在一些实施例中,处理器110可以包含多组I2C总线。处理器110可以通过不同的I2C总线接口分别耦合触摸传感器180K,充电器,闪光灯,摄像头193等。例如:处理器110可以通过I2C接口耦合触摸传感器180K,使处理器110与触摸传感器180K通过I2C总线接口通信,实现电子设备100的触摸功能。
I2S接口可以用于音频通信。在一些实施例中,处理器110可以包含多组I2S总线。处理 器110可以通过I2S总线与音频模块170耦合,实现处理器110与音频模块170之间的通信。在一些实施例中,音频模块170可以通过I2S接口向无线通信模块160传递音频信号,实现通过蓝牙耳机接听电话的功能。
PCM接口也可以用于音频通信,将模拟信号抽样,量化和编码。在一些实施例中,音频模块170与无线通信模块160可以通过PCM总线接口耦合。在一些实施例中,音频模块170也可以通过PCM接口向无线通信模块160传递音频信号,实现通过蓝牙耳机接听电话的功能。所述I2S接口和所述PCM接口都可以用于音频通信。
UART接口是一种通用串行数据总线,用于异步通信。该总线可以为双向通信总线。它将要传输的数据在串行通信与并行通信之间转换。在一些实施例中,UART接口通常被用于连接处理器110与无线通信模块160。例如:处理器110通过UART接口与无线通信模块160中的蓝牙模块通信,实现蓝牙功能。在一些实施例中,音频模块170可以通过UART接口向无线通信模块160传递音频信号,实现通过蓝牙耳机播放音乐的功能。
MIPI接口可以被用于连接处理器110与显示屏194,摄像头193等***器件。MIPI接口包括摄像头串行接口(camera serial interface,CSI),显示屏串行接口(display serial interface,DSI)等。在一些实施例中,处理器110和摄像头193通过CSI接口通信,实现电子设备100的拍摄功能。处理器110和显示屏194通过DSI接口通信,实现电子设备100的显示功能。
GPIO接口可以通过软件配置。GPIO接口可以被配置为控制信号,也可被配置为数据信号。在一些实施例中,GPIO接口可以用于连接处理器110与摄像头193,显示屏194,无线通信模块160,音频模块170,传感器模块180等。GPIO接口还可以被配置为I2C接口,I2S接口,UART接口,MIPI接口等。
USB接口130是符合USB标准规范的接口,具体可以是Mini USB接口,Micro USB接口,USB Type C接口等。USB接口130可以用于连接充电器为电子设备100充电,也可以用于电子设备100与***设备之间传输数据。也可以用于连接耳机,通过耳机播放音频。该接口还可以用于连接其他终端设备,例如AR设备等。
可以理解的是,本申请实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对电子设备100的结构限定。在本申请另一些实施例中,电子设备100也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
充电管理模块140用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。在一些有线充电的实施例中,充电管理模块140可以通过USB接口130接收有线充电器的充电输入。在一些无线充电的实施例中,充电管理模块140可以通过电子设备100的无线充电线圈接收无线充电输入。充电管理模块140为电池142充电的同时,还可以通过电源管理模块141为电子设备100供电。
电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,外部存储器,显示屏194,摄像头193,和无线通信模块160等供电。电源管理模块141还可以用于监测电池容量,电池循环次数,电池健康状态(漏电,阻抗)等参数。在其他一些实施例中,电源管理模块141也可以设置于处理器110中。在另一些实施例中,电源管理模块141和充电管理模块140也可以设置于同一个器件中。
电子设备100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
天线1和天线2用于发射和接收电磁波信号。电子设备100中的每个天线可用于覆盖单 个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
移动通信模块150可以提供应用在电子设备100上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,LNA)等。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块150的至少部分功能模块可以被设置于处理器110中。在一些实施例中,移动通信模块150的至少部分功能模块可以与处理器110的至少部分模块被设置在同一个器件中。
调制解调处理器可以包括调制器和解调器。其中,调制器用于将待发送的低频基带信号调制成中高频信号。解调器用于将接收的电磁波信号解调为低频基带信号。随后解调器将解调得到的低频基带信号传送至基带处理器处理。低频基带信号经基带处理器处理后,被传递给应用处理器。应用处理器通过音频设备(不限于扬声器170A,受话器170B等)输出声音信号,或通过显示屏194显示图像或视频。在一些实施例中,调制解调处理器可以是独立的器件。在另一些实施例中,调制解调处理器可以独立于处理器110,与移动通信模块150或其他功能模块设置在同一个器件中。
无线通信模块160可以提供应用在电子设备100上的包括无线局域网(wireless local area networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星***(global navigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。无线通信模块160可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块160经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
在一些实施例中,电子设备100的天线1和移动通信模块150耦合,天线2和无线通信模块160耦合,使得电子设备100可以通过无线通信技术与网络以及其他设备通信。所述无线通信技术可以包括全球移动通讯***(global system for mobile communications,GSM),通用分组无线服务(general packet radio service,GPRS),码分多址接入(code division multiple access,CDMA),宽带码分多址(wideband code division multiple access,WCDMA),时分码分多址(time-division code division multiple access,TD-SCDMA),长期演进(long term evolution,LTE),BT,GNSS,WLAN,NFC,FM,和/或IR技术等。所述GNSS可以包括全球卫星定位***(global positioning system,GPS),全球导航卫星***(global navigation satellite system,GLONASS),北斗卫星导航***(beidou navigation satellite system,BDS),准天顶卫星***(quasi-zenith satellite system,QZSS)和/或星基增强***(satellite based augmentation systems,SBAS)。
电子设备100通过GPU,显示屏194,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏194用于显示图像,视频等。显示屏194包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD),有机发光二极管(organic light-emitting diode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrix organic light emitting diode的, AMOLED),柔性发光二极管(flex light-emitting diode,FLED),Miniled,MicroLed,Micro-oLed,量子点发光二极管(quantum dot light emitting diodes,QLED)等。在一些实施例中,电子设备100可以包括1个或N个显示屏194,N为大于1的正整数。
电子设备100可以通过ISP,摄像头193,视频编解码器,GPU,显示屏194以及应用处理器等实现拍摄功能。
ISP用于处理摄像头193反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给ISP处理,转化为肉眼可见的图像。ISP还可以对图像的噪点,亮度,肤色进行算法优化。ISP还可以对拍摄场景的曝光,色温等参数优化。在一些实施例中,ISP可以设置在摄像头193中。
摄像头193用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给ISP转换成数字图像信号。ISP将数字图像信号输出到DSP加工处理。DSP将数字图像信号转换成标准的RGB,YUV等格式的图像信号。在一些实施例中,电子设备100可以包括1个或N个摄像头193,N为大于1的正整数。
数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,当电子设备100在频点选择时,数字信号处理器用于对频点能量进行傅里叶变换等。
视频编解码器用于对数字视频压缩或解压缩。电子设备100可以支持一种或多种视频编解码器。这样,电子设备100可以播放或录制多种编码格式的视频,例如:动态图像专家组(moving picture experts group,MPEG)1,MPEG2,MPEG3,MPEG4等。
NPU为神经网络(neural-network,NN)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过NPU可以实现电子设备100的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。
外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展电子设备100的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器110通过运行存储在内部存储器121的指令,从而执行电子设备100的各种功能应用以及数据处理。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作***,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储电子设备100使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。
电子设备100可以通过音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,以及应用处理器等实现音频功能。例如音乐播放,录音等。
音频模块170用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块170还可以用于对音频信号编码和解码。在一些实施例中,音频模块170可以设置于处理器110中,或将音频模块170的部分功能模块设置于处理器110中。
扬声器170A,也称“喇叭”,用于将音频电信号转换为声音信号。电子设备100可以通过 扬声器170A收听音乐,或收听免提通话。
受话器170B,也称“听筒”,用于将音频电信号转换成声音信号。当电子设备100接听电话或语音信息时,可以通过将受话器170B靠近人耳接听语音。
麦克风170C,也称“话筒”,“传声器”,用于将声音信号转换为电信号。当拨打电话或发送语音信息时,用户可以通过人嘴靠近麦克风170C发声,将声音信号输入到麦克风170C。电子设备100可以设置至少一个麦克风170C。在另一些实施例中,电子设备100可以设置两个麦克风170C,除了采集声音信号,还可以实现降噪功能。在另一些实施例中,电子设备100还可以设置三个,四个或更多麦克风170C,实现采集声音信号,降噪,还可以识别声音来源,实现定向录音功能等。
耳机接口170D用于连接有线耳机。耳机接口170D可以是USB接口130,也可以是3.5mm的开放移动终端设备平台(open mobile terminal platform,OMTP)标准接口,美国蜂窝电信工业协会(cellular telecommunications industry association of the USA,CTIA)标准接口。
压力传感器180A用于感受压力信号,可以将压力信号转换成电信号。在一些实施例中,压力传感器180A可以设置于显示屏194。压力传感器180A的种类很多,如电阻式压力传感器,电感式压力传感器,电容式压力传感器等。电容式压力传感器可以是包括至少两个具有导电材料的平行板。当有力作用于压力传感器180A,电极之间的电容改变。电子设备100根据电容的变化确定压力的强度。当有触摸操作作用于显示屏194,电子设备100根据压力传感器180A检测所述触摸操作强度。电子设备100也可以根据压力传感器180A的检测信号计算触摸的位置。在一些实施例中,作用于相同触摸位置,但不同触摸操作强度的触摸操作,可以对应不同的操作指令。例如:当有触摸操作强度小于第一压力阈值的触摸操作作用于短消息应用图标时,执行查看短消息的指令。当有触摸操作强度大于或等于第一压力阈值的触摸操作作用于短消息应用图标时,执行新建短消息的指令。
陀螺仪传感器180B可以用于确定电子设备100的运动姿态。在一些实施例中,可以通过陀螺仪传感器180B确定电子设备100围绕三个轴(即,x,y和z轴)的角速度。陀螺仪传感器180B可以用于拍摄防抖。示例性的,当按下快门,陀螺仪传感器180B检测电子设备100抖动的角度,根据角度计算出镜头模组需要补偿的距离,让镜头通过反向运动抵消电子设备100的抖动,实现防抖。陀螺仪传感器180B还可以用于导航,体感游戏场景。
气压传感器180C用于测量气压。在一些实施例中,电子设备100通过气压传感器180C测得的气压值计算海拔高度,辅助定位和导航。
磁传感器180D包括霍尔传感器。电子设备100可以利用磁传感器180D检测翻盖皮套的开合。在一些实施例中,当电子设备100是翻盖机时,电子设备100可以根据磁传感器180D检测翻盖的开合。进而根据检测到的皮套的开合状态或翻盖的开合状态,设置翻盖自动解锁等特性。
加速度传感器180E可检测电子设备100在各个方向上(一般为三轴)加速度的大小。当电子设备100静止时可检测出重力的大小及方向。还可以用于识别电子设备100姿态,应用于横竖屏切换,计步器等应用。
距离传感器180F,用于测量距离。电子设备100可以通过红外或激光测量距离。在一些实施例中,拍摄场景,电子设备100可以利用距离传感器180F测距以实现快速对焦。
接近光传感器180G可以包括例如发光二极管(LED)和光检测器,例如光电二极管。发光二极管可以是红外发光二极管。电子设备100通过发光二极管向外发射红外光。电子设备100使用光电二极管检测来自附近物体的红外反射光。当检测到充分的反射光时,可以确定电子 设备100附近有物体。当检测到不充分的反射光时,电子设备100可以确定电子设备100附近没有物体。电子设备100可以利用接近光传感器180G检测用户手持电子设备100贴近耳朵通话,以便自动熄灭屏幕达到省电的目的。接近光传感器180G也可用于皮套模式,口袋模式自动解锁与锁屏。
环境光传感器180L用于感知环境光亮度。电子设备100可以根据感知的环境光亮度自适应调节显示屏194亮度。环境光传感器180L也可用于拍照时自动调节白平衡。环境光传感器180L还可以与接近光传感器180G配合,检测电子设备100是否在口袋里,以防误触。
指纹传感器180H用于采集指纹。电子设备100可以利用采集的指纹特性实现指纹解锁,访问应用锁,指纹拍照,指纹接听来电等。
温度传感器180J用于检测温度。在一些实施例中,电子设备100利用温度传感器180J检测的温度,执行温度处理策略。例如,当温度传感器180J上报的温度超过阈值,电子设备100执行降低位于温度传感器180J附近的处理器的性能,以便降低功耗实施热保护。在另一些实施例中,当温度低于另一阈值时,电子设备100对电池142加热,以避免低温导致电子设备100异常关机。在其他一些实施例中,当温度低于又一阈值时,电子设备100对电池142的输出电压执行升压,以避免低温导致的异常关机。
触摸传感器180K,也称“触控面板”。触摸传感器180K可以设置于显示屏194,由触摸传感器180K与显示屏194组成触摸屏,也称“触控屏”。触摸传感器180K用于检测作用于其上或附近的触摸操作。触摸传感器可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。可以通过显示屏194提供与触摸操作相关的视觉输出。在另一些实施例中,触摸传感器180K也可以设置于电子设备100的表面,与显示屏194所处的位置不同。
骨传导传感器180M可以获取振动信号。在一些实施例中,骨传导传感器180M可以获取人体声部振动骨块的振动信号。骨传导传感器180M也可以接触人体脉搏,接收血压跳动信号。在一些实施例中,骨传导传感器180M也可以设置于耳机中,结合成骨传导耳机。音频模块170可以基于所述骨传导传感器180M获取的声部振动骨块的振动信号,解析出语音信号,实现语音功能。应用处理器可以基于所述骨传导传感器180M获取的血压跳动信号解析心率信息,实现心率检测功能。
按键190包括开机键,音量键等。按键190可以是机械按键。也可以是触摸式按键。电子设备100可以接收按键输入,产生与电子设备100的用户设置以及功能控制有关的键信号输入。
马达191可以产生振动提示。马达191可以用于来电振动提示,也可以用于触摸振动反馈。例如,作用于不同应用(例如拍照,音频播放等)的触摸操作,可以对应不同的振动反馈效果。作用于显示屏194不同区域的触摸操作,马达191也可对应不同的振动反馈效果。不同的应用场景(例如:时间提醒,接收信息,闹钟,游戏等)也可以对应不同的振动反馈效果。触摸振动反馈效果还可以支持自定义。
指示器192可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。
SIM卡接口195用于连接SIM卡。SIM卡可以通过***SIM卡接口195,或从SIM卡接口195拔出,实现和电子设备100的接触和分离。电子设备100可以支持1个或N个SIM卡接口,N为大于1的正整数。SIM卡接口195可以支持Nano SIM卡,Micro SIM卡,SIM卡等。同一个SIM卡接口195可以同时***多张卡。所述多张卡的类型可以相同,也可以不同。SIM卡接口195也可以兼容不同类型的SIM卡。SIM卡接口195也可以兼容外部存储卡。电 子设备100通过SIM卡和网络交互,实现通话以及数据通信等功能。在一些实施例中,电子设备100采用eSIM,即:嵌入式SIM卡。eSIM卡可以嵌在电子设备100中,不能和电子设备100分离。
应当理解的是,图7所示电子设备100仅是一个范例,并且电子设备100可以具有比图7中所示的更多的或者更少的部件,可以组合两个或多个的部件,或者可以具有不同的部件配置。图7中所示出的各种部件可以在包括一个或多个信号处理和/或专用集成电路在内的硬件、软件、或硬件和软件的组合中实现。
其中,电子设备200的结构可以与电子设备100的结构相同或相似,关于电子设备200的结构的相关内容可以参照图7所示的电子设备100的结构的相关文字描述,在此不再赘述。
下面介绍本申请实施例提供的一种电子设备100的软件结构。
图8示例性示出了本申请实施例中提供的一种电子设备100的软件结构。
如图8所示,电子设备100的软件***可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本申请实施例以分层架构的Android***为例,示例性说明电子设备100的软件结构。
分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将Android***分为四层,从上至下分别为应用程序层,应用程序框架层,安卓运行时(Android runtime)和***库,以及内核层。
应用程序层可以包括一系列应用程序包。
如图8所示,应用程序包可以包括相机,图库,日历,通话,地图,应用市场,WLAN,蓝牙,音乐,视频,短信息等应用程序。
应用程序框架层为应用程序层的应用程序提供应用编程接口(application programming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。
如图8所示,应用程序框架层可以包括窗口管理器,内容提供器,视图***,电话管理器,资源管理器,通知管理器等。
窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。
内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。所述数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。
视图***包括可视控件,例如显示文字的控件,显示图片的控件等。视图***可用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。
电话管理器用于提供电子设备100的通信功能。例如通话状态的管理(包括接通,挂断等)。
资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。
通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在***顶部状态栏的通知,例如后台运行的应用程序的通知,还可以是以对话窗口形式出现在屏幕上的通知。例如在状态栏提 示文本信息,发出提示音,电子设备振动,指示灯闪烁等。
Android Runtime包括核心库和虚拟机。Android runtime负责安卓***的调度和管理。
核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。
应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。
***库可以包括多个功能模块。例如:表面管理器(surface manager),媒体库(Media Libraries),三维图形处理库(例如:OpenGL ES),2D图形引擎(例如:SGL)等。
表面管理器用于对显示子***进行管理,并且为多个应用程序提供了2D和3D图层的融合。
媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如:MPEG4,H.264,MP3,AAC,AMR,JPG,PNG等。
三维图形处理库用于实现三维图形绘图,图像渲染,合成,和图层处理等。
2D图形引擎是2D绘图的绘图引擎。
内核层是硬件和软件之间的层。内核层至少包含显示驱动,摄像头驱动,蓝牙驱动,传感器驱动。
下面结合捕获拍照场景,示例性说明电子设备100软件以及硬件的工作流程。
当触摸传感器180K接收到触摸操作,相应的硬件中断被发给内核层。内核层将触摸操作加工成原始输入事件(包括触摸坐标,触摸操作的时间戳等信息)。原始输入事件被存储在内核层。应用程序框架层从内核层获取原始输入事件,识别该输入事件所对应的控件。以该触摸操作是触摸单击操作,该单击操作所对应的控件为相机应用图标的控件为例,相机应用调用应用框架层的接口,启动相机应用,进而通过调用内核层启动摄像头驱动,通过摄像头193捕获静态图像或视频。
其中,电子设备200的软件结构可以与电子设备100的软件结构相同或相似,关于电子设备200的软件结构的相关内容可以参照图8所示的电子设备100的软件结构的相关文字描述,在此不再赘述。
下面介绍本申请实施例提供的另一种电子设备100的结构。
图9示例性示出了本申请实施例中提供的另一种电子设备100的结构。
如图9所示,电子设备100可以包括:应用程序下载模块901、设备发现模块902。
应用程序下载模块901可以用于下载安装各类应用程序、为其他设备安装各类应用程序、接收和/或发送相关指令、请求等。在本申请实施例中,应用程序下载模块901可以为电子设备100上的应用市场这一应用程序。
设备发现模块902可以用于负责附近设备的互相发现,并在不同电子设备之间建立短距离通信连接,接收和/或发送相关指令、请求等。在本申请实施例中,设备发现模块902可以为Wi-Fi模块、蓝牙模块、NFC模块等。
关于电子设备100的功能和工作原理的更多细节,可以参照上述各个实施例中的相关内容,在此不再赘述。
其中,电子设备200也可以包括应用程序下载模块、设备发现模块,关于这两个模块的功能和工作原理的更多细节,可以参照上述各个实施例中的相关内容,在此不再赘述。
下面介绍本申请实施例提供的一种服务器200的结构。
图10示例性示出了本申请实施例提供的一种服务器200的结构。
如图10所示,服务器200可以包括:一个或多个处理器1001、存储器1002、通信接口1003、发射器1005、接收器1006、耦合器1007、天线1008。这些部件可通过总线1004或者其他方式连接,图10以通过总线连接为例。其中:
通信接口1003可用于服务器200与其他通信设备,例如电子设备100、电子设备200等,进行通信。具体地,通信接口1003可以是3G通信接口、4G通信接口、5G通信接口,也可以是未来新空口的通信接口等。不限于无线通信接口,服务器200还可以配置有有线的通信接口1003,例如局域接入网(local access network,LAN)接口。发射器1005可用于对处理器1001输出的信号进行发射处理。接收器1006可用于对天线1008接收的移动通信信号进行接收处理。
在本申请的一些实施例中,发射器1005和接收器1006可看作一个无线调制解调器。在服务器200中,发射器1005和接收器1006的数量均可以是一个或者多个。天线1008可用于将传输线中的电磁能转换成自由空间中的电磁波,或者将自由空间中的电磁波转换成传输线中的电磁能。耦合器1007用于将天线1008接收到的移动通信信号分成多路,分配给多个的接收器1006。
存储器1002与处理器1001耦合,用于存储各种软件程序和/或多组指令。具体地,存储器1002可包括高速随机存取的存储器,并且也可包括非易失性存储器,例如一个或多个磁盘存储设备、闪存设备或其他非易失性固态存储设备。存储器1002可以存储网络通信程序,该网络通信程序可用于与一个或多个附加设备,一个或多个终端设备,一个或多个网络设备进行通信。
在本申请的一些实施例中,存储器1002可用于存储本申请的一个或多个实施例提供的应用程序安装方法在服务器200侧的实现程序。关于本申请的一个或多个实施例提供的应用程序安装方法的实现,请参考上述实施例。
处理器1001可用于读取和执行计算机可读指令。具体地,处理器1001可用于调用存储于存储器1002中的程序,例如本申请的一个或多个实施例提供的应用程序安装方法在服务器200侧的实现程序,并执行该程序包含的指令。
需要说明的是,图10所示的服务器200仅仅是本申请实施例的一种实现方式,实际应用中,服务器200还可以包括更多或更少的部件,在此不作限定。
关于服务器200的功能和工作原理的更多细节,可以参照上述各个实施例中的相关内容,在此不再赘述。
其中,服务器100的结构可以与服务器200的结构相同或相似,关于服务器100的结构相关内容可以参照图10所示的服务器200的结构的相关文字描述,在此不再赘述。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘(solid state disk,SSD))等。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,该流程可以由计算机程序来指令相关的硬件完成,该程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法实施例的流程。而前述的存储介质包括:ROM或随机存储记忆体RAM、磁碟或者光盘等各种可存储程序代码的介质。
以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。

Claims (15)

  1. 一种应用程序安装方法,应用于第一电子设备,其特征在于,所述方法包括:
    所述第一电子设备显示应用市场程序的第一界面,所述第一界面包括第一应用程序的图标和所述第一应用程序对应的第一选项;
    所述第一电子设备检测到用户针对所述第一选项的第一操作;
    响应于所述第一操作,所述第一电子设备显示所述应用市场程序的第二界面,所述第二界面包括用于标识所述第一电子设备的第二选项和用于标识所述第二电子设备的第三选项,所述第三选项是基于所述第二电子设备的设备信息生成的,所述第二电子设备的设备信息是所述第一电子设备从服务器或所述第二电子设备获取的;
    所述第一电子设备检测到用户的第二操作;
    响应于所述第二操作,所述第一电子设备向所述第二电子设备发送第一请求,所述第一请求用于指示所述第二电子设备安装与所述第二电子设备对应的所述第一应用程序。
  2. 根据权利要求1所述的方法,其特征在于,在所述第一电子设备检测到用户的第二操作之前,所述方法还包括:
    所述第一电子设备检测到用户针对所述第三选项的操作。
  3. 根据权利要求1所述的方法,其特征在于,所述第二界面还包括:用于标识第三电子设备的第四选项,在所述第一电子设备检测到用户的第二操作之前,所述方法还包括:
    所述第一电子设备检测到用户针对所述第三选项和所述第四选项的操作;响应于所述第二操作,所述第一电子设备还向所述第三电子设备发送第二请求,所述第二请求用于指示所述第三电子设备安装与所述第三电子设备对应的所述第一应用程序。
  4. 根据权利要求1-3任一项所述的方法,其特征在于,在所述第一电子设备显示应用市场程序的第一界面之前,所述方法还包括:
    所述第一电子设备获取用户输入的关键词,并基于所述关键词搜索所述第一应用程序。
  5. 根据权利要求1-4任一项所述的方法,其特征在于,在所述第一电子设备检测到用户针对所述第一选项的第一操作之前,所述方法还包括:
    所述第一电子设备登录第一账号,所述第一账号和所述第二电子设备相关联;
    所述第一电子设备通过服务器获取所述第二电子设备的设备信息。
  6. 根据权利要求5所述的方法,其特征在于,所述第一电子设备向所述第二电子设备发送第一请求,具体包括:
    所述第一电子设备通过服务器向所述第二电子设备发送所述第一请求,所述第一请求中包括与所述第二电子设备对应的所述第一应用程序的信息。
  7. 根据权利要求1-4任一项所述的方法,其特征在于,在所述第一电子设备显示应用市场程序的第一界面之前,所述方法还包括:
    所述第一电子设备与所述第二电子设备建立短距离通信连接;所述第一电子设备通过短 距离通信连接获取所述第二电子设备的设备信息。
  8. 根据权利要求7所述的方法,其特征在于,所述第一电子设备向所述第二电子设备发送第一请求,具体包括:
    所述第一电子设备基于所述短距离通信连接向所述第二电子设备发送所述第一请求,所述第一请求中包括与所述第二电子设备对应的所述第一应用程序的信息。
  9. 根据权利要求1-8任一项所述的方法,其特征在于,在所述第一电子设备显示应用市场程序的第二界面之前,所述方法还包括:
    所述第一电子设备向服务器发送第三请求,所述第三请求用于从所述服务器获取所述第一应用程序的信息;
    所述第一电子设备接收所述服务器发送的所述第一应用程序的信息,所述第一应用程序的信息包括与所述第一电子设备对应的第一应用程序的信息及与所述第二电子设备对应的第一应用程序的信息。
  10. 根据权利要求9所述的方法,其特征在于,所述第三请求中包括所述第二电子设备的设备信息和第一电子设备的设备信息。
  11. 根据权利要求9或10所述的方法,其特征在于,第二界面还包括所述第一应用程序的状态信息,所述第一应用程序的状态信息包括所述第一应用程序已安装的指示信息,或所述第一应用程序未安装的指示信息。
  12. 根据权利要求1-11任一项所述的方法,其特征在于,所述方法还包括:
    所述第一电子设备接收所述第二电子设备发送的所述第一应用程序安装成功的消息,并显示所述第二电子设备安装所述第一应用程序成功的指示信息。
  13. 根据权利要求1-12任一项所述的方法,其特征在于,所述第二界面中还包括所述第一应用程序的安装进度信息。
  14. 一种电子设备,其特征在于,所述电子设备包括一个或多个处理器和一个或多个存储器;其中,所述一个或多个存储器与所述一个或多个处理器耦合,所述一个或多个存储器用于存储计算机程序代码,所述计算机程序代码包括计算机指令,当所述一个或多个处理器执行所述计算机指令时,使得所述电子设备执行如权利要求1-13中任一项所述的方法。
  15. 一种计算机存储介质,其特征在于,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,当所述程序指令在电子设备上运行时,使得所述电子设备执行如权利要求1-13中任一项所述的方法。
PCT/CN2022/119661 2021-09-24 2022-09-19 应用程序安装方法及相关设备 WO2023045876A1 (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
CN202111126103 2021-09-24
CN202111126103.9 2021-09-24
CN202111383611.5A CN115857964A (zh) 2021-09-24 2021-11-19 应用程序安装方法及相关设备
CN202111383611.5 2021-11-19

Publications (1)

Publication Number Publication Date
WO2023045876A1 true WO2023045876A1 (zh) 2023-03-30

Family

ID=85652764

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/119661 WO2023045876A1 (zh) 2021-09-24 2022-09-19 应用程序安装方法及相关设备

Country Status (2)

Country Link
CN (1) CN115857964A (zh)
WO (1) WO2023045876A1 (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104850463A (zh) * 2015-06-08 2015-08-19 三星电子(中国)研发中心 应用程序共享方法及装置
CN105204885A (zh) * 2014-06-30 2015-12-30 宇龙计算机通信科技(深圳)有限公司 跨平台关联设备间的应用的安装方法及其***
CN105389175A (zh) * 2015-09-25 2016-03-09 深圳市金立通信设备有限公司 一种应用程序共享方法及移动终端
US20160239287A1 (en) * 2015-02-16 2016-08-18 Samsung Electronics Co., Ltd. Electronic device for installing application and method of controlling same
CN113311975A (zh) * 2020-02-27 2021-08-27 华为技术有限公司 多设备之间的应用互动方法及相关设备

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105204885A (zh) * 2014-06-30 2015-12-30 宇龙计算机通信科技(深圳)有限公司 跨平台关联设备间的应用的安装方法及其***
US20160239287A1 (en) * 2015-02-16 2016-08-18 Samsung Electronics Co., Ltd. Electronic device for installing application and method of controlling same
CN104850463A (zh) * 2015-06-08 2015-08-19 三星电子(中国)研发中心 应用程序共享方法及装置
CN105389175A (zh) * 2015-09-25 2016-03-09 深圳市金立通信设备有限公司 一种应用程序共享方法及移动终端
CN113311975A (zh) * 2020-02-27 2021-08-27 华为技术有限公司 多设备之间的应用互动方法及相关设备

Also Published As

Publication number Publication date
CN115857964A (zh) 2023-03-28

Similar Documents

Publication Publication Date Title
WO2021013158A1 (zh) 显示方法及相关装置
WO2020259452A1 (zh) 一种移动终端的全屏显示方法及设备
EP4084486B1 (en) Cross-device content projection method, and electronic device
WO2019072178A1 (zh) 一种通知处理方法及电子设备
CN113885759A (zh) 通知消息处理方法、设备、***及计算机可读存储介质
WO2021159746A1 (zh) 文件共享方法、***及相关设备
WO2020224447A1 (zh) 一种在联系人中添加智能家居设备的方法及***
CN113961157B (zh) 显示交互***、显示方法及设备
WO2020024108A1 (zh) 一种应用图标的显示方法及终端
CN112130788A (zh) 一种内容分享方法及其装置
CN113821767A (zh) 应用程序的权限管理方法、装置和电子设备
EP4033354A1 (en) Method and apparatus for installing plug-in, and storage medium
CN113973398A (zh) 无线网络连接方法、电子设备及芯片***
EP4293997A1 (en) Display method, electronic device, and system
WO2022022674A1 (zh) 应用图标布局方法及相关装置
EP4287014A1 (en) Display method, electronic device, and system
WO2020034075A1 (zh) 一种照片共享方法及电子设备
WO2022062902A1 (zh) 一种文件传输方法和电子设备
WO2022095820A1 (zh) 一种文本输入的方法、电子设备和***
WO2021218544A1 (zh) 一种提供无线上网的***、方法及电子设备
CN117348894A (zh) 一种软件升级方法、终端设备及***
CN116527266A (zh) 数据归集方法及相关设备
WO2023045876A1 (zh) 应用程序安装方法及相关设备
EP4398094A1 (en) Application installation method and related devices
WO2023142940A1 (zh) 应用组件分享方法及相关设备

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22871922

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2022871922

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 2022871922

Country of ref document: EP

Effective date: 20240402

NENP Non-entry into the national phase

Ref country code: DE