Image shooting method, electronic equipment and system
Patent Information
- Application Number
- CN202380079932.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2023-03-28
- Filing Date
- 2023-11-22
- Publication Date
- 2025-06-24
AI Technical Summary
Electronic devices such as tablets and laptops have poor flexibility when taking pictures or videos. Their cameras have limited capabilities and cannot easily obtain ideal images.
By calling the remote camera function in the first device, using the second device (such as a mobile phone) to capture images, and synchronizing the image data through near field communication or the Internet, it breaks the limitations of the local camera in acquiring images.
It provides a convenient and comfortable image shooting experience, improves the flexibility and quality of electronic devices when acquiring images, and is especially suitable for tablets, laptops and other devices.
Smart Images

Figure CN120202676A_ABST
Abstract
Description
Image shooting method, electronic equipment and system
[0001] This application claims priority to the Chinese patent application filed with the State Intellectual Property Office on March 28, 2023, with application number 202310344514.8 and invention name “A method for capturing images, electronic equipment and system”, the entire contents of which are incorporated by reference into this application. Technical Field
[0002] The present application relates to the field of terminal technology, and in particular to an image capturing method, electronic equipment, and system. Background Art
[0003] When using some applications on electronic devices like tablets and laptops, the application may need to use the camera to capture images or videos at any time. For example, when editing a document on a tablet or laptop, the user may need to insert a photo of the surrounding environment. However, due to the large size or limited camera capabilities of electronic devices like tablets and laptops, the flexibility of taking photos is often limited or the quality is poor, making it difficult to easily capture ideal photos.
[0004] Summary of the Invention
[0005] The present application provides an image capture method, electronic device, and system that can provide users with a convenient and comfortable picture or video capture experience.
[0006] In a first aspect, the present application provides an image capture method, which is applied to a first device. The first device displays a first interface of a first application. In response to a user's first operation on the first interface (such as an operation to insert a picture), the first device displays a first option, and the first operation is used to obtain an image (including a picture or a video). In response to the user's selection operation on the first option, the first device sends a first request to the second device indicated by the first option. The first request includes the device information of the first device and the request type. The device information of the first device is used for the remote camera of the second device to distribute the image captured by the system camera of the second device to the first device based on the device information of the first device. The remote camera is an application with the following capabilities: calling the system camera to capture an image and distributing the image captured by the system camera. The request type is used to indicate that the first request calls a remote camera. The first device receives the image captured by the second device and the application identifier. The first device displays the image captured by the second device on the first interface based on the application identifier.
[0007] In summary, with this application, when a first device needs to capture an image, it can request a second device to capture the image. This breaks the limitation of only being able to capture images from local devices (including local cameras or local image libraries). Especially for first devices with poor shooting flexibility, such as tablets and laptops, calling a second device (such as a mobile phone) to capture the image can provide users with a convenient and comfortable image capture experience.
[0008] In one possible design of the first aspect, the method further includes: the first device receiving first information from the second device, the first information indicating that the second device has remote camera capabilities. In response to the first information, the first device records the information that the second device has remote camera capabilities. Accordingly, the first device displays a first option, including: if the first device records the information that the second device has remote camera capabilities, the first device displays the first option.
[0009] The second device can only capture images for other devices (such as the first device) if it has remote camera functionality, such as a remote camera installed and permission to use the remote camera to capture images for other devices. Therefore, before displaying the first option, the first device needs to confirm that the second device has remote camera functionality, so that it can accurately call the device with remote camera capabilities to capture images.
[0010] In a possible design of the first aspect, whether the remote camera is occupied or not can be synchronized in real time between devices with the same account. Accordingly, the above method also includes: the first device receives second information from the second device, and the second information indicates that the remote camera is occupied. In response to the second information, the first device updates the status of the remote camera to an occupied state. And / or, the first device receives third information from the second device, and the third information indicates that the remote camera is not occupied. In response to the third information, the first device updates the status of the remote camera to an unoccupied state. The first device displays the first option, including: if the status of the remote camera is an unoccupied state, the first device displays the first option.
[0011] In this way, the first device can accurately call an unoccupied remote camera to avoid calling conflicts.
[0012] In a possible design manner of the first aspect, the first option is an option for a device within a near field communication range of the first device and / or with the same user account logged in as the first device.
[0013] If the second device is within the near-field communication range of the first device, it indicates that the first device and the second device can transmit call requests, images, and other data via near-field communication. Furthermore, if the first device and the second device are logged into the same user account, it indicates that the first device and the second device can trust each other.
[0014] In this way, call requests, image data, etc. can be transmitted between mutually trusted devices via near-field communication.
[0015] In one possible design of the first aspect, the first device includes a device management service. The first device receiving first information from the second device includes: the device management service receiving the first information synchronized by the second device. The first device recording information that the second device has remote camera capability includes: the device management service recording information that the second device has remote camera capability.
[0016] In another possible design of the first aspect, the first device may further include a communication service. The method further includes: the communication service discovering that the second device is within near-field communication range of the first device and / or that the second device is logged into the same user account as the first device. The communication service updates the second device to the device management service as an online device.
[0017] That is, the device management service of the first device can maintain devices that support the remote camera function and devices with the same account within the near field communication range.
[0018] In another possible design of the first aspect, the first device further includes a connection service, and before the first device displays the first option, the method further includes: the first application sends a query request to the connection service. The connection service forwards the query request to the device management service. In response to the query request, if the device management service includes information that the second device has remote camera capabilities and the second device is an online device, the device management service returns the device information of the second device to the connection service. The connection service returns the device information of the second device to the first application. The first device displays the first option, including: the first application displays the first option corresponding to the second device based on the device information of the second device.
[0019] In this way, the first device can query the device management service to determine available devices that support remote cameras, are within the near field communication range, and have the same user account, and provide options of the available devices to the user for selection.
[0020] In a possible design of the first aspect, the device information of the second device includes the user name of the user account (such as Tom, Jenny), the device model of the second device (such as model A, model B) and / or the device type of the second device (such as mobile phone, tablet), and the first option includes the user name, device model and / or device type.
[0021] In this way, the first option can indicate the corresponding available device. At the same time, the user name, device model, and device type are all information that does not have unique directionality. Multiple devices may have the same user name, device model, and device type, which will not leak too much information about available devices.
[0022] In one possible design of the first aspect, after the communication service discovers that the second device is within near-field communication range of the first device and / or the second device is logged into the same user account as the first device, the method further includes: the communication service assigning a temporary ID to the second device, where the device information of the second device includes the temporary ID. Accordingly, the first device sending a first request to the second device indicated by the first option includes: the first application sending the first request to the second device indicated by the temporary ID.
[0023] In this way, privacy leakage caused by sending fixed identification information such as the MAC address and device serial number of the available device to the target application can be avoided.
[0024] In one possible design of the first aspect, the method further includes: if the second device meets a preset condition, in response to the user selecting the first option, the first device issues a first prompt message indicating that the second device is capturing an image. Satisfaction of the preset condition indicates that the second device can capture an image for the first device. For example, the preset condition includes the system camera being idle and / or the second device being powered on. This provides a clear indication to the user.
[0025] In a possible design of the first aspect, the first device includes a connection service and a communication service. Accordingly, in response to the user's selection operation on the first option, the first device sends a first request to the second device indicated by the first option, including: in response to the user's selection operation on the first option, the first application sends a second request to the connection service, the second request includes the device information of the second device and the request type, and the device information of the second device is used to indicate the device for taking images. In response to the second request, the connection service sends a third request to the communication service, the third request includes the device information of the first device, the device information of the second device, an application identifier, and the request type. In response to the third request, the communication service sends the first request to the second device indicated by the device information of the second device in the third request.
[0026] In this way, the first request can be sent to the second device through the connection service and the communication service.
[0027] In one possible design of the first aspect, the first device includes a communication service and a connection service. Accordingly, the first device receives an image captured by the second device and an application identifier of the first application, including: the communication service receives the image captured by the second device and the application identifier of the first application. The communication service sends the image and application identifier to the connection service. In this way, the image captured by the second device can be received via the communication service and the connection service.
[0028] Furthermore, the first device displays the image captured by the second device on the first interface based on the application identifier, including: sending the image to the first application indicated by the application identifier through the connection service. The first application displays the image. In this way, the first device can accurately return the image to the first application indicated by the application identifier.
[0029] In a second aspect, the present application provides an image capture method, which is applied to a second device. The second device receives a first request, which includes the device information of the first device, the application identifier of the first application, and the request type. The request type is used to indicate that the first request calls a remote camera, which is an application in the second device. In response to the first request, the second device starts the remote camera and records the device information and application identifier of the first device in the remote camera. In response to starting the remote camera, the second device displays a second interface, which is a shooting preview interface of the system camera in the second device. In response to the user's shooting operation, the second device captures an image. The second device sends an image to the first device indicated by the device information of the first device in the remote camera, as well as the application identifier in the remote camera.
[0030] In summary, using this application, the second device can activate the remote camera to call the system camera to capture images, and distribute the images captured by the system camera to the first device, thereby providing the first device with a remote shooting capability.
[0031] In one possible design of the second aspect, the method further includes: the second device issuing a second prompt message, the second prompt message being used to prompt the first device to request that the second device (i.e., the second device) capture an image. The second device activating the remote camera includes: in response to a user confirming the second prompt message, the second device activating the remote camera.
[0032] In this way, the remote camera can be started only after the user confirms, thus avoiding affecting the normal use of the second device.
[0033] In a possible design of the second aspect, the second device includes a communication service and a connection service. Accordingly, the second device receives the first request, including: the communication service receives the first request. And, in response to the first request, the second device starts the remote camera and records the device information of the first device and the application identifier of the first application in the remote camera, including: in response to receiving the first request, the communication service sends a fourth request to the connection service, and the fourth request includes the device information of the first device, the application identifier of the first application and the request type. In response to receiving the fourth request, the connection service starts the remote camera and sends the device information of the first device and the application identifier of the first application to the remote camera. The remote camera records the device information of the first device and the application identifier of the first application.
[0034] In this way, the application identifier of the first application and the device information of the first device can be accurately transmitted to the remote camera through the communication service and the connection service, so that the remote camera can clearly understand the reason for starting up and facilitate subsequent image distribution.
[0035] In one possible design of the second aspect, the second device further includes a system camera. Displaying the second interface on the second device includes: the remote camera invoking the system camera on the second device, and the system camera displaying the second interface. Capturing an image on the second device includes: the system camera capturing the image.
[0036] In a possible design of the second aspect, the second device sends an image to the first device indicated by the device information of the first device recorded in the remote camera, and sends an application identifier of the first application recorded in the remote camera, including: the remote camera sends the image, the device information of the first device, and the application identifier of the first application to the connection service. The connection service sends the image, the device information of the first device, and the application identifier of the first application to the communication service. The communication service sends the image and the application identifier of the first application to the first device indicated by the device information of the first device.
[0037] When the second device transmits an image to the first device, it also sends the application identifier of the first application recorded in the remote camera to the first device through the connection service and the communication service in sequence, so that the first device can clearly know that the application receiving the image is the first application.
[0038] In a possible design manner of the second aspect, before the second device receives the first request, the method further includes: the second device synchronizing first information to the first device, where the first information indicates that the second device has remote camera capability.
[0039] When a second device is equipped with a remote camera and allows the remote camera to be used to capture images for other devices, it can synchronize its remote camera capabilities with the account device, so that the account device is aware of the second device's remote camera capabilities. This allows the account device to access the second device's remote camera capabilities when needed.
[0040] In one possible design of the second aspect, after the second device begins capturing an image and before the second device finishes capturing the image, the method further includes: the second device synchronizing second information to the first device, the second information indicating that the remote camera of the second device is occupied. After the second device finishes capturing the image, the method further includes: the second device synchronizing third information to the first device, the third information indicating that the remote camera of the second device is not occupied.
[0041] In this way, the second device can synchronize the working status of its remote camera (occupied or unoccupied) to the device with the same account in real time, so that the device with the same account can know the working status of the remote camera of the second device and avoid call conflicts.
[0042] In a possible design of the second aspect, the second device includes a device management service, and the above method also includes: the device management service synchronizes information to the first device that the second device has remote camera capability and / or the remote camera of the second device is occupied or unoccupied.
[0043] In a third aspect, the present application provides an image capture method. A first device displays a first interface of a first application. In response to a user's first operation on the first interface, the first device displays a first option, where the first operation is used to capture an image. In response to the user's selection of the first option, the first device sends a first request to a second device indicated by the first option. The first request includes the device information of the first device, the application identifier of the first application, and a request type. The request type indicates that the first request calls a remote camera, which is an application on the second device. The second device receives the first request. In response to the first request, the second device activates the remote camera and records the device information of the first device and the application identifier of the first application in the remote camera. In response to activating the remote camera, the second device displays a second interface, which is the viewfinder interface of the system camera on the second device. In response to the user's capture operation, the second device captures an image. The second device sends the image to the first device indicated by the device information of the first device in the remote camera, as well as the application identifier in the remote camera.
[0044] In summary, with this application, when a first device needs to capture an image, it can request a second device to capture the image. This breaks the limitation of only being able to capture images from local devices (including local cameras or local image libraries). Especially for first devices with poor shooting flexibility, such as tablets and laptops, calling a second device (such as a mobile phone) to capture the image can provide users with a convenient and comfortable image capture experience.
[0045] In a fourth aspect, the present application also provides an electronic device, which is a first device or a second device, and includes: a memory and one or more processors, and the memory is coupled to the processor; wherein computer program code is stored in the memory, and the computer program code includes computer instructions. When the computer instructions are executed by the processor, the electronic device executes the method in the above-mentioned first aspect, second aspect and any possible design method thereof.
[0046] In the fifth aspect, the present application also provides a chip system, which is applied to an electronic device including a processor and a memory. The chip system includes one or more interface circuits and one or more processors. The interface circuit and the processor are interconnected through lines. The interface circuit is used to receive signals from the memory of the electronic device and send signals to the processor. The signals include computer instructions stored in the memory. When the processor executes the computer instructions, the electronic device executes the methods in the above-mentioned first aspect, second aspect and any possible design method thereof.
[0047] In a sixth aspect, the present application also provides a computer-readable storage medium comprising computer instructions, which, when executed on an electronic device, enables the server to execute the methods in the above-mentioned first aspect, second aspect and any possible design thereof.
[0048] In a seventh aspect, the present application provides a computer program product, which, when executed on a computer, enables the computer to execute the method of the first aspect, the second aspect, and any possible design thereof.
[0049] It can be understood that the beneficial effects that can be achieved by the above-mentioned server, electronic device, chip system, computer storage medium, and computer program product can be referred to the beneficial effects in the first aspect, the second aspect and any possible design method thereof, and will not be repeated here. BRIEF DESCRIPTION OF THE DRAWINGS
[0050] FIG1 is one of the interface diagrams of a laptop computer provided in an embodiment of the present application;
[0051] FIG2 is a schematic diagram of the composition of a communication system provided in an embodiment of the present application;
[0052] FIG3 is a hardware structure diagram of an electronic device provided in an embodiment of the present application;
[0053] FIG4A is a software architecture diagram of a first device provided in an embodiment of the present application;
[0054] FIG4B is a software architecture diagram of a second device provided in an embodiment of the present application;
[0055] FIG5 is one of the interactive flow charts of the image capturing method provided in an embodiment of the present application;
[0056] FIG6A is a schematic diagram illustrating the principle of synchronizing remote cameras according to an embodiment of the present application;
[0057] FIG6B is a schematic diagram showing the principle of discovering an online device according to an embodiment of the present application;
[0058] FIG7A is a second interface diagram of a laptop computer provided in an embodiment of the present application;
[0059] FIG7B is a third interface diagram of a laptop computer provided in an embodiment of the present application;
[0060] FIG7C is a fourth interface diagram of a laptop computer provided in an embodiment of the present application;
[0061] FIG8A is one of the interface diagrams of a mobile phone provided in an embodiment of the present application;
[0062] FIG8B is a second interface diagram of a mobile phone provided in an embodiment of the present application;
[0063] FIG8C is a third interface diagram of a mobile phone provided in an embodiment of the present application;
[0064] FIG9 is a fifth diagram of the interface of the laptop computer provided in an embodiment of the present application;
[0065] FIG10 is a schematic diagram of multiple devices successively calling a remote camera of the same device according to an embodiment of the present application;
[0066] FIG11 is a second interactive flow chart of the image capturing method provided in an embodiment of the present application;
[0067] FIG12 is a third interactive flow chart of the image capturing method provided in an embodiment of the present application;
[0068] FIG13 is a fourth diagram of the interface of the mobile phone provided in an embodiment of the present application;
[0069] FIG14 is a structural diagram of a chip system provided in an embodiment of the present application. DETAILED DESCRIPTION
[0070] The technical solutions in the embodiments of the present application are described below in conjunction with the drawings in the embodiments of the present application. Among them, in the description of the embodiments of the present application, the terms used in the following embodiments are only for the purpose of describing specific embodiments, and are not intended to be used as limitations on the present application. As used in the specification and claims of the present application, the singular expressions "a", "said", "above", "the" and "this" are intended to also include expressions such as "one or more", unless there is a clear contrary indication in the context. It should also be understood that in the following embodiments of the present application, "at least one", "one or more" refer to one or more (including two). The term "and / or" is used to describe the association relationship of associated objects, indicating that three relationships can exist; for example, A and / or B can represent: the existence of A alone, the existence of A and B at the same time, and the existence of B alone, where A and B can be singular or plural. The character " / " generally indicates that the associated objects before and after are in an "or" relationship.
[0071] References to "one embodiment" or "some embodiments" etc. described in this specification mean that the specific features, structures or characteristics described in conjunction with the embodiment are included in one or more embodiments of the present application. Therefore, the statements "in one embodiment", "in some embodiments", "in some other embodiments", "in some other embodiments", etc. appearing in different places in this specification do not necessarily refer to the same embodiment, but mean "one or more but not all embodiments", unless otherwise specifically emphasized in another way. The terms "including", "comprising", "having" and their variations all mean "including but not limited to", unless otherwise specifically emphasized in another way. The term "connected" includes direct and indirect connections, unless otherwise stated. "First" and "second" are used for descriptive purposes only and are not to be understood as indicating or implying relative importance or implicitly indicating the number of technical features indicated.
[0072] In the embodiments of this application, words such as "exemplarily" or "for example" are used to indicate examples, illustrations, or explanations. Any embodiment or design described as "exemplarily" or "for example" in the embodiments of this application should not be interpreted as being preferred or advantageous over other embodiments or designs. Rather, the use of words such as "exemplarily" or "for example" is intended to present the relevant concepts in a concrete manner.
[0073] The image capture method provided in the embodiments of the present application can be applied to scenarios where images / videos are captured when running certain applications on electronic devices such as tablets and laptops. It should be understood that a video is typically composed of multiple image frames, each of which is an image. Therefore, for ease of explanation, images / videos will be referred to as images below.
[0074] Taking image acquisition as an example, the above-mentioned applications can be any applications with functions such as inserting images, editing images, sending images, scanning images, etc. During the operation of these applications, images can be acquired and processed such as inserted, edited, sent, and scanned.
[0075] For example, document editing applications such as Word Processing System (WPS), office, and memo all have the function of inserting pictures, so some of the above applications may be document editing applications such as WPS, office, and memo.
[0076] As another example, a shopping application has a function of scanning product images, and a banking application has a function of scanning ID images, so the above-mentioned applications may be shopping applications and banking applications.
[0077] As another example, a video editing application and a picture processing application both have the function of editing pictures, so some of the above applications may be video editing applications and picture processing applications.
[0078] As another example, if a chat application has the function of sending pictures, then some of the above applications may be chat applications.
[0079] In the following, for the sake of convenience, the above applications are collectively referred to as target applications (also referred to as first applications).
[0080] The following uses a document editing application as an example to illustrate the application scenario of this application:
[0081] Referring to Figure 1 , while running a document editing application, a laptop computer may display interface 101 as shown in Figure 1 . Interface 101 includes the edited document content, such as "Travel Diary...", and also includes a control 102 for inserting an image. The laptop computer may receive a user click on control 102. In response to the user click on control 102, the laptop computer retrieves the image and inserts it into the document content. The image capture method provided in embodiments of the present application can be applied to scenarios where a user clicks control 102 to retrieve an image.
[0082] In some conventional technologies, in the aforementioned image acquisition scenario, the electronic device can only access locally stored images. For example, in response to a user clicking control 102 in interface 101 shown in FIG1 , the laptop computer may display interface 103 shown in FIG1 , which includes dialog box 104. In dialog box 104 , the user can select an image from the locally stored images on the laptop computer and insert it into the document being edited.
[0083] However, in some cases, the electronic device currently running the target application (such as the laptop in FIG1 ) does not store the pictures required by the user, and thus cannot meet the user's need to obtain pictures.
[0084] In other conventional technologies, electronic devices can support directly capturing images by invoking a local camera, and then retrieve the images captured by the local camera. For example, in response to a user clicking control 102 in interface 101 shown in FIG1 , a laptop computer can display interface 103 shown in FIG1 , which includes dialog box 104. In this case, the user can first capture an image using the laptop computer's camera, then search for the corresponding image in dialog box 104 and insert it into the document being edited.
[0085] However, in some cases, the electronic device currently running the target application may not be able to easily capture suitable images. A typical reason for this is that electronic devices such as tablets and laptops are large or have limited camera capabilities, which can result in limited flexibility or poor quality, making it difficult to easily capture ideal images.
[0086] It can be seen that if, in the above-mentioned image acquisition scenario, the electronic device can only use a local camera to capture images, or obtain images that have been stored locally, it is very likely that the image requirements of the target application cannot be met.
[0087] Based on this, an embodiment of the present application provides an image capture method that can be applied to the above-mentioned image acquisition scenario. Among them, when an electronic device acquires an image, other devices can be called to capture the image. Then, the other devices return the captured image to the electronic device. In this way, the method can not only break the limitation of only being able to obtain images locally (including local cameras or local galleries). Especially for electronic devices with poor shooting flexibility such as tablets and laptops, calling other electronic devices to shoot can be used, which can provide users with a convenient and comfortable image capture experience.
[0088] An embodiment of the present application further provides a communication system. Referring to FIG2 , the communication system includes a first device (a laptop computer 210 as shown in FIG2 ) and at least one second device (a mobile phone 220 and a tablet computer 230 as shown in FIG2 ).
[0089] The first device has a target application installed, and while running the target application, it may need to capture images. The second device includes an application (referred to as a remote camera) that implements remote capture and image distribution functions. The remote camera can receive the capture request from the first device and distribute images captured by the second device's system camera to the first device.
[0090] The first device and the second device can be communicatively connected. The communication connection includes an Internet connection. Through the Internet connection, the second device can synchronize (i.e., send) its support for remote camera functions to the first device, so that the first device can discover the remote camera of the second device and call it. In addition, the communication connection also includes a near-field communication connection. Through the near-field communication connection, the first device can send a call request to the second device point-to-point, and the second device can transmit the captured image to the first device. Among them, near-field communication includes Bluetooth, Wireless Fidelity (WIFI), Near Field Communication (NFC), etc.
[0091] It should be noted that, in the embodiments of the present application, compared to an internet connection, the transmission of call requests and image data through near-field communication can, on the one hand, transmit information in a point-to-point manner, which is more conducive to ensuring information security. On the other hand, if a network-independent near-field communication technology such as Bluetooth or NFC is used, the information transmission rate will not be affected by network factors, and information can be transmitted more stably and quickly. Moreover, even if the first device and / or the second device are not connected to the network, remote camera calls and image data transmission can be achieved.
[0092] It should be noted that the first device and the second device may not establish an Internet connection and a near field communication connection at the same time. For example, in the process of calling a remote camera, only a near field communication connection may be established without establishing an Internet connection.
[0093] In some examples, the first device and the second device may have the same system-level user account logged in, such as the same Account, same Accounts, etc. It should be understood that devices with the same account (such as the first device and the second device) logged in with the same user account can be added to the same trust ring through identity authentication. This allows information exchange to be carried out only within the trust ring, such as synchronizing remote camera capabilities, transmitting call requests, and transmitting images, ensuring device security.
[0094] The above-mentioned first device and second device are divided only based on the different functional roles played by the electronic device in the scenario of obtaining pictures. Among them, the first device is the image demanding device, and the second device is the image providing device. It should be understood that the same electronic device can be used as the first device in some scenarios and as the second device in other scenarios. For example, if the mobile phone 220 or tablet 230 in Figure 2 obtains images from other devices, it is the image demanding device, and it can also serve as the first device. If the laptop computer 210 in Figure 2 has remote camera capabilities, it can also serve as an image providing device, that is, as the second device.
[0095] Exemplarily, the first device / second device may be a handheld device, an in-vehicle device, etc., such as a mobile phone, a tablet, a laptop computer, a PDA, a mobile internet device (MID), a virtual reality (VR) device, an augmented reality (AR) device, a wireless device in industrial control, a wireless device in self-driving, a wireless device in remote medical surgery, a wireless device in a smart grid, a wireless device in transportation safety, a wireless device in a smart city, a wireless device in a smart home, a cellular phone, a cordless phone, a session initiation protocol (SIP) phone, a wireless local loop (WLL) station, a personal digital assistant (PDA), a handheld device with wireless communication function, a personal computer (PC), a tablet computer, a laptop computer, a PDA, ... Computer, PC), computing device or other processing device connected to a wireless modem, vehicle-mounted device, wearable device, terminal device in a 5G network or terminal device in a future evolved public land mobile communication network (public land mobile network, PLMN), etc., the embodiments of the present application are not limited to this.
[0096] The first device / second device may also be a wearable device, such as a smartwatch or smart glasses, or a wearable device that focuses on a specific application function and can be used in conjunction with other devices such as a smartphone, such as various smart bracelets and smart jewelry for vital sign monitoring.
[0097] The first device / second device mentioned above may also be a terminal device in an Internet of Things (IoT) system.
[0098] Referring to FIG3 , which is a hardware structure diagram of an electronic device (such as a first device / second device) provided in an embodiment of the present application, as shown in FIG3 , taking the electronic device as a mobile phone as an example, it may include: a processor 310, an external memory interface 320, an internal memory 321, a universal serial bus (USB) interface 330, a charging management module 340, a power management module 341, a battery 342, an antenna 1, an antenna 2, a mobile communication module 350, a wireless communication module 360, an audio module 370, a speaker 370A, a receiver 370B, a microphone 370C, an earphone interface 370D, a sensor module 380, a button 390, a motor 391, an indicator 392, a camera 393, a display 394, and a subscriber identification module (SIM) card interface 395, etc.
[0099] It should be understood that the structure illustrated in this embodiment does not constitute a specific limitation on the electronic device. In other embodiments, the electronic device may include more or fewer components than shown, or may combine or separate certain components, or have different component arrangements. The illustrated components may be implemented in hardware, software, or a combination of software and hardware.
[0100] The processor 310 may include one or more processing units. For example, the processor 310 may include an application processor (AP), a modem processor, a graphics processing unit (GPU), an image signal processor (ISP), a controller, a memory, a video codec, a digital signal processor (DSP), a baseband processor, and / or a neural-network processing unit (NPU). The different processing units may be independent devices or integrated into one or more processors.
[0101] The controller can be the nerve center and command center of the electronic device. The controller can generate operation control signals based on the instruction opcode and timing signals to complete the control of instruction fetching and execution.
[0102] The charging management module 340 is used to receive charging input from a charger. The charger can be a wireless charger or a wired charger. While charging the battery 342, the charging management module 340 can also power the electronic device through the power management module 341.
[0103] The power management module 341 is used to connect the battery 342, the charging management module 340, and the processor 310. The power management module 341 receives input from the battery 342 and / or the charging management module 340 and provides power to the processor 310, the internal memory 321, the external memory, the display 394, the camera 393, and the wireless communication module 360. The power management module 341 can also be used to monitor parameters such as battery capacity, battery cycle count, and battery health status (leakage, impedance), etc.
[0104] The wireless communication function of the electronic device can be implemented through antenna 1, antenna 2, mobile communication module 350, wireless communication module 360, modem processor and baseband processor.
[0105] The electronic device implements display functionality through a GPU, display screen 394, and an application processor. A GPU is a microprocessor for image processing that connects display screen 394 and the application processor. The GPU is used to perform mathematical and geometric calculations for graphics rendering. Processor 310 may include one or more GPUs that execute program instructions to generate or modify display information.
[0106] The electronic device can realize the shooting function through the ISP, camera 393, video codec, GPU, display 394 and application processor.
[0107] In some embodiments, when the electronic device acts as the second device, it can call the camera 393 to capture an image based on a request from the first device and return the image to the first device.
[0108] External memory interface 320 can be used to connect an external memory card, such as a Micro SD card, to expand the storage capacity of the electronic device. The external memory card communicates with processor 310 via external memory interface 320 to implement data storage functions. For example, files such as music and videos can be stored on the external memory card.
[0109] The internal memory 321 can be used to store computer executable program codes, which include instructions. The processor 310 executes various functional applications and data processing of the electronic device by running the instructions stored in the internal memory 321. The internal memory 321 may include a program storage area and a data storage area. Among them, the program storage area can store an operating system, an application required for at least one function (such as a sound playback function, an image playback function, etc.), etc. The data storage area can store data created during the use of the electronic device (such as audio data, a phone book, etc.), etc. In addition, the internal memory 321 may include a high-speed random access memory, and may also include a non-volatile memory, such as at least one disk storage device, a flash memory device, a universal flash storage (UFS), etc.
[0110] The electronic device can implement audio functions such as music playback and recording through the audio module 370, the speaker 370A, the receiver 370B, the microphone 370C, the headphone jack 370D, and the application processor.
[0111] Keys 390 include a power button, a volume button, and the like. Keys 390 may be mechanical keys or touch-sensitive keys. The electronic device may receive key inputs and generate key signal inputs related to user settings and function control of the electronic device.
[0112] Motor 391 can generate vibration prompts. Motor 391 can be used for incoming call vibration prompts, and can also be used for touch vibration feedback. For example, touch operations acting on different applications (such as taking pictures, audio playback, etc.) can correspond to different vibration feedback effects. For touch operations acting on different areas of the display screen 394, motor 391 can also correspond to different vibration feedback effects. Different application scenarios (for example: time reminders, receiving messages, alarm clocks, games, etc.) can also correspond to different vibration feedback effects. The touch vibration feedback effect can also support customization.
[0113] Indicator 392 can be an indicator light, which can be used to indicate charging status, power changes, messages, missed calls, notifications, etc.
[0114] SIM card interface 395 is used to connect a SIM card. A SIM card can be connected to and disconnected from the electronic device by inserting or removing it from SIM card interface 395. An electronic device may support one or N SIM card interfaces, where N is a positive integer greater than 1. SIM card interface 395 can support Nano SIM cards, Micro SIM cards, and SIM cards.
[0115] In the embodiment of the present application, the software system of the electronic device (such as the first device / the second device) can adopt a layered architecture, an event-driven architecture, a micro-kernel architecture, a micro-service architecture, or a cloud architecture. Taking the system as an example, the software structures of the first device and the second device are exemplified.
[0116] See Figure 4A, which is a software architecture diagram of the first device provided in an embodiment of the present application. See Figure 4B, which is a software architecture diagram of the second device provided in an embodiment of the present application. As shown in Figures 4A and 4B, the layered architecture divides the software into several layers, each with a clear role and division of labor. Data is transmitted and communicated between layers through software interfaces. In some embodiments, The system is divided into five layers, from top to bottom: application layer, application framework layer, Runtime( runtime) and system libraries, hardware abstraction layer (HAL), and kernel layer.
[0117] The application layer can include a series of application packages, which can include applications such as memo, calculator, call, and browser.
[0118] In an embodiment of the present application, the application layer of the first device also includes target applications, such as document editing applications such as WPS, office, memo, shopping applications, banking applications, video editing applications, image processing applications, social applications, etc.
[0119] The second device's application layer also includes a remote camera. This camera receives calls from the first device, calls the second device's system camera to capture images, and then transmits them back to the first device. In other words, compared to the system camera, the remote camera supports orchestrated transmission by the caller, allowing the caller to decide to whom the image is transmitted.
[0120] The application framework layer provides an application programming interface (API) and programming framework for applications in the application layer. The application framework layer includes some predefined functions.
[0121] The application framework layer may include a notification manager, a window manager, a resource manager, a content provider, and a view system.
[0122] The notification manager enables applications to display notifications in the status bar. These messages can be displayed briefly and then disappear automatically, requiring no user interaction. For example, the notification manager is used to announce download completions and message reminders. The notification manager can also display notifications in the top status bar as icons or scrolling text, such as notifications from background applications. It can also display notifications in the form of dialog windows. Examples include displaying text messages in the status bar, emitting beeps, vibrating the terminal, and flashing indicator lights. The window manager manages windowed applications. It can determine the display size, determine whether a status bar is present, lock the screen, touch the screen, drag the screen, and take screenshots. The resource manager provides applications with various resources, such as localized strings, icons, images, layout files, and video files. Content providers enable data sharing between applications, allowing one application to access data from another while ensuring the security of the accessed data. The view system is responsible for drawing the application interface and handling events.
[0123] Furthermore, the application framework layer may also include connection services, application authentication services, communication services, and device management services (Profile).
[0124] The connection service provides the target application with near-field device discovery and data and file transmission capabilities. For example, the connection service can be responsible for accessing the target application. Furthermore, after the target application accesses the connection service, the connection service can also be responsible for querying devices that can be called and used for shooting (hereinafter referred to as available devices) for the target application, and transmitting call requests, images, and other data across devices.
[0125] The application authentication service can be responsible for verifying the legitimacy of applications, such as verifying their identity and permissions. For example, the application authentication module can verify the legitimacy of the target application requesting access to the connection service. Only if the target application is confirmed to be legitimate will it be allowed to access the connection service. This prevents illegal applications from being able to access remote cameras for filming.
[0126] Communication services such as The Magic Link smart interconnection service can be used to achieve data transmission across devices, security authentication and account authentication of devices with the same account, self-discovery and self-organizing networking of devices, etc. For example, through the communication service, a first device can discover a second device in the vicinity and verify the identity of the second device. After verifying that the second device is a trusted device (i.e., a device logged in with the same user account), call requests and images can be transmitted between the first device and the second device.
[0127] The device management service can be viewed as a database for synchronizing data between devices. This database can record the capabilities of devices with the same account, the status of capability usage, information about near-field devices, and so on. For example, the device management service of a first device can record information such as the remote camera capability of a second device, the status of the remote camera capability usage, and devices within near-field communication range.
[0128] The runtime includes the core library and the virtual machine. runtime is responsible for System scheduling and management.
[0129] The core library consists of two parts: one is the function called by Java language, and the other is the core library of Android.
[0130] The application layer and application framework layer run in a virtual machine. The virtual machine executes Java files in the application layer and application framework layer as binary files. The virtual machine manages object lifecycles, stack management, thread management, security and exception management, and garbage collection.
[0131] The system library can include multiple functional modules, such as media libraries, function libraries, and graphics processing libraries (such as OpenGL ES).
[0132] The media library supports playback and recording of a variety of common audio and video formats, as well as static image files. The media library can support a variety of audio and video encoding formats, such as: MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, etc.
[0133] The function library provides developers with API interfaces for multiple services, making it easy for developers to quickly integrate and implement various functions.
[0134] The graphics processing library is used to implement graphics drawing, image rendering, compositing, and layer processing.
[0135] The Hardware Abstraction Layer (HAL) is an abstract structure between the kernel layer and the Android runtime. It encapsulates hardware drivers and provides a unified interface for upper-layer applications to call. The HAL can include Bluetooth modules, Wi-Fi modules, and other components. For example, these modules shield the kernel layer's Bluetooth and Wi-Fi drivers from specific hardware implementation details. Upper-layer applications can implement Bluetooth and Wi-Fi functionality by calling these interfaces without needing to know the kernel layer's hardware driver implementation details.
[0136] The kernel layer is the layer between hardware and software. The kernel layer may include display drivers, camera drivers, audio drivers, Bluetooth drivers, WiFi drivers, Universal Serial Bus (USB) drivers, CPU drivers, etc.
[0137] In some embodiments, communication services (such as Magic Link) can connect across devices through relevant near-field communication modules such as Bluetooth drivers and WiFi drivers, thereby achieving self-discovery and self-organizing networking of devices.
[0138] The embodiment of the present application will be described here with reference to the software architecture of Figures 4A and 4B to implement the image capture method: After the target application of the first device accesses the connection service, if the target application needs to obtain an image, the target application can query the available devices through the connection service and device management service of the first device in sequence, and the available devices include the second device. Then, the target application sends a call request to the second device in the available devices through the connection service and communication service of the first device in sequence, requesting to call the remote camera of the second device. After passing through the communication service and connection service of the second device in sequence, the connection service of the second device receives the call request. The connection service of the second device activates the remote camera of the second device to call the system camera of the second device to capture the image. After the system camera of the second device captures the image, it can be transmitted to the target application of the first device through the remote camera, connection service, communication service of the second device, and the communication service and connection service of the first device. In this way, the target application of the first device obtains the image captured by the second device, breaking the limitation of only being able to obtain images from local (including local camera or local gallery) and more flexibly meeting the image needs of electronic devices.
[0139] At this point, it should be noted that the above Figures 4A and 4B are based on Android TM The system is used as an example to illustrate the software architecture of the first device and the second device. In practice, the operating system of the first device and / or the second device may also be Windows TM System. In Windows TM In the operating system, the application layer (such as the PC Manager app) can also integrate the connection services, application authentication services, communication services, and device management services from the application framework layer, as well as the Bluetooth and Wi-Fi module functions from the hardware abstraction layer. The application layer completes near-field communication with the peer device by calling the Bluetooth or Wi-Fi driver, enabling data transmission between devices.
[0140] The image capture method provided in the embodiment of the present application can be implemented in a communication system composed of a first device and a second device having the above-mentioned hardware and software structure. The image capture method provided in the embodiment of the present application will be further described in detail below with reference to the accompanying drawings, taking the first device being a laptop computer 210 and the second device being a mobile phone 220 as an example.
[0141] 5 , the image capturing method provided in the embodiment of the present application includes the following steps:
[0142] S501: The laptop computer 210 discovers (the mobile phone 220 is) devices that support remote cameras and online devices.
[0143] The laptop computer 210 can determine an available device that supports a remote camera and can transmit images using near field communication, and then call the remote camera of the available device to capture an image. Thus, the laptop computer 210 can discover devices that support remote cameras and online devices within the near field communication range.
[0144] In some embodiments, the process of the laptop 210 discovering a device that supports a remote camera may include:
[0145] For any device, if the same user account is logged in to the device and the laptop 210, and the device supports remote cameras, the device can synchronize its remote camera capabilities to the laptop 210 via the Internet. Accordingly, the laptop 210 can record the device as a device that supports remote cameras.
[0146] For example, referring to FIG6A , the user accounts logged in on the laptop 210, the mobile phone 220 and the tablet 230 are all Account a belongs to the same account device, and both the mobile phone 220 and the tablet 230 support remote cameras. Then, the mobile phone 220 and the tablet 230 can report the information that they have remote camera capabilities to the cloud via the Internet. The cloud can send the information that the mobile phone 220 and the tablet 230 have remote camera capabilities to all devices with the same account, such as sending the information that the mobile phone 220 has remote camera capabilities to the laptop 210 and the tablet 230, and sending the information that the tablet 230 has remote camera capabilities to the laptop 210 and the mobile phone 220. In this way, the laptop 210 can obtain the information that the mobile phone 220 and the tablet 230 have remote camera capabilities, and can record the following information: "Tablet 230, supports remote camera; mobile phone 220, supports remote camera." For example, the laptop 210 can record "Tablet 230, supports remote camera; mobile phone 220, supports remote camera" in the form of an array or matrix, etc., which is not specifically limited in the embodiments of the present application.
[0147] Furthermore, the process of the laptop computer 210 discovering online devices may include:
[0148] For any device, if the laptop 210 detects that the device is within the near-field communication range of the laptop 210 and verifies that the user account logged into the device is the same as the user account logged into the laptop 210, the laptop 210 may mark the device as an online device. For example, if both the laptop 210 and the device have Bluetooth turned on and the laptop 210 has scanned the device via Bluetooth, or if the device and the laptop 210 are connected to the same Wi-Fi, then it can be determined that the device is within the near-field communication range of the laptop 210. On this basis, the laptop 210 and the device exchange identity information through near-field communication to verify that both are logged into the same user account, and then it can be determined that the device is an online device.
[0149] Taking Bluetooth communication as an example, see Figure 6B. The laptop computer 210 scans the mobile phone 220, tablet computer 230 and mobile phone 610 via Bluetooth, and the laptop computer 210, mobile phone 220, tablet computer 230 and mobile phone 610 are all logged in with user account a. The laptop computer 210 can then mark the mobile phone 220, tablet computer 230 and mobile phone 610 as online devices.
[0150] After S501, the laptop computer 210 discovers the devices and online devices that support remote cameras. In response to the user's operation of obtaining a picture (such as clicking "Picture" 702 in the interface 701 shown in FIG7A), the laptop computer 210 can determine the online devices that support remote cameras as available devices for capturing images. For example, in FIG6A, the devices that support remote cameras are the mobile phone 220 and the tablet 230, and in FIG6B, the online devices are the mobile phone 220, the tablet 230, and the mobile phone 610. In this case, the laptop computer 210 can determine the mobile phone 220 and the tablet 230 as available devices for capturing images.
[0151] It should be noted that the above S501 is continuous. After booting up, the laptop computer 210 will continuously discover devices that support remote cameras and online devices. For example, if a new device logs in to the same user account as the laptop computer 210 and supports remote cameras, the new device will be discovered by the laptop computer 210 as a device that supports remote cameras. For another example, if a device that has been discovered to support remote cameras no longer provides remote camera capabilities, the laptop computer 210 will remove the device from the devices that support remote cameras. For another example, if a new device enters the near-field communication range of the laptop computer 210 and logs in to the same user account as the laptop computer 210, the new device will be discovered by the laptop computer 210 as an online device. For another example, if a device that has been discovered to be an online device exceeds the near-field communication range of the laptop computer 210 or switches the logged-in user account, the laptop computer 210 will remove the device from the online devices.
[0152] S502 : The notebook computer 210 receives an image acquisition operation (also referred to as a first operation).
[0153] In some embodiments, the target application's application interface (also referred to as the first interface) provides a capture control for capturing an image. The capture operation may be a user-preset operation on the capture control, such as a click, a long press, or the like.
[0154] Exemplarily, referring to FIG. 7A , the acquisition control is “Picture” 702 in the interface 701 shown in FIG. 7A , and the acquisition operation may be a user clicking operation on “Picture” 702 in the interface 701 .
[0155] As another example, referring to FIG7B , the acquisition control includes “Picture” 702 in the interface 701 shown in FIG7B , and the acquisition operation includes a user clicking on “Picture” 702 in the interface 701 . In response to the user clicking on “Picture” 702 in the interface 701 , the laptop computer 210 may display the interface 706 shown in FIG7B , which includes two options: “Local Gallery” and “Remote Camera” 707 . “Local Gallery” can be used to trigger the acquisition of images from the local gallery of the laptop computer 210 . “Remote Camera” 707 can be used to trigger the call of a remote camera of another device (such as the mobile phone 220 ) to capture an image. In this example, the acquisition control also includes “Remote Camera” 707 in the interface 706 shown in FIG7B , and the acquisition operation also includes a user clicking on “Remote Camera” 707 in the interface 706 . That is, the acquisition operation includes multiple operations by the user.
[0156] Of course, the acquisition operation is not limited to this. In other embodiments, the acquisition operation can also be a preset gesture of the user on the application interface of the target application, such as a sliding, long press, etc. Alternatively, the acquisition operation can also be an operation in which the user inputs a preset voice, such as inputting the voice of "insert picture".
[0157] S503 : In response to the acquisition operation, the notebook computer 210 displays options of available devices, where the available devices are online devices that support remote cameras.
[0158] If there are multiple available devices, multiple options corresponding to the multiple available devices may be displayed, and the option of each available device is used to trigger the remote camera of the corresponding available device to capture an image.
[0159] In addition, the options for available devices include at least one of the user name of the user account logged in to the available device (such as Tom, Jenny), the device model of the available device (such as model A, model B, etc.), and the device type (such as mobile phone, tablet, etc.), which is used to indicate the available devices corresponding to each option.
[0160] Taking the acquisition operation as an example, in which the user clicks on "Picture" 702 in interface 701 shown in FIG7A , laptop computer 210 can display interface 703 shown in FIG7A in response to the user's click on "Picture" 702 in interface 701 shown in FIG7A . Compared to interface 103, interface 703 not only includes an option to acquire images from the local gallery (i.e., "Local Gallery" in interface 703), but also includes options for available devices, such as "Tom's Model A Phone's Camera" 704 and "Tom's Model B Tablet's Camera" 705. "Tom" is the user name of the user account, "Model A" and "Model B" are device models, and "Phone" and "Tablet" are device types. "Tom's Model A Phone's Camera" can be used to trigger the remote camera of Tom's Model A phone (e.g., phone 220) to capture an image, while "Tom's Model B Tablet's Camera" can be used to trigger the remote camera of Tom's Model B tablet (e.g., tablet 230) to capture an image.
[0161] Taking the example of a user clicking "Picture" 702 in interface 701 shown in FIG7B and a user clicking "Remote Camera" 707 in interface 706 shown in FIG7B , laptop computer 210 may display interface 708 shown in FIG7B in response to the user clicking "Remote Camera" 707 in interface 706 shown in FIG7B . Similar to interface 703 , interface 708 also includes options for available devices, such as "Camera of Tom's Model A Phone" 704 and "Camera of Tom's Model B Tablet" 705.
[0162] S504 : The notebook computer 210 receives the user's selection operation of the mobile phone 220 option among the available devices.
[0163] Among them, the option of mobile phone 220 can also be called the first option. The selection operation can be a click operation, a long press operation, a sliding operation, etc. The following mainly uses the click operation as an example to illustrate.
[0164] Taking the option of the mobile phone 220 as "Tom's Model A Mobile Phone Camera" 704 in the interface 703 shown in Figure 7A as an example, the selection operation of the option of the mobile phone 220 can be a click operation on "Tom's Model A Mobile Phone Camera" 704 in the interface 703.
[0165] It should be noted that, in the aforementioned S503 and S504 , the user manually selects the mobile phone 220 . In practice, the laptop computer 210 may automatically select the mobile phone 220 in response to the acquisition operation.
[0166] For example, laptop 210 can automatically select mobile phone 220 based on the priority of available devices. For example, if the priority, from highest to lowest, is mobile phone, tablet, and laptop based on shooting flexibility, then if available devices include mobile phone 220 and tablet 230, laptop 210 can automatically select mobile phone 220 to call the remote camera. For another example, if a device has been called more times, its priority is higher, while if it has been called less times, its priority is lower. If available devices include mobile phone 220 and tablet 230, and mobile phone 220 has been called more times than tablet 230, laptop 210 can automatically select mobile phone 220 to call the remote camera.
[0167] As another example, laptop computer 210 may record information about the selected available device each time it selects an available device, and then automatically select the previously selected available device based on the recorded available device information in response to the acquisition operation. In some scenarios, the available devices determined by laptop computer 210 in response to the acquisition operation may not include the previously selected available device. If the previously selected available device is not included in the available devices, laptop computer 210 may automatically select a device based on priority, or the user may manually select a device. This ensures that an available device is selected.
[0168] S505 : In response to the selection operation, the notebook computer 210 sends a remote camera call request to the mobile phone 220 .
[0169] The calling request (also referred to as the first request) is used to request to call the remote camera.
[0170] For example, in response to the user's selection operation of "Tom's Model A mobile phone camera" 704 in the interface 703 shown in Figure 7A, the laptop computer can send a remote camera call request to the mobile phone 220 to request to call the remote camera of the mobile phone 220 to achieve shooting.
[0171] Among them, the call request includes the capability information of the remote camera (the capability information of the remote camera can indicate the capability called by the call request, that is, the call type of this call, so the capability information of the remote camera can also be called the request type), the device information of the laptop computer 210, and the application identifier of the target application. The capability information of the remote camera, such as the identifiers "remote camera", "remote camera", etc., is used to indicate that the capability called is the capability of the remote camera. The device information of the laptop computer 210, such as the Media Access Control Address (MAC), the device serial number, etc., can uniquely indicate the information of the laptop computer 210, and is used to indicate that the device requesting the call is the laptop computer 210; and the application identifier of the target application is used to indicate that the application requesting the call is the target application. The above-mentioned device information and application identifier are mainly used by the mobile phone 220 to determine the receiving object of the image after taking the image, that is, the receiving object is the target application in the laptop computer 210.
[0172] In some embodiments, if the mobile phone 220 meets the preset conditions for capturing an image, in response to the selection operation, the laptop computer 210 may also issue a prompt (also referred to as a first prompt message) indicating that the mobile phone 220 is capturing an image. If the preset conditions are met, it indicates that the mobile phone 220 is capable of capturing an image. In one specific implementation, the preset conditions include: the second device is powered on, the system camera of the mobile phone 220 is in an idle state, etc. The idle state means that the system camera is not running in the foreground, for example, the mobile phone 220 is not currently displaying the capture viewfinder interface.
[0173] For example, if the system camera of mobile phone 220 is idle and powered on, then in response to a user selecting "Tom's Model A Phone Camera" 704 in interface 703 shown in FIG7A or interface 708 shown in FIG7B , laptop computer 210 may display interface 709 shown in FIG7C , which includes a prompt "Tom's Model A Phone Camera Shooting" 710, indicating that mobile phone 220 is shooting. This prompt may automatically disappear after displaying for a predetermined duration. Alternatively, after displaying the prompt, laptop computer 210 will cancel the prompt only after a user cancels the prompt. For example, the cancel operation may be a user clicking the "Cancel" button in interface 706. If no cancel operation is received, laptop computer 210 will continue to display the prompt.
[0174] Conversely, if the mobile phone 220 does not meet the preset conditions for capturing an image, such as if the mobile phone 220 is displaying the capture view interface or is powered off, the laptop computer 210 may also issue a prompt indicating that the mobile phone 220 cannot capture the image. In this case, in response to a user's preset operation (such as returning or closing the prompt), the laptop computer 210 may continue to display the options for available devices. In this way, the user can reselect an available device and invoke it.
[0175] It should be understood that in response to the selection operation, the laptop computer 210 can send a remote camera call request to the mobile phone 220, that is, the laptop computer 210 can interact with the mobile phone 220. Then, the laptop computer 210 can obtain information about whether the system camera of the mobile phone 220 is in an idle state and whether the mobile phone 220 is in a powered-on state by interacting with the mobile phone 220, so as to determine whether the mobile phone 220 meets the preset conditions for capturing an image.
[0176] S506 : In response to the calling request, the mobile phone 220 starts the remote camera to call the system camera to capture an image.
[0177] After mobile phone 220 activates the remote camera, it can call the system camera to capture an image. For example, upon receiving the call request, mobile phone 220 may display interface 801 shown in FIG8A . Interface 801 is the system camera's capture and framing interface (also referred to as the second interface). In response to a user clicking capture button 802 in interface 801, mobile phone 220 can capture a picture.
[0178] Furthermore, when the mobile phone 220 starts the remote camera, it will also record the device information in the call request in the remote camera, which is used to instruct the laptop computer 210 to call the remote camera so that the remote camera can clearly know the recipient of the image.
[0179] It should be understood that the system camera only has the capability to capture images, and does not have the service function of remote distribution. In the embodiment of the present application, a remote camera is deployed on top of the system camera. The remote camera can call the system camera to capture images. Furthermore, the remote camera can also perform remote distribution based on the device information in the call request. This enables the distribution of images captured by the system camera to laptop computer 210.
[0180] In some scenarios, when the mobile phone 220 receives the call request, it may be in use, such as using the mobile phone 220 to make a call, play games, etc. At this time, if the remote camera is directly called to further call the system camera to take pictures, the use of the mobile phone 220 may be affected.
[0181] Based on this, in some embodiments, the mobile phone 220 can send a prompt (also called a second prompt message) to the laptop computer 210 to call the remote camera in response to the call request, and only start the remote camera after receiving a confirmation event to confirm the start of the remote camera. In this way, the use of the mobile phone 220 can be avoided.
[0182] For example, in response to the call request, mobile phone 220 may display interface 803 shown in FIG8B . Interface 803 includes a prompt "Laptop 210 wants to turn on the remote camera. Do you want to turn it on now?" and also includes two options: "Yes" and "No." Mobile phone 220 will only activate the remote camera in response to the user selecting the "Yes" option in interface 803. In other words, the confirmation event includes the user selecting the "Yes" option in interface 803. For example, mobile phone 220 will only display interface 801 shown in FIG8B in response to the user selecting the "Yes" option in interface 803.
[0183] On the contrary, in response to the user selecting the “No” option in the interface 803 , the mobile phone 220 may restore the interface before the laptop 210 prompts to call the remote camera, such as the interface 804 shown in FIG. 8B , and continue playing the video.
[0184] As another example, in response to the call request, mobile phone 220 may display interface 805 shown in FIG8C . Interface 805 includes a prompt "Laptop 210 wants to turn on the remote camera. Do you want to turn it on now?" and also includes two options: "Yes" and "No, turn it on later." In response to the user selecting the "Yes" option in interface 805, mobile phone 220 may activate the remote camera. That is, the confirmation event includes the user selecting the "Yes" option in interface 805. For example, in response to the user selecting the "Yes" option in interface 805, mobile phone 220 will display interface 801 shown in FIG8C .
[0185] Conversely, in response to the user selecting the "No, turn on later" option in interface 805, mobile phone 220 may display interface 806 shown in FIG8C , which includes multiple delay time lengths, such as 1 minute, 2 minutes, 3 minutes, etc. The user can select a target delay time length from the multiple delay time lengths. In response to the user selecting the target delay time length (e.g., 5 minutes), mobile phone 220 may start timing (e.g., at 9:00 AM) and activate the remote camera after the timing reaches the target time length (e.g., 5 minutes at 9:05 AM), such as after displaying interface 807. In other words, the confirmation event includes the user selecting the target delay time length in interface 806 and the timing reaching the target delay time length. For example, in response to the user selecting the target delay time length in interface 805 and the timing reaching the target delay time length, mobile phone 220 will display interface 801 shown in FIG8C .
[0186] In addition, in response to the rejection event of refusing to start the remote camera, the mobile phone 220 does not need to start the remote camera, and returns feedback information of the rejection of the call to the laptop computer 210. Exemplarily, the prompt for the laptop computer 210 to call the remote camera includes a rejection control, such as the "No" option in the interface 803 shown in FIG8B . The rejection event can be an operation such as a click or long press of the rejection control by the user. Another example is that the rejection event can be an event in which the mobile phone 220 is displaying a preset interface. Among them, the preset interface can be an application interface of a high-authority application, such as a call interface of a call application. This can interrupt the operation of the high-authority application. The preset interface can be an interface for using the system camera, such as a photo taking interface, a video call interface, etc. This can avoid interrupting the operation of the system camera.
[0187] S507 : After completing the shooting, the mobile phone 220 transmits the image to the laptop computer 210 .
[0188] In the mobile phone 220 , after the system camera captures an image, the mobile phone 220 may transmit the image to the laptop computer 210 based on the device information of the laptop computer 210 recorded by the remote camera.
[0189] In some scenarios, multiple applications on laptop computer 210 may access the remote cameras of different devices within a short timeframe. For example, application 1 on laptop computer 210 accesses the remote camera of mobile phone 220, followed shortly thereafter by application 2 on laptop computer 210 accessing the remote camera of tablet computer 230. In this case, mobile phone 220 and tablet computer 230 may transmit captured images to laptop computer 210 almost simultaneously. In this case, laptop computer 210 may struggle to decide which application on laptop computer 210 to feed the images from mobile phone 220 and tablet computer 230, respectively.
[0190] To address the above issue, in some embodiments, in S505 above, the laptop computer 210 can further include the application identifier of the target application in the call request. The application identifier of the target application is then also transmitted to the mobile phone 220. Accordingly, in S506, when the mobile phone 220 activates the remote camera, it not only records the device information in the call request in the remote camera, but also records the application identifier, which is used to instruct the target application in the laptop computer 210 to call the remote camera, thereby further clarifying the recipient of the image. Furthermore, in S507, when the mobile phone 220 transmits the image to the laptop computer 210, it also transmits the application identifier of the target application recorded in the remote camera, thereby instructing the laptop computer 210 to feed the image back to the target application. In this way, by feeding back the image and the application identifier together to the laptop computer 210, the laptop computer 210 can simultaneously determine the receiving application of the image upon receiving the image, thereby accurately feeding back the image to the corresponding application.
[0191] S508 : The laptop computer 210 displays the image captured by the mobile phone 220 .
[0192] For example, after receiving the image, laptop computer 210 may display interface 901 shown in FIG. 9 , which includes image 902. Interface 901 also includes a prompt "Tom's Model A phone's camera is taking a picture" 903 and a "Cancel" button 904. In response to the user clicking "Cancel" button 904, laptop computer 210 may display interface 905 shown in FIG. Interface 905 no longer displays the prompt "Tom's Model A phone's camera is taking a picture" 903, allowing the user to continue editing the document.
[0193] In some scenarios, multiple devices may access the same device's remote camera within a short timeframe. For example, as shown in Figure 10 , at 8:30 a.m., laptop 210 accesses mobile phone 220's remote camera to capture a photo. Between 8:30 and 8:32 a.m., tablet 230 accesses mobile phone 220's remote camera to capture a photo.
[0194] However, the remote camera of the same device can only be accessed by one device at a time. In other words, the remote camera of the same device can only be occupied by one device at a time. Continuing with Figure 10 , after laptop 210 accesses the remote camera of mobile phone 220, from 8:30 to 8:32, the remote camera of mobile phone 220 remains occupied by laptop 210. Therefore, between 8:30 and 8:32, tablet 230 will be unable to successfully access the remote camera of mobile phone 220 and will have to wait until the remote camera of mobile phone 220 is unoccupied before tablet 230 can successfully access the remote camera of mobile phone 220. This results in inefficient access.
[0195] For a scenario similar to FIG10 , referring to FIG11 , in some embodiments, after the laptop computer 210 sends the call request to the mobile phone 220 , such as after S505 , the following steps may be further performed:
[0196] S1101 , in response to starting the remote camera, the mobile phone 220 synchronizes the working status of its remote camera as occupied (also referred to as second information) to the device with the same account (such as the laptop computer 210 ).
[0197] For example, the user accounts logged in to the laptop computer 210, the mobile phone 220 and the tablet 230 are all Honor account a. Then, in response to the call request from the laptop computer 210, after starting the remote camera, the mobile phone 220 can synchronize the working status of its remote camera to the laptop computer 210 and the tablet 230 as occupied.
[0198] After executing S1101 , the device with the same account (eg, laptop computer 210 ) may determine that the remote camera in mobile phone 220 is currently occupied.
[0199] Furthermore, in this embodiment, after the shooting is completed, such as after S507, the following steps are further included:
[0200] S1102 , in response to the completion of the shooting, the mobile phone 220 synchronizes the working status of the remote camera of the mobile phone 220 to the device with the same account (such as the laptop 210 ) as unoccupied (also referred to as third information).
[0201] After executing S1102 , the device with the same account may determine that the remote camera in the mobile phone 220 is not occupied.
[0202] In this embodiment, the available device is an online device that supports a remote camera and whose remote camera is not occupied. For example, the mobile phone 220 is an online device that supports a remote camera, but its remote camera is occupied, and it will not be determined as an available device. Then, after S1101 and before S1102, if the device with the same account (such as the tablet 230) receives an image acquisition operation, the online device that supports a remote camera but whose remote camera is occupied (such as the mobile phone 220) will not be determined as an available device, and the option of the mobile phone 220 will not be displayed subsequently, or the option of the mobile phone 220 in an inoperable state (such as a grayed-out state) will be displayed. As a result, the remote camera of the mobile phone 220 cannot be called, and conflicts in calls can be avoided.
[0203] Figures 5-11 above primarily illustrate the image capture method provided by the embodiments of the present application using laptop computer 210 and mobile phone 220 as the execution entities. Below, the image capture method provided by the embodiments of the present application will be further described in conjunction with the software modules of laptop computer 210 and mobile phone 220. For details about the various software modules in laptop computer 210 and mobile phone 220 and the hierarchical levels to which they belong, please refer to the description of Figures 4A and 4B above and will not be repeated here.
[0204] Specifically, referring to FIG12 , before S501 , the steps S1201 to S1203 are also included:
[0205] S1201 : The remote camera of the mobile phone 220 registers its remote camera capability with the device management service of the mobile phone 220 .
[0206] Registering the remote camera capability means that the remote camera informs the device management service of its remote camera capability (capability to capture images for devices with the same account and transmit them back).
[0207] In some embodiments, when mobile phone 220 is first powered on, a prompt may be displayed in the user guide to enable the remote camera. If a user initiates the remote camera activation, the remote camera will be triggered to register its capabilities with the device management service. For example, when mobile phone 220 is first powered on, mobile phone 220 may display interface 1301 shown in FIG13(a). Interface 1301 is a user guide interface that includes language options such as "Simplified Chinese," "Traditional Chinese," "English," and "Japanese." In response to the user selecting "Simplified Chinese" in interface 1301, mobile phone 220 may display interface 1302 shown in FIG13(b). Interface 1302 is another user guide interface that includes a prompt, "Enabling the remote camera allows other devices to use this device to capture images. Do you want to enable it?", prompting the user to enable the remote camera. Interface 1302 also includes two options, "Yes" and "No," and enabling the remote camera may be selecting "No" in interface 1302. Then, in response to the user selecting “No” in the interface 1302 , the remote camera in the mobile phone 220 is triggered to register its capability with the device management service.
[0208] It should be noted that in the example of FIG13 , after the user selects a language in interface 1301, interface 1302 is displayed. In actual implementation, after the user selects a language in interface 1301, mobile phone 220 may first display other guidance interfaces, such as a guidance interface for setting fingerprint, face, or password, or a guidance interface for importing data, and only after the settings are completed in these other guidance interfaces will mobile phone 220 jump to interface 1302.
[0209] In other embodiments, when the mobile phone 220 is turned on for the first time, the user does not perform the operation of enabling the remote camera, but during the subsequent use of the mobile phone 220, receiving the user's operation of enabling the remote camera can also trigger the remote camera to register its capabilities with the device management service.
[0210] When registering its capabilities, the remote camera can send its application identifier to the device management service, such as the remote camera's app package name, to indicate that the registered application is the remote camera. Furthermore, the remote camera can also send its capability information to the device management service to indicate that the registered capability is a remote camera capability.
[0211] S1202 : The device management service of the mobile phone 220 records the remote camera and its registered capabilities.
[0212] For example, the device management service records the application identifier of the remote camera and capability information of the remote camera's capabilities.
[0213] S1203 : The device management service of the mobile phone 220 feeds back a registration success message to the remote camera of the mobile phone 220 .
[0214] At this point, the remote camera capability registration is completed.
[0215] In some embodiments, after registering the remote camera capability, if the user no longer wishes to use mobile phone 220 to capture images for other devices with the same account, the user can deactivate the remote camera on mobile phone 220. In response to the user deactivating the remote camera, the remote camera will request the device management service to deregister its capability. Upon receiving the deregistration request from the remote camera, the device management service will delete the remote camera's registration information, such as the remote camera's application identifier and the capability information of the remote camera.
[0216] Continuing to refer to FIG12 , in the notebook computer 210 , S501 further includes the following S5011 - S5013 :
[0217] S5011. The device management service of the mobile phone 220 synchronizes the remote camera capability with the device management service of the same account device (such as the laptop computer 210) via the Internet.
[0218] If the mobile phone 220 and the laptop computer 210 are logged into the same user account, the device management services of the two devices can synchronize their remote camera capabilities via the Internet (i.e., the cloud). Of course, if there are other devices with the same account, the device management service of the mobile phone 220 can also synchronize their remote camera capabilities with the device management services of other devices with the same account.
[0219] When synchronizing the capabilities of the remote camera (i.e., synchronizing the first information), the device management service of the mobile phone 220 can synchronize the device information of the mobile phone 220 (such as the name of the mobile phone 220) and the capability information of the remote camera capabilities to the device management service of the laptop computer 210 to indicate that the mobile phone 220 supports the remote camera.
[0220] It should be understood that if the remote camera in the mobile phone 220 deregisters the remote camera capability to the device management service, then the device management service of the mobile phone 220 will also synchronously deregister the remote camera capability to the device management service of the laptop computer 210. Correspondingly, the device management service of the laptop computer 210 will delete the information that the mobile phone 220 supports remote cameras, such as deleting the device information of the mobile phone 220 and the capability information of the remote camera capability.
[0221] S5012: The communication service of the laptop computer 210 discovers an online device (the mobile phone 220) within the near field communication range.
[0222] The communication service (eg, Magic Link) of the laptop computer 210 may periodically scan and discover devices within the near field communication range of the laptop computer 210 .
[0223] After the laptop computer 210 discovers the mobile phone 220 , the laptop computer 210 and the mobile phone 220 may transmit data, such as call requests and images, via a communication service (such as Magic Link).
[0224] S5013. The communication service of the notebook computer 210 updates the online device (the mobile phone 220) to the device management service of the notebook computer 210.
[0225] In this way, the device management service of the laptop computer 210 can determine that the mobile phone 220 is an online device.
[0226] In some embodiments, in the laptop computer 210 , the target application can only access the connection service if the connection service provides the target application with services such as querying available devices, transmitting call requests and data such as images across devices.
[0227] Based on this, referring to Figure 12 , laptop computer 210 also includes the following steps S1204-S1208. It should be noted that there is no strict order restriction between S1204-S1208 and the aforementioned S1201-S5013. In practice, whenever the target application is cold-started, S1204-S1208 will be executed in laptop computer 210.
[0228] S1204 : In response to the target application of the notebook computer 210 being cold-started, an access request is sent to the connection service of the notebook computer 210 .
[0229] The access request is used to request access to the connection service and includes an application identifier of the target application, which is used to indicate that the target application wants to access the connection service.
[0230] During a cold start on laptop 210, the target application can send an access request to the connection service. A cold start means that before the target application is started, there is no target application process in the laptop 210 system. During the cold start, the target application sends an access request to the connection service, reestablishing the connection between the target application process and the connection service process, facilitating subsequent remote camera calls.
[0231] S1205 : The connection service of the notebook computer 210 sends an authentication request to the application authentication service of the notebook computer 210 .
[0232] The authentication request is used to request authentication of the application and includes an application identifier of the target application, which is used to instruct authentication of the target application.
[0233] S1206 : The application authentication service of the laptop computer 210 authenticates the target application.
[0234] Before the target application accesses the subsequent service, the legitimacy of the target application is first verified, such as verifying the identity and permissions of the target application.
[0235] S1207 : The application authentication service of the notebook computer 210 feeds back a message of successful authentication to the connection service of the notebook computer 210 .
[0236] The authentication success message carries the application identifier of the target application that has been successfully authenticated, which is used to indicate that the authentication of the target application has been successful.
[0237] S1208 : The connection service of the notebook computer 210 returns a message indicating successful access to the target application of the notebook computer 210 .
[0238] Only after confirming that the target application is legitimate will the connection service return a successful access message to the target application, allowing the target application to access the connection service. This prevents illegal applications from being able to query available devices, transmit call requests across devices, and transfer data such as images.
[0239] Continuing to refer to FIG12 , in the notebook computer 210 , the user can perform an image acquisition operation in the target application. Accordingly, S502 is specifically S5021:
[0240] S5021: The target application of the notebook computer 210 receives an image acquisition operation.
[0241] Exemplarily, the acquisition operation is a user clicking operation on “Picture” 702 in the interface 701 shown in FIG. 7A .
[0242] Continuing to refer to FIG12 , in the notebook computer 210 , S503 further includes S5031 - S5036:
[0243] S5031 . In response to the acquisition operation, the target application of the notebook computer 210 queries the connection service of the notebook computer 210 for available devices.
[0244] Among them, available devices refer to online devices that support remote cameras. In some embodiments, the device management services of devices with the same account will not only synchronize the remote camera capabilities, but also synchronize the remote camera's occupancy status, such as whether it is currently occupied or not. For details, please refer to the relevant description of Figure 10 above. In this embodiment, available devices refer to online devices that support remote cameras and whose remote cameras are not occupied.
[0245] Since the target application in the notebook computer 210 has obtained the calling information of the connection service, the target application can call the connection service to query available devices.
[0246] S5032 : The connection service of the notebook computer 210 queries the device management service of the notebook computer 210 for available devices. The available devices include the mobile phone 220 .
[0247] S5033. The device management service of the notebook computer 210 determines available devices.
[0248] The device management service of the notebook computer 210 records devices that support remote cameras and online devices. Therefore, the device management service of the notebook computer 210 can determine devices that are both devices that support remote cameras and are online devices as available devices.
[0249] Exemplarily, the devices supporting the remote camera include a mobile phone 220 and a tablet 230 , and if the online device is the mobile phone 220 , then it can be determined that the available device is the mobile phone 220 .
[0250] S5034. The device management service of the notebook computer 210 returns the device information of the available devices to the connection service of the notebook computer 210.
[0251] S5035 : The connection service of the notebook computer 210 returns the device information of the available devices to the target application of the notebook computer 210 .
[0252] In this way, the target application obtains the device information that can be used to call available devices.
[0253] Typically, the device information of an available device includes information that can uniquely identify each available device, such as a MAC address of the available device and a device serial number.
[0254] In some embodiments, in order to avoid privacy leakage, the device information of the available device may be represented by a temporary identity (identification, ID) of the available device.
[0255] For example, if mobile phone 220 not only provides remote camera capabilities but also other remote capabilities (such as remote translation and remote search) for invocation, then one or more applications in laptop computer 210, when invoking these capabilities, will discover that mobile phone 220 also has a camera application, a translation application, and a search application installed, resulting in a privacy leak. For example, if one or more applications are from the same developer, the developer can build a profile of mobile phone 220 through big data analysis.
[0256] Specifically, in this embodiment, after laptop computer 210 discovers an online device (e.g., mobile phone 220) (e.g., S5012), the communication service of laptop computer 210 and the communication services of each online device (e.g., mobile phone 220) negotiate a temporary ID for each device (e.g., laptop computer 210 and mobile phone 220). For example, the negotiated temporary ID for laptop computer 210 is 111, and the temporary ID for mobile phone 220 is 222. Furthermore, the communication service of laptop computer 210 may also send the temporary IDs of each online device to the device management service of laptop computer 210. Subsequently, when returning device information of available devices to the target application (e.g., S5034 and S5035), the temporary IDs of the available devices may be returned. This avoids privacy leaks caused by sending fixed identification information such as the MAC address and device serial number of the available device to the target application.
[0257] S5036 . The target application of the notebook computer 210 displays options of available devices.
[0258] The device information of the available devices may also include the user name of the user account logged in to the available device (e.g., Tom, Jenny), the device model of the available device (e.g., Model A, Model B, etc.), and / or the device type (e.g., mobile phone, tablet, etc.). Accordingly, the target application may display the user name, the device model of the available device, and / or the device type of the available device in the available device options to indicate the available devices corresponding to each option.
[0259] For example, the laptop computer 210 may display the interface 703 shown in FIG. 7A , which includes two available device options: “the camera of Tom's model A mobile phone” and “the camera of Tom's model B tablet”.
[0260] Continuing to refer to FIG12 , in the laptop computer 210 , S504 is specifically S5041:
[0261] S5041 . The target application of the notebook computer 210 receives the user's selection operation on the option of the mobile phone 220 .
[0262] For example, Tom's model A mobile phone is the mobile phone 220 , and the selection operation may be a user clicking operation on “Tom's model A mobile phone” in the interface 703 shown in FIG. 7A .
[0263] It should be understood that when the user performs a selection operation on an option of the mobile phone 220 , it means selecting the remote camera of the mobile phone 220 to capture an image.
[0264] Continuing to refer to FIG12 , S505 further includes S5051-S5054:
[0265] S5051 . The target application of the notebook computer 210 sends a call request to the connection service of the notebook computer 210 to call the remote camera of the mobile phone 220 .
[0266] Since the target application in the notebook computer 210 has successfully registered with the connection service, the target application can call the connection service to send a remote camera call request (also referred to as a second request) to the mobile phone 220 .
[0267] In the laptop computer 210, when the target application requests the connection service to call the remote camera, it needs to carry the device information of the mobile phone 220 (such as the temporary ID of the mobile phone 220) and the capability information of the remote camera, which is used to indicate that the calling object is the capability of the remote camera in the mobile phone 220.
[0268] Exemplarily, the call request sent by the target application to the connection service includes the following content:
[0269] {
[0270] MsgType: MsgType.REQUEST_REMOTE_CAMERA_PIC / / Message type: request to call the remote camera;
[0271] nodeId: Temporary ID of mobile phone 220 (such as 222) / / Temporary ID of the called device
[0272] }
[0273] In this way, the remote camera of the mobile phone 220 may be called.
[0274] S5052 : The connection service of the notebook computer 210 sends a request to the communication service of the notebook computer 210 for the target application of the notebook computer 210 to call the remote camera of the mobile phone 220 .
[0275] In the laptop computer 210, when the connection service sends a request (also called the third request) to the communication service, it can carry the device information of the mobile phone 220 and the capability information of the remote camera, which is used to indicate that the calling object is the capability of the remote camera in the mobile phone 220; and it can also carry the device information of the laptop computer 210 (such as the temporary ID of the laptop computer 210) to indicate that the requesting party is the laptop computer 210.
[0276] In addition, after receiving the call request from the target application, the connection service of the laptop 210 can obtain the application identifier of the target application through parsing, and carry the application identifier in the request sent to the communication service to further indicate that the requester is the target application.
[0277] That is, based on the calling request in the aforementioned S5051, the device information of the notebook computer 210 and the application identifier of the target application are added.
[0278] S5053 : The communication service of the laptop computer 210 sends a request to the communication service of the mobile phone 220 for the target application of the laptop computer 210 to invoke the remote camera of the mobile phone 220 .
[0279] In some embodiments, compared with S5052 , the request in S5053 (ie, the first request) may be device information of the laptop computer 210 .
[0280] S5054 : The communication service of the mobile phone 220 sends a request for the target application of the notebook computer 210 to call the remote camera to the connection service of the mobile phone 220 .
[0281] When the communication service in mobile phone 220 sends a request (also called a fourth request) to the connection service, the request may include capability information of the remote camera's capabilities, indicating that the capabilities being called are those of the remote camera; and may also include device information of laptop computer 210 and an application identifier of the target application, indicating that the requesting party is the target application in laptop computer 210. In other words, the device information of mobile phone 220 may be reduced based on the call request in S5053.
[0282] Continuing to refer to FIG12 , in the mobile phone 220 , S506 is specifically S5061:
[0283] S5061: The connection service of the mobile phone 220 starts the remote camera and sends the device information of the notebook computer 210 and the application identifier of the target application to the remote camera.
[0284] In mobile phone 220, the connection service activates the remote camera based on the capability information in the received request. After activating the remote camera, the remote camera can call the system camera to capture an image. After activating the system camera, the system camera can display a viewfinder interface, such as interface 801 shown in Figure 8A.
[0285] The device information of the laptop computer 210 recorded in the remote camera is used by the remote camera to distribute the image captured by the system camera to the laptop computer 210. Also, the application identifier of the target application recorded in the remote camera is used by the laptop computer 210 to determine the target application for acquiring the image.
[0286] In some embodiments, referring to FIG. 12 , after starting the remote camera, S1101 further includes S11011-S11012:
[0287] S11011 . The remote camera of the mobile phone 220 updates the working status to the device management service as occupied.
[0288] The operating status includes occupied and unoccupied, and two tags can be used to indicate these two statuses. For example, a first tag, such as 1, indicates unoccupied, and a second tag, such as 0, indicates occupied. In mobile phone 220, the remote camera can send the first tag or the second tag to the device management service to instruct the device management service to update the status.
[0289] S11012 , the device management service of the mobile phone 220 synchronizes the working status of its remote camera capability to the device management service of the same account device (such as the laptop computer 210 ) via the Internet, and the capability is occupied.
[0290] When the state of the remote camera in the mobile phone 220 changes, it will be synchronized to the device with the same account, such as the laptop 210. Subsequently, when the device with the same account calls the remote camera, it can not call the remote camera in the occupied state, such as the remote camera in the mobile phone 220, to avoid conflicts.
[0291] And, after the remote camera calls the system camera to complete image capture, S1102 further includes S11021-S11022:
[0292] S11021. The remote camera of the mobile phone 220 updates the working status to the device management service as unoccupied.
[0293] S11022 , the device management service of the mobile phone 220 synchronizes the remote camera capability of the device with the same account (such as the laptop computer 210 ) via the Internet, and the working status is unoccupied.
[0294] Subsequently, when the device with the same account calls a remote camera, it can continue to call a remote camera that is not occupied, such as the remote camera in the mobile phone 220 .
[0295] Continuing to refer to FIG12 , in the mobile phone 220 , S507 further includes S5071 - S5075:
[0296] S5071 : The remote camera of the mobile phone 220 sends an image to the connection service of the mobile phone 220 , and the transmission recipient is a target application of the notebook computer 210 .
[0297] In the mobile phone 220, when the remote camera sends an image to the connection service, the device information of the laptop computer 210 and the application identifier of the target application recorded by the remote camera can be simultaneously transmitted, so that the connection service can clearly identify the transmission path.
[0298] S5072 : The connection service of the mobile phone 220 sends the image to the communication service of the mobile phone 220 , and transmits the target application whose receiving object is the notebook computer 210 .
[0299] S5073: The communication service of the mobile phone 220 sends the image to the communication service of the notebook computer 210 based on the receiving object, and transmits the receiving object as a target application (eg, transmits an application identifier of the target application).
[0300] In the mobile phone 220 , the receiving object received by the communication service is the target application of the laptop 210 . Therefore, the communication service can send the image to the laptop 210 based on the device information in the receiving object, ie, the device information of the laptop 210 .
[0301] S5074: The communication service of the notebook computer 210 sends the image to the connection service of the notebook computer 210, and the transmission recipient is the target application.
[0302] S5075 : The connection service of the notebook computer 210 sends the image to the target application of the notebook computer 210 based on the receiving object.
[0303] In the notebook computer 210 , the receiving object received by the connection service is the target application. Therefore, the connection service can send the image to the target application based on the application identifier in the receiving object, ie, the application identifier of the target application.
[0304] Continuing to refer to FIG12 , in the laptop computer 210 , S508 is specifically S5081:
[0305] S5081 . The target application of the notebook computer 210 displays an image.
[0306] Taking a picture as an example, after receiving the picture, the laptop computer 210 may display an interface 901 shown in FIG. 9 , where the interface 901 includes a picture 902 .
[0307] An embodiment of the present application further provides an electronic device, which may include a memory and one or more processors. The memory and processors are coupled. The memory is configured to store computer program code, which includes computer instructions. When the processor executes the computer instructions, the electronic device may perform the functions or steps performed by the mobile phone in the above-described method embodiment.
[0308] An embodiment of the present application also provides a chip system, as shown in Figure 14, the chip system 1400 includes at least one processor 1401 and at least one interface circuit 1402. The processor 1401 and the interface circuit 1402 can be interconnected via lines. For example, the interface circuit 1402 can be used to receive signals from other devices (such as the memory of an electronic device). For another example, the interface circuit 1402 can be used to send signals to other devices (such as the processor 1401). Exemplarily, the interface circuit 1402 can read instructions stored in the memory and send the instructions to the processor 1401. When the instructions are executed by the processor 1401, the electronic device can perform the various steps in the above embodiments. Of course, the chip system can also include other discrete devices, which is not specifically limited in the embodiment of the present application.
[0309] This embodiment further provides a computer-readable storage medium, which stores computer instructions. When the computer instructions are executed on an electronic device, the electronic device executes the functions or steps executed by the mobile phone in the above method embodiment.
[0310] This embodiment further provides a computer program product. When the computer program product is run on a computer, it enables the computer to execute the functions or steps executed by the mobile phone in the above method embodiment.
[0311] In addition, an embodiment of the present application also provides a device, which can specifically be a chip, component or module, and the device may include a connected processor and memory; wherein the memory is used to store computer-executable instructions, and when the device is running, the processor can execute the computer-executable instructions stored in the memory to enable the chip to perform the various functions or steps performed by the mobile phone in the above method embodiment.
[0312] Among them, the electronic device, communication system, computer-readable storage medium, computer program product or chip provided in this embodiment are all used to execute the corresponding methods provided above. Therefore, the beneficial effects that can be achieved can refer to the beneficial effects in the corresponding methods provided above, and will not be repeated here.
[0313] Through the description of the above implementation methods, technical personnel in the relevant field can clearly understand that for the convenience and simplicity of description, only the division of the above-mentioned functional modules is used as an example. In actual applications, the above-mentioned functions can be assigned to different functional modules as needed, that is, the internal structure of the device can be divided into different functional modules to complete all or part of the functions described above.
[0314] In the several embodiments provided in this application, it should be understood that the disclosed devices and methods can be implemented in other ways. For example, the device embodiments described above are merely schematic. For example, the division of the modules or units is only a logical function division. In actual implementation, there may be other division methods, such as multiple units or components can be combined or integrated into another device, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.
[0315] The units described as separate components may or may not be physically separate, and the components shown as units may be one physical unit or multiple physical units, that is, they may be located in one place or distributed in multiple places. Some or all of the units may be selected according to actual needs to achieve the purpose of the present embodiment.
[0316] In addition, the functional units in the various embodiments of the present application may be integrated into a single processing unit, or each unit may exist physically separately, or two or more units may be integrated into a single unit. The aforementioned integrated units may be implemented in the form of hardware or software functional units.
[0317] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a readable storage medium. Based on this understanding, the technical solution of the embodiment of the present application is essentially or the part that contributes to the prior art or all or part of the technical solution can be embodied in the form of a software product, which is stored in a storage medium and includes several instructions for enabling a device (which can be a single-chip microcomputer, chip, etc.) or a processor (processor) to execute all or part of the steps of the various embodiments of the present application. The aforementioned storage medium includes: various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk.
[0318] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present application and are not intended to limit the present application. Although the present application has been described in detail with reference to the preferred embodiments, those skilled in the art should understand that the technical solutions of the present application may be modified or replaced by equivalents without departing from the spirit and scope of the technical solutions of the present application.
Claims
1. An image capturing method, characterized in that: Applied to a first device, the method includes: The first device displays a first interface of a first application; In response to a first operation of the user on the first interface, the first device displays a first option, wherein the first operation is used to acquire an image; In response to a user's selection operation of the first option, the first device sends a first request to a second device indicated by the first option, wherein the first request includes device information of the first device, an application identifier of the first application, and a request type, wherein the device information of the first device is used for a remote camera of the second device to distribute an image captured by a system camera of the second device to the first device according to the device information of the first device; the request type is used to indicate that the first request calls the remote camera; and the remote camera is an application with the following capabilities: calling the system camera to capture an image, and distributing the image captured by the system camera; The first device receives the image captured by the second device and the application identifier; The first device displays the image captured by the second device on the first interface based on the application identifier.
2. The method according to claim 1, characterized in that The method further comprises: The first device receives first information from the second device, the first information indicating that the second device has the capability of the remote camera; In response to the first information, the first device records information that the second device has the capability of the remote camera; The first device displays a first option, including: If the first device records information that the second device has the capability of the remote camera, the first device displays the first option.
3. The method according to claim 2, characterized in that The method further comprises: The first device receives second information from the second device, the second information indicating that the remote camera is occupied; in response to the second information, the first device updates the state of the remote camera to an occupied state; and / or, The first device receives third information from the second device, the third information indicating that the remote camera is not occupied; in response to the third information, the first device updates the state of the remote camera to an unoccupied state; The first device displays a first option, including: If the state of the remote camera is unoccupied, the first device displays the first option.
4. The method according to claim 2 or 3, characterized in that: The first option is an option of a device within the near field communication range of the first device and / or a device with the same user account logged in as the first device.
5. The method according to claim 4, characterized in that The first device includes a device management service; The first device receives first information from the second device, including: The device management service receives first information from the second device; The first device records information that the second device has the capability of the remote camera, including: The device management service records information that the second device has the capability of the remote camera.
6. The method according to claim 5, characterized in that The first device also includes a communication service, and the method further includes: The communication service finds that the second device is within the near field communication range of the first device, and / or the second The same user account is logged in to the device as in the first device; The communication service updates the second device as an online device to the device management service.
7. The method according to claim 6, characterized in that The first device also includes a connection service. Before the first device displays the first option, the method further includes: The first application sends a query request to the connection service; The connection service forwards the query request to the device management service; In response to the query request, if the device management service includes information that the second device has the capability of the remote camera and the second device is the online device, the device management service returns the device information of the second device to the connection service; The connection service returns the device information of the second device to the first application; The first device displays a first option, including: The first application displays the first option corresponding to the second device based on the device information of the second device.
8. The method according to claim 7, characterized in that The device information of the second device includes the user name of the user account, the device model of the second device and / or the device type of the second device, and the first option includes the user name, the device model and / or the device type.
9. The method according to claim 7 or 8, characterized in that: After the communication service finds that the second device is within the near field communication range of the first device, and / or the second device and the first device are logged in with the same user account, the method further includes: The communication service allocates a temporary ID to the second device, and the device information of the second device includes the temporary ID; The first device sending a first request to the second device indicated by the first option includes: The first application sends a first request to the second device corresponding to the temporary ID.
10. The method according to any one of claims 1 to 9, characterized in that The method further comprises: If the second device meets the preset condition, in response to the user's selection operation of the first option, the first device sends a first prompt message, where the first prompt message is used to prompt that the second device is shooting; The preset condition includes that the system camera is in an idle state and / or the second device is in a powered-on state.
11. The method according to any one of claims 1 to 10, characterized in that The first device includes a connection service and a communication service; In response to the user's selection operation of the first option, the first device sending a first request to the second device indicated by the first option includes: In response to a user's selection operation of the first option, the first application sends a second request to the connection service, where the second request includes device information of the second device and the request type, where the device information of the second device is used to indicate a device for capturing images; In response to the second request, the connection service sends a third request to the communication service, wherein the third request includes device information of the first device, device information of the second device, the application identifier, and the request type; In response to the third request, the communication service sends the first request to the second device indicated by the device information of the second device in the third request.
12. The method according to any one of claims 1 to 11, characterized in that The first device includes a communication service and a connection service; The first device receiving the image captured by the second device and the application identifier of the first application includes: The communication service receives the image captured by the second device and the application identifier of the first application; The communication service sends the image and the application identifier to the connection service; The first device displays the image captured by the second device on the first interface based on the application identifier, including: The connection service sends the image to the first application indicated by the application identifier; The first application displays the image.
13. An image capturing method, characterized in that: Applied to the second device, the method includes: The second device receives a first request, where the first request includes device information of the first device, an application identifier of the first application, and a request type, where the request type is used to indicate that the first request calls a remote camera, and the remote camera is an application in the second device; In response to the first request, the second device starts the remote camera and records the device information of the first device and the application identifier in the remote camera; In response to starting the remote camera, the second device displays a second interface, where the second interface is a shooting preview interface of the system camera in the second device; In response to a shooting operation of the user, the second device shoots an image; The second device sends the image and the application identifier in the remote camera to the first device indicated by the device information of the first device in the remote camera.
14. The method according to claim 13, characterized in that The method further comprises: The second device sends a second prompt message, where the second prompt message is used to prompt the first device to request to call the present device to capture an image; The second device starts the remote camera, including: In response to a user confirmation operation on the second prompt information, the second device starts the remote camera.
15. The method according to claim 13 or 14, characterized in that The second device includes communication services and connection services; The second device receives the first request, including: The communication service receives the first request; The step of, in response to the first request, the second device starting the remote camera and recording the device information and the application identifier of the first device in the remote camera, comprises: In response to receiving the first request, the communication service sends a fourth request to the connection service, wherein the fourth request includes device information of the first device, the application identifier, and the request type; In response to receiving the fourth request, the connection service starts the remote camera and sends the device information of the first device and the application identifier to the remote camera; The remote camera records the device information of the first device and the application identifier.
16. The method according to claim 15, characterized in that The second device also includes a system camera; The second device displays a second interface, including: The remote camera calls the system camera, and the system camera displays the second interface; The second device captures an image, comprising: The system camera captures images.
17. The method according to claim 15 or 16, characterized in that The second device sends the image to the first device indicated by the device information of the first device in the remote camera, and sends the application identifier in the remote camera, including: The remote camera sends the image, the device information of the first device and the application identifier to the connection service; The connection service sends the image, the device information of the first device and the application identifier to the communication service; The communication service sends the image and the application identifier to the first device indicated by the device information of the first device.
18. The method according to any one of claims 13 to 17, characterized in that: Before the second device receives the first request, the method further includes: The second device synchronizes first information to the first device, wherein the first information indicates that the second device has a capability of the remote camera.
19. The method according to claim 18, characterized in that After the second device starts capturing images and before the second device ends capturing images, the method further includes: The second device synchronizes second information to the first device, the second information indicating that the remote camera of the second device is occupied; After the second device finishes capturing the image, the method further includes: The second device synchronizes third information to the first device, where the third information indicates that the remote camera of the second device is not occupied.
20. The method according to claim 18 or 19, characterized in that The second device includes a device management service, and the method further includes: The device management service synchronizes, to the first device, information that the second device has the capability of the remote camera and / or that the remote camera of the second device is occupied or unoccupied.
21. An image capturing method, characterized in that: include: The first device displays a first interface of a first application; In response to a first operation of the user on the first interface, the first device displays a first option, wherein the first operation is used to acquire an image; In response to a user selecting the first option, the first device sends a first request to a second device indicated by the first option, wherein the first request includes device information of the first device, an application identifier of the first application, and a request type, wherein the request type is used to indicate that the first request calls a remote camera, and the remote camera is an application in the second device; The second device receives the first request; In response to the first request, the second device starts the remote camera and records the device information of the first device and the application identifier of the first application in the remote camera; In response to starting the remote camera, the second device displays a second interface, where the second interface is a viewfinder interface of a system camera in the second device; In response to a shooting operation of the user, the second device shoots an image; The second device sends the image and the application identifier in the remote camera to the first device indicated by the device information of the first device in the remote camera.
22. An electronic device, characterized in that: The electronic device comprises the first device or the second device described in any one of claims 1-21, and the electronic device comprises a memory and one or more processors, and the memory is coupled to the processor; wherein computer program code is stored in the memory, and the computer program code comprises computer instructions, and when the computer instructions are executed by the processor, the electronic device executes the method described in any one of claims 1-21.
23. A communication system, characterized in that: The communication system comprises the first device and the second device according to any one of claims 1 to 21.
24. A computer-readable storage medium, characterized in that: The method comprises computer instructions, which, when executed on an electronic device, cause the electronic device to execute the method as claimed in any one of claims 1 to 21.
25. A chip system, characterized in that: The chip system is applied to an electronic device including a processor and a memory. The chip system includes one or more interface circuits and one or more processors. The interface circuit and the processor are interconnected through lines. The interface circuit is used to receive a signal from the memory of the electronic device and send the signal to the processor. The signal includes a computer instruction stored in the memory. When the processor executes the computer instruction, the electronic device executes the method as described in any one of claims 1 to 21.