Method for data transmission and electronic device for performing same

The method improves data transfer efficiency by using URIs and ADB for identifying and restoring application data, addressing non-standard storage challenges and enhancing user convenience in data backup and restoration processes.

WO2025154939A1PCT designated stage expired Publication Date: 2025-07-24SAMSUNG ELECTRONICS CO LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
PCT/KR2024/019174
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-02-05
Filing Date
2024-11-28
Publication Date
2025-07-24

AI Technical Summary

Technical Problem

Existing data transmission methods, such as Samsung SmartSwitch, face challenges in efficiently transferring and restoring application data between devices, particularly when the data is stored in non-standard locations or formats, leading to incomplete or failed backups and restorations.

Method used

The method employs a data transmission application that uses Uniform Resource Identifiers (URIs) to identify and restore application data stored in specific locations, utilizing Android Debug Bridge (ADB) for initial data transfer and ParcelFileDescriptor for split data transmission, ensuring comprehensive data restoration.

Benefits of technology

Enhances the efficiency and completeness of data transfer by addressing non-standard storage issues, improving user convenience and reducing failure rates in data backup and restoration processes.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure KR2024019174_24072025_PF_FP_ABST
    Figure KR2024019174_24072025_PF_FP_ABST
Patent Text Reader

Abstract

A method for data transmission and an electronic device for performing same are disclosed. The method according to one embodiment may comprise an operation of using an Android Debug Bridge (ADB) so as to restore first application data stored in a first storage location of an external electronic device. The method may comprise an operation of using a URI for a second storage location so as to restore second application data stored in the second storage location of the external electronic device in response to a determination that reception of the first application data has been completed.
Need to check novelty before this filing date? Find Prior Art

Description

Method for transmitting data and electronic device performing the same

[0001] The present disclosure relates to a method for data transmission and an electronic device performing the same.

[0002] A data transmission application (e.g., Samsung Smart Switch) can transfer contacts, messages, photos, videos, and / or application data from one user device to another.

[0003] The above information may be provided as background art to aid in understanding the present disclosure. No claim or determination is made as to whether any of the above is applicable as prior art related to the present disclosure.

[0004] An electronic device according to one embodiment may include at least one processor and a memory storing instructions. The instructions, when individually or collectively executed by the at least one processor, may cause the electronic device to install a first application installed on an external electronic device via a second application using an installation file received from the external electronic device. The instructions, when individually or collectively executed by the at least one processor, may cause the electronic device to receive first application data related to the first application stored in a first storage location of the external electronic device via the second application. The instructions, when individually or collectively executed by the at least one processor, may cause the electronic device to generate a first identifier for a second storage location of the electronic device associated with the first application after reception of the first application data is completed. The instructions, when individually or collectively executed by the at least one processor, may cause the electronic device to receive second application data from the external electronic device based on a second identifier for a third storage location of the external electronic device associated with the first application.The above instructions, when individually or collectively executed by the at least one processor, may cause the electronic device to restore the second application data based on the first identifier.

[0005] A method of operating an electronic device may include an operation of installing a first application installed on an external electronic device via a second application using an installation file received from the external electronic device. The method may include an operation of receiving first application data related to the first application stored in a first storage location of the external electronic device via the second application. The method may include an operation of generating a first identifier for a second storage location of the electronic device (101, 201) related to the first application after reception of the first application data is completed. The method may include an operation of receiving second application data from the external electronic device based on a second identifier for a third storage location of the external electronic device related to the first application. The method may include an operation of restoring the second application data based on the first identifier.

[0006] A method of operating an electronic device according to one embodiment may include restoring first application data stored in a first storage location of an external electronic device using an Android debug bridge (ADB). In response to determining that restoration of the first application data has been completed, the method may include restoring second application data stored in a second storage location of the external electronic device using a URI for the second storage location.

[0007] According to one embodiment, a computer-readable recording medium storing one or more computer programs may include instructions for performing the method in a processor.

[0008] FIG. 1 is a block diagram of an electronic device within a network environment according to one embodiment.

[0009] Figure 2 is a diagram for explaining data transmission according to one embodiment.

[0010] Figure 3 is a flowchart illustrating data transmission according to one embodiment.

[0011] Figure 4 is a flowchart illustrating data backup according to one embodiment.

[0012] Figure 5 is a flowchart illustrating data restoration according to one embodiment.

[0013] Figure 6 is a flowchart illustrating the operation of an electronic device according to one embodiment.

[0014] Hereinafter, embodiments will be described in detail with reference to the attached drawings. In the description with reference to the attached drawings, identical components are assigned the same reference numerals regardless of the drawing numbers, and redundant descriptions thereof will be omitted.

[0015]

[0016] FIG. 1 is a block diagram of an electronic device within a network environment according to one embodiment.

[0017] FIG. 1 is a block diagram of an electronic device (101) within a network environment (100) according to one embodiment. Referring to FIG. 1, in the network environment (100), the electronic device (101) may communicate with the electronic device (102) via a first network (198) (e.g., a short-range wireless communication network), or may communicate with at least one of the electronic device (104) or the server (108) via a second network (199) (e.g., a long-range wireless communication network). According to one embodiment, the electronic device (101) may communicate with the electronic device (104) via the server (108). According to one embodiment, the electronic device (101) may include a processor (120), a memory (130), an input module (150), an audio output module (155), a display module (160), an audio module (170), a sensor module (176), an interface (177), a connection terminal (178), a haptic module (179), a camera module (180), a power management module (188), a battery (189), a communication module (190), a subscriber identification module (196), or an antenna module (197). In some embodiments, the electronic device (101) may omit at least one of these components (e.g., the connection terminal (178)), or may have one or more other components added. In some embodiments, some of these components (e.g., the sensor module (176), the camera module (180), or the antenna module (197)) may be integrated into one component (e.g., the display module (160)).

[0018] The processor (120) may, for example, execute software (e.g., a program (140)) to control at least one other component (e.g., a hardware or software component) of the electronic device (101) connected to the processor (120) and perform various data processing or calculations. According to one embodiment, as at least a part of the data processing or calculations, the processor (120) may store commands or data received from other components (e.g., a sensor module (176) or a communication module (190)) in a volatile memory (132), process the commands or data stored in the volatile memory (132), and store result data in a non-volatile memory (134). According to one embodiment, the processor (120) may include a main processor (121) (e.g., a central processing unit or an application processor) or a secondary processor (123) (e.g., a graphics processing unit, a neural processing unit (NPU), an image signal processor, a sensor hub processor, or a communication processor)) that can operate independently or together therewith. For example, if the electronic device (101) includes a main processor (121) and a secondary processor (123), the secondary processor (123) may be configured to use less power than the main processor (121) or to be specialized for a specified function. The secondary processor (123) may be implemented separately from the main processor (121) or as a part thereof.

[0019] The auxiliary processor (123) may control at least a portion of functions or states associated with at least one component (e.g., a display module (160), a sensor module (176), or a communication module (190)) of the electronic device (101), for example, on behalf of the main processor (121) while the main processor (121) is in an inactive (e.g., sleep) state, or together with the main processor (121) while the main processor (121) is in an active (e.g., application execution) state. In one embodiment, the auxiliary processor (123) (e.g., an image signal processor or a communication processor) may be implemented as a part of another functionally related component (e.g., a camera module (180) or a communication module (190)). In one embodiment, the auxiliary processor (123) (e.g., a neural network processing unit) may include a hardware structure specialized for processing artificial intelligence models. The artificial intelligence models may be generated through machine learning. This learning can be performed, for example, on the electronic device (101) itself where the artificial intelligence model is executed, or can be performed through a separate server (e.g., server (108)). The learning algorithm can include, for example, supervised learning, unsupervised learning, semi-supervised learning, or reinforcement learning, but is not limited to the examples described above. The artificial intelligence model can include multiple artificial neural network layers.The artificial neural network may be one of a deep neural network (DNN), a convolutional neural network (CNN), a recurrent neural network (RNN), a restricted Boltzmann machine (RBM), a deep belief network (DBN), a bidirectional recurrent deep neural network (BRDNN), a deep Q-network, or a combination of two or more of the above, but is not limited to the examples described above. In addition to, or alternatively to, a hardware structure, an artificial intelligence model may include a software structure.

[0020] The memory (130) can store various data used by at least one component (e.g., the processor (120) or the sensor module (176)) of the electronic device (101). The data can include, for example, software (e.g., the program (140)) and input data or output data for commands related thereto. The memory (130) can include a volatile memory (132) or a non-volatile memory (134). According to one embodiment, instructions stored in the memory (130) can cause the electronic device (101) to perform one or more operations when individually or collectively executed by at least one processor (e.g., the main processor (121) and / or the auxiliary processor (123)). For example, instructions stored in memory (130) may be executed by one processor (e.g., a main processor (121) or an auxiliary processor (123) such as a communication processor) or by multiple processors operating cooperatively (e.g., a main processor (121) and an auxiliary processor (123)).

[0021] The program (140) may be stored as software in the memory (130) and may include, for example, an operating system (142), middleware (144) or an application (146) (e.g., a data transmission application such as SmartSwitch and / or a messenger application).

[0022] The input module (150) can receive commands or data to be used in a component of the electronic device (101) (e.g., a processor (120)) from an external source (e.g., a user) of the electronic device (101). The input module (150) can include, for example, a microphone, a mouse, a keyboard, a key (e.g., a button), or a digital pen (e.g., a stylus pen).

[0023] The audio output module (155) can output audio signals to the outside of the electronic device (101). The audio output module (155) can include, for example, a speaker or a receiver. The speaker can be used for general purposes, such as multimedia playback or recording playback. The receiver can be used to receive incoming calls. In one embodiment, the receiver can be implemented separately from the speaker or as part of the speaker.

[0024] The display module (160) can visually provide information to an external party (e.g., a user) of the electronic device (101). The display module (160) may include, for example, a display, a holographic device, or a projector and a control circuit for controlling the device. In one embodiment, the display module (160) may include a touch sensor configured to detect a touch, or a pressure sensor configured to measure the intensity of a force generated by the touch.

[0025] The audio module (170) can convert sound into an electrical signal, or vice versa, convert an electrical signal into sound. According to one embodiment, the audio module (170) can acquire sound through the input module (150), output sound through the sound output module (155), or an external electronic device (e.g., electronic device (102)) (e.g., speaker or headphone) directly or wirelessly connected to the electronic device (101).

[0026] The sensor module (176) can detect the operating status (e.g., power or temperature) of the electronic device (101) or the external environmental status (e.g., user status) and generate an electrical signal or data value corresponding to the detected status. According to one embodiment, the sensor module (176) can include, for example, a gesture sensor, a gyro sensor, a barometric pressure sensor, a magnetic sensor, an acceleration sensor, a grip sensor, a proximity sensor, a color sensor, an IR (infrared) sensor, a biometric sensor, a temperature sensor, a humidity sensor, or an illuminance sensor.

[0027] The interface (177) may support one or more designated protocols that may be used to directly or wirelessly connect the electronic device (101) with an external electronic device (e.g., the electronic device (102)). In one embodiment, the interface (177) may include, for example, a high definition multimedia interface (HDMI), a universal serial bus (USB) interface, an SD card interface, or an audio interface.

[0028] The connection terminal (178) may include a connector through which the electronic device (101) may be physically connected to an external electronic device (e.g., electronic device (102)). According to one embodiment, the connection terminal (178) may include, for example, an HDMI connector, a USB connector, an SD card connector, or an audio connector (e.g., a headphone connector).

[0029] A haptic module (179) can convert electrical signals into mechanical stimuli (e.g., vibration or movement) or electrical stimuli that a user can perceive through tactile or kinesthetic sensations. In one embodiment, the haptic module (179) can include, for example, a motor, a piezoelectric element, or an electrical stimulation device.

[0030] The camera module (180) can capture still images and videos. According to one embodiment, the camera module (180) may include one or more lenses, image sensors, image signal processors, or flashes.

[0031] The power management module (188) can manage power supplied to the electronic device (101). According to one embodiment, the power management module (188) can be implemented, for example, as at least a part of a power management integrated circuit (PMIC).

[0032] A battery (189) may power at least one component of the electronic device (101). In one embodiment, the battery (189) may include, for example, a non-rechargeable primary battery, a rechargeable secondary battery, or a fuel cell.

[0033] The communication module (190) may support the establishment of a direct (e.g., wired) communication channel or a wireless communication channel between the electronic device (101) and an external electronic device (e.g., electronic device (102), electronic device (104), or server (108)), and the performance of communication through the established communication channel. The communication module (190) may operate independently from the processor (120) (e.g., application processor) and may include one or more communication processors that support direct (e.g., wired) communication or wireless communication. According to one embodiment, the communication module (190) may include a wireless communication module (192) (e.g., a cellular communication module, a short-range wireless communication module, or a global navigation satellite system (GNSS) communication module) or a wired communication module (194) (e.g., a local area network (LAN) communication module, or a power line communication module). Among these communication modules, the corresponding communication module can communicate with an external electronic device (104) via a first network (198) (e.g., a short-range communication network such as Bluetooth, wireless fidelity (WiFi) direct, or infrared data association (IrDA)) or a second network (199) (e.g., a long-range communication network such as a legacy cellular network, a 5G network, a next-generation communication network, the Internet, or a computer network (e.g., a LAN or WAN)). These various types of communication modules can be integrated into a single component (e.g., a single chip) or implemented as multiple separate components (e.g., multiple chips). The wireless communication module (192) can verify or authenticate the electronic device (101) within a communication network such as the first network (198) or the second network (199) by using subscriber information (e.g., an international mobile subscriber identity (IMSI)) stored in the subscriber identification module (196).

[0034] The wireless communication module (192) can support 5G networks and next-generation communication technologies following the 4G network, such as NR access technology (new radio access technology). The NR access technology can support high-speed transmission of high-capacity data (eMBB (enhanced mobile broadband)), minimization of terminal power and connection of multiple terminals (mMTC (massive machine type communications)), or high reliability and low latency (URLLC (ultra-reliable and low-latency communications)). The wireless communication module (192) can support, for example, a high-frequency band (e.g., mmWave band) to achieve a high data transmission rate. The wireless communication module (192) can support various technologies for securing performance in a high-frequency band, such as beamforming, massive multiple-input and multiple-output (MIMO), full dimensional MIMO (FD-MIMO), array antenna, analog beam-forming, or large scale antenna. The wireless communication module (192) can support various requirements specified in the electronic device (101), an external electronic device (e.g., the electronic device (104)), or a network system (e.g., the second network (199)). According to one embodiment, the wireless communication module (192) can support a peak data rate (e.g., 20 Gbps or more) for eMBB realization, a loss coverage (e.g., 164 dB or less) for mMTC realization, or a U-plane latency (e.g., 0.5 ms or less for downlink (DL) and uplink (UL), or 1 ms or less for round trip) for URLLC realization.

[0035] The antenna module (197) can transmit or receive signals or power to or from an external device (e.g., an external electronic device). In one embodiment, the antenna module (197) may include an antenna including a radiator formed of a conductor or a conductive pattern formed on a substrate (e.g., a PCB). In one embodiment, the antenna module (197) may include a plurality of antennas (e.g., an array antenna). In this case, at least one antenna suitable for a communication method used in a communication network, such as the first network (198) or the second network (199), may be selected from the plurality of antennas by, for example, the communication module (190). A signal or power may be transmitted or received between the communication module (190) and an external electronic device through the selected at least one antenna. In some embodiments, in addition to the radiator, another component (e.g., a radio frequency integrated circuit (RFIC)) may be additionally formed as a part of the antenna module (197).

[0036] In one embodiment, the antenna module (197) may form a mmWave antenna module. In one embodiment, the mmWave antenna module may include a printed circuit board, an RFIC disposed on or adjacent a first side (e.g., a bottom side) of the printed circuit board and capable of supporting a designated high-frequency band (e.g., a mmWave band), and a plurality of antennas (e.g., an array antenna) disposed on or adjacent a second side (e.g., a top side or a side side) of the printed circuit board and capable of transmitting or receiving signals in the designated high-frequency band.

[0037] At least some of the above components can be interconnected and exchange signals (e.g., commands or data) with each other via a communication method between peripheral devices (e.g., a bus, GPIO (general purpose input and output), SPI (serial peripheral interface), or MIPI (mobile industry processor interface)).

[0038] According to one embodiment, commands or data may be transmitted or received between the electronic device (101) and an external electronic device (104) via a server (108) connected to a second network (199). Each of the external electronic devices (102 or 104) may be the same or a different type of device as the electronic device (101). According to one embodiment, all or part of the operations executed in the electronic device (101) may be executed in one or more of the external electronic devices (102, 104, or 108). For example, when the electronic device (101) is to perform a certain function or service automatically or in response to a request from a user or another device, the electronic device (101) may, instead of or in addition to executing the function or service itself, request one or more external electronic devices to perform the function or at least a part of the service. One or more external electronic devices that receive the request may execute at least a portion of the requested function or service, or an additional function or service related to the request, and transmit the result of the execution to the electronic device (101). The electronic device (101) may process the result as is or additionally and provide it as at least a portion of a response to the request. For this purpose, cloud computing, distributed computing, mobile edge computing (MEC), or client-server computing technology may be used, for example. The electronic device (101) may provide an ultra-low latency service by using distributed computing or mobile edge computing, for example. In another embodiment, the external electronic device (104) may include an Internet of Things (IoT) device. The server (108) may be an intelligent server utilizing machine learning and / or a neural network. According to one embodiment, the external electronic device (104) or the server (108) may be included in the second network (199).The electronic device (101) can be applied to intelligent services (e.g., smart home, smart city, smart car, or healthcare) based on 5G communication technology and IoT-related technology.

[0039]

[0040] An electronic device according to an embodiment disclosed in this document may take various forms. The electronic device may include, for example, a portable communication device (e.g., a smartphone), a computer device, a portable multimedia device, a portable medical device, a camera, a wearable device, or a home appliance. The electronic device according to an embodiment of this document is not limited to the aforementioned devices.

[0041] The embodiments of this document and the terminology used herein are not intended to limit the technical features described in this document to specific embodiments, but should be understood to include various modifications, equivalents, or substitutes of the embodiments. In connection with the description of the drawings, similar reference numerals may be used for similar or related components. The singular form of a noun corresponding to an item may include one or more of the items, unless the context clearly indicates otherwise. In this document, each of the phrases "A or B", "at least one of A and B", "at least one of A or B", "A, B, or C", "at least one of A, B, and C", and "at least one of A, B, or C" can include any one of the items listed together in the corresponding phrase among those phrases, or all possible combinations thereof. Terms such as "first," "second," or "first" or "second" may be used merely to distinguish one component from another, and do not limit the components in any other respect (e.g., importance or order). When a component (e.g., a first component) is referred to as "coupled" or "connected" to another component (e.g., a second component), with or without the terms "functionally" or "communicatively," it means that the component can be connected to the other component directly (e.g., wired), wirelessly, or through a third component.

[0042] The term "module" used in the embodiments of this document may include a unit implemented in hardware, software, or firmware, and may be used interchangeably with terms such as logic, logic block, component, or circuit. A module may be an integral component, or a minimum unit or part of such a component that performs one or more functions. For example, according to one embodiment, a module may be implemented in the form of an application-specific integrated circuit (ASIC).

[0043] One embodiment of the present document may be implemented as software (e.g., a program (140)) including one or more instructions stored in a storage medium (e.g., an internal memory (136) or an external memory (138)) readable by a machine (e.g., an electronic device (101)). For example, a processor (e.g., a processor (120)) of the machine (e.g., an electronic device (101)) may call at least one instruction among the one or more instructions stored from the storage medium and execute it. This enables the machine to operate to perform at least one function according to the at least one called instruction. The one or more instructions may include code generated by a compiler or code executable by an interpreter. The machine-readable storage medium may be provided in the form of a non-transitory storage medium. Here, 'non-transitory' simply means that the storage medium is a tangible device and does not contain signals (e.g., electromagnetic waves), and the term does not distinguish between cases where data is stored semi-permanently or temporarily on the storage medium.

[0044] According to one embodiment, the method according to one embodiment disclosed in the present document may be provided as a computer program product. The computer program product may be traded as a product between a seller and a buyer. The computer program product may be distributed in the form of a machine-readable storage medium (e.g., compact disc read-only memory (CD-ROM)), or may be distributed online (e.g., downloaded or uploaded) via an application store (e.g., Play Store™) or directly between two user devices (e.g., smart phones). In the case of online distribution, at least a portion of the computer program product may be temporarily stored or temporarily generated in a machine-readable storage medium, such as the memory of a manufacturer's server, an application store's server, or an intermediary server.

[0045] According to one embodiment, each component (e.g., a module or a program) of the above-described components may include one or more entities, and some of the entities may be separated and arranged in other components. According to one embodiment, one or more components or operations of the aforementioned components may be omitted, or one or more other components or operations may be added. Alternatively or additionally, a plurality of components (e.g., a module or a program) may be integrated into a single component. In this case, the integrated component may perform one or more functions of each of the plurality of components identically or similarly to those performed by the corresponding component among the plurality of components prior to the integration. According to one embodiment, the operations performed by a module, program, or other component may be executed sequentially, in parallel, iteratively, or heuristically, or one or more of the operations may be executed in a different order, omitted, or one or more other operations may be added.

[0046]

[0047] Figure 2 is a diagram for explaining data transmission according to one embodiment.

[0048] Referring to FIG. 2, according to one embodiment, an electronic device (201) (e.g., the electronic device (101) of FIG. 1) can communicate with an external electronic device (211) via a wired connection or a wireless connection (e.g., Wi-Fi direct or Bluetooth). The electronic device (201) can exchange various types of data with the external electronic device (211). For example, the electronic device (201) can receive an application installation file (e.g., an APK (Android application package) file), device settings, and / or application data from the external electronic device (211).

[0049] According to one embodiment, the electronic device (201) and the external electronic device (211) can perform data backup and / or data restoration. In the following, it is assumed that the electronic device (201) performs data restoration and the external electronic device (211) performs data backup. However, this is an example for illustrative purposes, and it is obvious to those skilled in the art that the electronic device (201) can perform data backup and the external electronic device (211) can perform data restoration.

[0050] According to one embodiment, the electronic device (201) and the external electronic device can use a data transmission application (10) (e.g., Samsung SmartSwitch) for data backup / data restoration. The electronic device (201) can restore applications and application data installed in the external electronic device (211) onto the electronic device (201) using the data transmission application (10). For example, when a user wants to replace an old device (e.g., the external electronic device (211)) with a new device (e.g., the electronic device (201)), the user can transmit contacts, photos, messages, applications, and / or application data from the old device to the new device via the data transmission application (10).

[0051]

[0052] Figure 3 is a flowchart illustrating data transmission according to one embodiment.

[0053] Referring to FIG. 3, according to one embodiment, the electronic device (201) can restore an application (21) (e.g., a messenger application) and application data (e.g., settings, conversations, photos, or videos) of the application installed in the external electronic device (211) onto the electronic device (201). For data backup / data restoration, the electronic device (201) and the external electronic device (211) can use a data transmission application (23, 25) (e.g., the data transmission application (10) of FIG. 2). FIG. 3 schematically illustrates operations performed by the electronic device (201) and the external electronic device (211) to explain the present disclosure, and it will be apparent to those skilled in the art that additional operations may be performed by the electronic device (201) and / or the external electronic device (211) in addition to the operations explicitly illustrated in FIG. 3. Actions 305 through 360 may be performed sequentially, but are not limited thereto. For example, two or more actions may be performed in parallel, or the order of the actions may be reversed.

[0054] In operation 305, the electronic device (201) may receive an installation file (e.g., APK file) of an application (21) installed in the external electronic device (211) from the external electronic device (211). For example, the installation file may be transmitted from a data transmission application (23) of the external electronic device (211) to a data transmission application (25) of the electronic device (201). In the present disclosure, data transmitted between the electronic device (201) and the external electronic device (211) may be transmitted through data transmission applications (23, 25).

[0055] In operation 310, the electronic device (201) may install the application (27) on the electronic device (201) using an installation file received from an external electronic device (211). For example, the electronic device (201) may install the application (27) using a data transmission application (25) (e.g., instructions related to the data transmission application (25)). The application (27) installed on the electronic device (201) may be substantially the same as the application (21) installed on the external electronic device (211). For example, the version of the application (27) and the version of the application (21) may be the same. After the installation of the application (27) is completed, the electronic device (201) may transmit a message notifying the completion of the installation of the application (27) to the external electronic device (211).

[0056] In operation 315, after the installation of the application (27) is completed, the electronic device (201) may receive first application data (e.g., application settings or chat messages) of the application (21) from the external electronic device (211). For example, the first application data may be transmitted from the data transmission application (23) of the external electronic device (211) to the data transmission application (25) of the electronic device (201). The electronic device (201) may receive the first application data from the external electronic device (211) using an Android debug bridge (ADB) (e.g., ADB backup manager). Similarly, the external electronic device (211) may transmit the first application data to the electronic device (201) using ADB. The first application data may include data related to the first application (21) stored in a specific storage location of a storage (e.g., internal storage) of the external electronic device (211).

[0057] In operation 320, the electronic device (201) can restore the first application data received from the external electronic device (211). The electronic device (201) can restore the first application data via the data transmission application (25). For example, the electronic device (201) can transmit the first application data from the data transmission application (25) to the application (27). The electronic device (201) can restore the first application data on (or via) the application (27). The electronic device (201) can use ADB to restore the first application data. The electronic device (201) can transmit a message indicating that the restoration of the first application data is complete to the external electronic device (211).

[0058] In operation 325-1, the external electronic device (211) may transmit a message (e.g., a request) for generating a first identifier (e.g., a uniform resource identifier (URI) or a file pointer) from the data transmission application (23) to the application (21). The first identifier may include information for identifying a storage location of the external electronic device (211) where second application data is stored. The second application data is stored in the storage (e.g., internal storage) of the external electronic device (211) like the first application data, but the storage location (e.g., path) of the second application data may be different from the storage location of the first application data. The first application data and the second application data may be managed based on a policy of the application (21). For example, a messenger application may manage second application data (e.g., media files such as photos and videos) separately from first application data (e.g., application settings or conversation messages). For example, a messenger application may store second-party application data (e.g., media files such as photos and videos) in a storage location that is not accessible through other applications or functions (e.g., ADB).

[0059] In operation 325-2, the electronic device (211) may transmit a message (e.g., a request) for generating a second identifier (e.g., a uniform resource identifier (URI) or a file pointer) from the data transmission application (25) to the application (27). The second identifier may include information about a storage location of the electronic device (201) where the second application data is to be stored. Operations 325-2 and 325-1 may be performed in parallel, but are not limited thereto. For example, operation 325-2 may be performed before operation 325-1 or after operation 325-1.

[0060] In operation 330-1, the external electronic device (211) may generate a first identifier.

[0061] In operation 330-2, the electronic device (201) may generate a second identifier. Operations 330-2 and 330-1 may be performed in parallel, but are not limited thereto. Operation 330-2 may be performed before operation 330-1 or after operation 330-1.

[0062] In operation 335-1, the external electronic device (211) may transmit a message (e.g., a response) containing information about the first identifier from the application (21) to the data transmission application (23).

[0063] In operation 335-2, the electronic device (201) may transmit a message (e.g., a response) including information about the second identifier from the application (27) to the data transmission application (25). Operations 335-1 and 335-2 may be performed in parallel, but are not limited thereto. For example, operation 335-2 may be performed before operation 335-1 or after operation 335-1. The electronic device (201) may transmit information about the second identifier to an external electronic device (211) via the data transmission application (25), as needed.

[0064] In operation 340, the external electronic device (211) can transmit second application data from the application (21) to the data transmission application (23). The external electronic device (211) can use ParcelFileDescriptor to transmit the second application data. The external electronic device (211) can create the ParcelFileDescriptor using an identifier (e.g., a first identifier and / or a second identifier) ​​associated with the second application data. The ParcelFileDescriptor can include a data pipe. The external electronic device (211) can transmit the second application data based on split transmission. For example, the external electronic device (211) can split each of the files into a plurality of pieces (e.g., chunks) based on a first buffer size and transmit the split pieces from the application (21) to the data transmission application (23).

[0065] In operation 345, the electronic device (201) may receive second application data from the external electronic device (211). For example, the second application data may be transmitted from the data transmission application (23) of the external electronic device (211) to the data transmission application of the electronic device (201) using ParcelFileDescriptor. The external electronic device (211) may transmit the second application data based on split transmission. For example, the external electronic device (211) may divide each of the files into a plurality of pieces (e.g., chunks) based on a second buffer size, and transmit the pieces from the data transmission application (23) to the data transmission application (23). The second buffer size may be different from the first buffer size (e.g., the first buffer size of operation 340). For example, the second buffer size may be larger than the first buffer size. According to one embodiment, by setting the second buffer size and the first buffer size differently, the data restoration speed can be improved.

[0066] In operation 350, the electronic device (201) may transmit second application data received from an external electronic device from the data transmission application (25) to the application (27). The electronic device (201) may use ParcelFileDescriptor to transmit the second application data. The electronic device (201) may create the ParcelFileDescriptor using an identifier associated with the second application data (e.g., the second identifier and / or the first identifier). The ParcelFileDescriptor may include a data pipe. The electronic device (201) may transmit the second application data based on split transmission. For example, the electronic device (201) may split each of the files into a plurality of pieces (e.g., chunks) based on a first buffer size (e.g., the first buffer size of operation 340) and transmit the split pieces from the data transmission application (25) to the application (27). The electronic device (201) can restore the second application data on (or via) the application (27). The electronic device (201) can transmit a message related to the restoration status of the second application data to the external electronic device (211). For example, the electronic device (201) can transmit a message to the external electronic device (211) indicating that the second application data has been transmitted from the data transmission application (25) to the application (27).

[0067] In operation 355, after the second application data is transmitted to the application (27), the external electronic device (211) may transmit a backup status message from the data transmission application (23) to the application (21). The backup status message may include information about the backup status of the application data (e.g., the first application data and / or the second application data). For example, the backup status message may include information indicating that the backup process of the first application and / or the second application has been completed.

[0068] In operation 360, the electronic device (201) may generate a file containing information about the restoration status of application data (e.g., first application data and / or second application data). For example, the file may contain information indicating that restoration of the first application data and / or second application data has been completed. The electronic device (201) may generate the file within a storage (e.g., internal storage) of the electronic device (201) associated with the application (27).

[0069] According to one embodiment, the electronic device (201) can improve user convenience by restoring application data (e.g., second application data) that cannot be restored through ADB using an identifier (e.g., URI) associated with the application data.

[0070]

[0071] Figure 4 is a flowchart illustrating data backup according to one embodiment.

[0072] Referring to FIG. 4, according to one embodiment, operations 405 to 450 may be performed sequentially, but are not limited thereto. For example, two or more operations may be performed in parallel, or the order of operations may be changed. The operations of FIG. 4 may be operations of an external electronic device (e.g., the external electronic device (211) of FIGS. 2 and 3) performed through a data transmission application (e.g., the data transmission application (23) of FIG. 3). The operations of FIG. 4 may be substantially the same as the operations of the external electronic device (211) described with reference to FIGS. 2 and 3. Therefore, redundant descriptions will be omitted.

[0073] In operation 405, the external electronic device (211) can determine whether an application installed on the external electronic device (211) (e.g., application (21) of FIG. 3) supports functions required for data backup / restore. For example, the external electronic device (211) can determine whether the version of the application (21) is a version that supports a transmission algorithm (e.g., URI-based transmission algorithm) of a data transmission application (e.g., data transmission applications (23, 25) of FIG. 3). If the application (21) does not support functions required for data restore, the external electronic device (211) can notify the user of a backup failure and / or a cause of the backup failure (e.g., “the application (21) does not support the required functions”) and terminate the backup.

[0074] In operation 410, if the application (21) supports a function required for data backup / restore, the external electronic device (211) can transmit an installation file (e.g., APK file) of the application (21) to the electronic device (e.g., the electronic device (201) of FIGS. 2 and 3). If the installation file is not transmitted due to a specific event (e.g., unstable network connection), the external electronic device (211) can notify the user of a backup failure and / or a cause of the backup failure (e.g., “the application installation file was not transmitted”) and terminate the backup.

[0075] In operation 415, when the installation file is transmitted from the external electronic device (211) to the electronic device (201), the external electronic device (211) may request an ADB-based data backup from the application (21). The ADB-based data backup may be for backing up the first application data of the application (21) (e.g., the first application data of operations 315 and 320 of FIG. 3).

[0076] In operation 420, the external electronic device (211) can transmit first application data to the electronic device (201). For example, the external electronic device (211) can transmit the first application data using ADB.

[0077] In operation 425, if the first application data is not transmitted, the external electronic device (211) may re-attempt connection with the electronic device (201) and re-attempt transmission of the first application data. The external electronic device (201) may repeatedly attempt transmission of the first application data based on a setting. If the number of transmission attempts reaches a threshold (e.g., 5 times), the external electronic device (211) may notify the user of a backup failure and / or a cause of the backup failure (e.g., “App data transmission failed”) and terminate the backup.

[0078] In operation 430, when the first application data is transmitted from the external electronic device (211) to the electronic device (201), the external electronic device (211) may request an identifier related to the second application data from the application (21) (e.g., the first identifier of operation 330-1 of FIG. 3).

[0079] In operation 435, the external electronic device (211) may transmit second application data to the electronic device (201).

[0080] In operation 440, if the second application data is not transmitted, the external electronic device (211) may re-attempt connection with the electronic device (201) and re-attempt transmission of the second application data. The external electronic device (201) may repeatedly attempt transmission of the second application data based on a setting. If the number of transmission attempts reaches a threshold (e.g., 5 times), the external electronic device (211) may notify the user of a backup failure and / or a cause of the backup failure (e.g., "App data transmission failed") and terminate the backup.

[0081] In operation 445, the external electronic device (211) may transmit a message (e.g., a backup status message of operation 355 of FIG. 3) containing information about a backup status of application data (e.g., first application data and / or second application data) to the application (21).

[0082] In operation 450, the external electronic device (211) may determine that the data backup has failed in response to the occurrence of an event related to the backup (e.g., non-support of a function, failure to transfer an APK file, failure to transfer application data).

[0083]

[0084] Figure 5 is a flowchart illustrating data restoration according to one embodiment.

[0085] According to one embodiment, operations 505 to 540 may be performed sequentially, but are not limited thereto. For example, two or more operations may be performed in parallel, or the order of operations may be changed. The operations of FIG. 5 may be operations of an electronic device (e.g., the electronic device (201) of FIGS. 2 and 3) performed via a data transmission application (e.g., the data transmission application (25) of FIG. 3). The operations of FIG. 5 may be substantially the same as the operations of the electronic device (201) described with reference to FIGS. 2 and 3. Therefore, any redundant description will be omitted.

[0086] In operation 505, the electronic device (201) may install an application (e.g., application (27) of FIG. 3) using an installation file (e.g., APK file) received from an external electronic device (e.g., external electronic device (211) of FIGS. 2 and 3). If the application (27) is not installed, the electronic device (201) may notify the user of a restoration failure and / or a cause of the restoration failure (e.g., “Application installation failed”) and terminate the backup.

[0087] In operation 510, after the application (27) is installed, the electronic device (201) can suspend the application (27).

[0088] In operation 515, the electronic device (201) can restore the first application data (e.g., the first application data of operations 315 and 320 of FIG. 3 and / or the first application data of operation 420 of FIG. 4) received from the external electronic device (211). For example, the electronic device (201) can restore the first application data using ADB. If the first application data is not restored, the electronic device (201) can notify the user of a restoration failure and / or a cause of the restoration failure (e.g., “App data restoration failed”) and terminate the backup.

[0089] In operation 520, when restoration of the first application data is completed, the electronic device (201) may request an identifier related to the second application data (e.g., the second identifier of operation 330-2 of FIG. 3) from the application (27).

[0090] In operation 525, the electronic device (201) may restore the second application data received from the external electronic device (211). If the second application data is not restored, the electronic device (201) may notify the user of the restoration failure and / or the cause of the restoration failure (e.g., “App data restoration failed”) and terminate the backup.

[0091] In operation 530, the electronic device (201) may determine that data restoration has failed in response to the occurrence of an event related to restoration (e.g., failure to install an application or failure to restore application data).

[0092] In operation 535, when restoration of the second application data is completed, the electronic device (201) may create a file (e.g., a file of operation 360 of FIG. 3) containing information on the restoration status of the application data (e.g., the first application data and / or the second application data). The electronic device (201) may create the file in the storage (e.g., internal storage) of the electronic device (201) related to the application (27). According to one embodiment, the electronic device (201) may prevent problems such as loss of intent in advance by notifying data restoration through file creation.

[0093] At operation 540, the electronic device (201) may unsuspend the application (27).

[0094]

[0095] Figure 6 is a flowchart illustrating the operation of an electronic device according to one embodiment.

[0096] Referring to FIG. 6, according to one embodiment, operations 610 to 650 may be performed sequentially, but are not limited thereto. For example, two or more operations may be performed in parallel, or the order of operations may be changed. Operations 610 to 650 may be substantially the same as the operations of the electronic device described with reference to FIGS. 1 to 3 and FIG. 5 (e.g., the electronic device (101) of FIG. 1 and / or the electronic device (201) of FIGS. 2 and 3). Therefore, any redundant description will be omitted.

[0097] In operation 610, the electronic device (201) can install a first application (e.g., application (21) of FIG. 3) installed on the external electronic device (211) through a second application (e.g., data transmission application (25) of FIG. 3) using an installation file (e.g., APK file) received from an external electronic device (e.g., external electronic device (211) of FIGS. 2 and 3).

[0098] In operation 620, the electronic device (201) may restore first application data (e.g., first application data of operations 315 and 320 of FIG. 3, first application data of operation 420 of FIG. 4, and / or first application data of operation 515 of FIG. 5) stored in a first storage location of the external electronic device (211) through the second application (25). The first application data may include data (e.g., settings and / or conversation messages) related to an application (21) installed in the external electronic device (211).

[0099] In operation 630, after restoration of the first application data is completed, the electronic device (201) may generate a first identifier (e.g., the second identifier of operation 330-2 of FIG. 3). The first identifier may include information about a second storage location of the electronic device (201) related to an application installed in the electronic device (201) (e.g., application (27) of FIG. 3).

[0100] In operation 640, the electronic device (201) may receive second application data (e.g., second application data of operations 340 to 350 of FIG. 3, second application data of operation 435 of FIG. 4, and / or second application data of operation 525 of FIG. 5) from the external electronic device (211) based on a second identifier (e.g., identifier of operation 330-1 of FIG. 3). The second identifier may include information about a third storage location of the external electronic device (211) related to an application (21) installed in the external electronic device (211).

[0101] In operation 650, the electronic device (201) can restore the second application data based on the first identifier (e.g., the second identifier of operation 330-2 of FIG. 3).

[0102]

[0103] An electronic device (101, 201) according to one embodiment may include at least one processor (120) and a memory (130) storing instructions. When the instructions are individually or collectively executed by the at least one processor (120), the instructions may cause the electronic device (101, 201) to install a first application (21) installed in the external electronic device (211) via a second application (25) using an installation file received from the external electronic device (211). The instructions, when individually or collectively executed by the at least one processor (120), may cause the electronic device (101, 201) to receive, through the second application (25), first application data related to the first application (21) stored in a first storage location of the external electronic device (211). The instructions, when individually or collectively executed by the at least one processor (120), may cause the electronic device (101, 201) to generate, after the reception of the first application data is completed, a first identifier (e.g., the second identifier of operation 330-2 of FIG. 3) for a second storage location of the electronic device (101, 201) related to the first application (27).The instructions, when individually or collectively executed by the at least one processor (120), may cause the electronic device (101, 201) to receive second application data from the external electronic device (211) based on a second identifier (e.g., the first identifier of operation 330-1 of FIG. 3) for a third storage location of the external electronic device (211) associated with the first application (21). The instructions, when individually or collectively executed by the at least one processor (120), may cause the electronic device (101, 201) to restore the second application data based on the first identifier.

[0104] The above instructions, when individually or collectively executed by the at least one processor (120), may cause the electronic device (101, 201) to generate the first identifier after restoration of the first application data is completed.

[0105] The instructions, when individually or collectively executed by the at least one processor (120), may cause the electronic device (101, 201) to transmit a request from the second application (25) of the electronic device (101, 201) to the first application (27) of the electronic device (101, 201) in response to determining that restoration of the first application data has been completed. The instructions, when individually or collectively executed by the at least one processor (120), may cause the electronic device (101, 201) to generate the first identifier (e.g., the first identifier of operation 330-2 of FIG. 3) through the first application (27) of the electronic device (101, 201) based on the request.

[0106] The above instructions, when individually or collectively executed by the at least one processor (120), may cause the electronic device (101, 201) to transmit a response including information about the first identifier (e.g., the second identifier of operation 330-2 of FIG. 3) from a first application (27) of the electronic device (101, 201) to a second application (25) of the electronic device (101, 201).

[0107] The above instructions, when individually or collectively executed by the at least one processor (120), may cause the electronic device (101, 201) to transmit the second application data from the second application of the electronic device (101, 201) to the first application of the electronic device (101, 201) based on the first identifier (e.g., the second identifier of operation 330-2 of FIG. 3).

[0108] The above instructions, when individually or collectively executed by the at least one processor (120), may cause the electronic device (101, 201) to restore the second application data through the first application (25) of the electronic device (101, 201).

[0109] The second application data may be received from the external electronic device (211) based on a first buffer size. The second application data may be transmitted from the second application (25) of the electronic device (101, 201) to the first application (27) of the electronic device (101, 201) based on the second buffer size.

[0110] The above first buffer size may be larger than the above second buffer size.

[0111] The above instructions, when individually or collectively executed by the at least one processor (120), may cause the electronic device (101, 201) to generate a file (e.g., a file of operation 360 of FIG. 3) containing information on a restoration status of the second application data after restoration of the second application data is completed.

[0112] The above instructions, when individually or collectively executed by the at least one processor (120), may cause the electronic device (101, 201) to create the file after information on the transmission status of the second application data (e.g., the backup status message of operation 355 of FIG. 3) is transmitted from the second application of the external electronic device (211) to the first application of the external electronic device (211).

[0113] The above instructions, when individually or collectively executed by the at least one processor (120), may cause the electronic device (101, 201) to suspend the first application (27) after the first application has been installed.

[0114] Each of the first identifier and the second identifier may include a uniform resource identifier (URI).

[0115] The above instructions, when individually or collectively executed by the at least one processor (120), may cause the electronic device (101, 201) to restore the second application data using a data pipe generated based on the second identifier.

[0116] The method of operating an electronic device (101, 201) may include an operation of installing a first application (21) installed in an external electronic device (211) via a second application (25) using an installation file received from the external electronic device (211). The method may include an operation of receiving first application data related to the first application (21) stored in a first storage location of the external electronic device (211) via the second application (25). After the reception of the first application data is completed, the method may include an operation of generating a first identifier (e.g., the second identifier of operation 330-2 of FIG. 3) for a second storage location of the electronic device (101, 201) related to the first application (27). The method may include an operation of receiving second application data from the external electronic device (211) based on a second identifier (e.g., the first identifier of operation 330-1 of FIG. 3) for a third storage location of the external electronic device (211) associated with the first application (21). The method may include an operation of restoring the second application data based on the first identifier.

[0117] The operation of generating the first identifier may include an operation of generating the first identifier after restoration of the first application data is completed. /

[0118] The operation of generating the first identifier (e.g., the second identifier of operation 330-2 of FIG. 3) may include an operation of transmitting a request from the second application (25) of the electronic device (101, 201) to the first application (27) of the electronic device (101, 201) in response to a determination that restoration of the first application data has been completed. The operation of generating the first identifier may include an operation of generating the first identifier through the first application (27) of the electronic device (101, 201) based on the request.

[0119] The method may further include an operation of transmitting a response including information about the first identifier from a first application of the electronic device (101, 201) to a second application of the electronic device (101, 201).

[0120] The operation of restoring the second application data may include an operation of transmitting the second application data from the second application (25) of the electronic device (101, 201) to the first application (27) of the electronic device (101, 201) based on the first identifier. The operation of restoring the second application data may include an operation of restoring the second application data through the first application (27) of the electronic device (101, 201).

[0121] The second application data may be received from the external electronic device (211) based on a first buffer size. The second application data may be transmitted from a second application of the electronic device (101, 201) to a first application of the electronic device (101, 201) based on a second buffer size.

[0122] The above first buffer size may be larger than the above second buffer size.

[0123] The method may further include an operation of generating a file (e.g., a file of operation 360 of FIG. 3) containing information on a restoration status of the second application data after restoration of the second application data is completed.

[0124] The operation of creating the file may include an operation of creating the file after information on the transmission status of the second application data (e.g., the backup status message of operation 355 of FIG. 3) is transmitted from the second application of the external electronic device (211) to the first application of the external electronic device (211).

[0125] The above method may further include an operation of suspending the first application (27) after the first application is installed.

[0126] Each of the first identifier and the second identifier may include a uniform resource identifier (URI).

[0127] The operation of restoring the second application data may include an operation of restoring the second application data using a data pipe generated based on the second identifier.

[0128] A method of operating an electronic device (101, 201) according to one embodiment may include an operation of restoring first application data stored in a first storage location of an external electronic device (211) using an ADB (Android debug bridge). The method may include an operation of restoring second application data stored in a second storage location of the external electronic device (211) using a URI for the second storage location, in response to a determination that restoration of the first application data is complete. The first storage location and the second storage location may be different.

[0129] According to one embodiment, a computer-readable recording medium storing one or more computer programs may include instructions for performing the method in a processor.

[0130]

[0131] Electronic devices according to the various embodiments disclosed in this document may take various forms. Electronic devices may include, for example, portable communication devices (e.g., smartphones), computer devices, portable multimedia devices, portable medical devices, cameras, wearable devices, or home appliances. Electronic devices according to the embodiments of this document are not limited to the aforementioned devices.

[0132] The various embodiments of this document and the terminology used therein are not intended to limit the technical features described in this document to specific embodiments, but should be understood to include various modifications, equivalents, or substitutes of the embodiments. In connection with the description of the drawings, similar reference numerals may be used for similar or related components. The singular form of a noun corresponding to an item may include one or more of the items, unless the context clearly indicates otherwise. In this document, each of the phrases "A or B", "at least one of A and B", "at least one of A or B", "A, B, or C", "at least one of A, B, and C", and "at least one of A, B, or C" can include any one of the items listed together in the corresponding phrase among those phrases, or all possible combinations thereof. Terms such as "first," "second," or "first" or "second" may be used merely to distinguish one component from another, and do not limit the components in any other respect (e.g., importance or order). When a component (e.g., a first component) is referred to as "coupled" or "connected" to another component (e.g., a second component), with or without the terms "functionally" or "communicatively," it means that the component can be connected to the other component directly (e.g., wired), wirelessly, or through a third component.

[0133] The term "module" used in various embodiments of this document may include a unit implemented in hardware, software, or firmware, and may be used interchangeably with terms such as logic, logic block, component, or circuit. A module may be an integral component, or a minimum unit or part of such a component that performs one or more functions. For example, according to one embodiment, a module may be implemented in the form of an application-specific integrated circuit (ASIC).

[0134] Various embodiments of the present document may be implemented as software (e.g., a program (140)) including one or more instructions stored in a storage medium (e.g., an internal memory (136) or an external memory (138)) readable by a machine (e.g., an electronic device (101)). For example, a processor (e.g., a processor (120)) of the machine (e.g., an electronic device (101)) may call at least one instruction among the one or more instructions stored from the storage medium and execute it. This enables the machine to operate to perform at least one function according to the at least one called instruction. The one or more instructions may include code generated by a compiler or code executable by an interpreter. The machine-readable storage medium may be provided in the form of a non-transitory storage medium. Here, 'non-transitory' simply means that the storage medium is a tangible device and does not contain signals (e.g., electromagnetic waves), and the term does not distinguish between cases where data is stored semi-permanently or temporarily on the storage medium.

[0135] According to one embodiment, the method according to various embodiments disclosed in this document may be provided as a computer program product. The computer program product may be traded between sellers and buyers as a product. The computer program product may be distributed in the form of a device-readable storage medium (e.g., compact disc read-only memory (CD-ROM)) or may be provided through an application store (e.g., Play Store). TM ) or directly between two user devices (e.g., smart phones), online distribution (e.g., downloading or uploading). In the case of online distribution, at least a portion of the computer program product may be at least temporarily stored or temporarily created in a machine-readable storage medium, such as the memory of a manufacturer's server, an application store's server, or an intermediary server.

[0136] According to various embodiments, each component (e.g., a module or a program) of the above-described components may include one or more entities, and some of the entities may be separated and placed in other components. According to various embodiments, one or more components or operations of the aforementioned components may be omitted, or one or more other components or operations may be added. Alternatively or additionally, a plurality of components (e.g., a module or a program) may be integrated into a single component. In such a case, the integrated component may perform one or more functions of each of the plurality of components identically or similarly to those performed by the corresponding component among the plurality of components prior to the integration. According to various embodiments, the operations performed by a module, program, or other component may be executed sequentially, in parallel, iteratively, or heuristically, or one or more of the operations may be executed in a different order, omitted, or one or more other operations may be added.

[0137] The effects that can be obtained from the present disclosure are not limited to the effects mentioned above, and other effects that are not mentioned can be clearly understood by a person having ordinary skill in the art to which the present disclosure belongs from this document.

Claims

1. In an electronic device (101, 201), at least one processor (120); and Memory for storing instructions (130) Including, The above instructions, when individually or collectively executed by the at least one processor (120), cause the electronic device (101, 201) to: Using an installation file received from an external electronic device (211), the first application installed on the external electronic device (211) is installed via the second application, Receiving first application data related to the first application stored in the first storage location of the external electronic device (211) through the second application, After the reception of the first application data is completed, a first identifier for the second storage location of the electronic device (101, 201) related to the first application is generated, Receiving second application data from the external electronic device (211) based on a second identifier for a third storage location of the external electronic device (211) associated with the first application; An electronic device (101, 201) for restoring the second application data based on the first identifier.

2. In paragraph 1, The above instructions, when individually or collectively executed by the at least one processor (120), cause the electronic device (101, 201) to: An electronic device (101, 201) that generates the first identifier after restoration of the first application data is completed.

3. In any one of paragraphs 1 and 2, The above instructions, when individually or collectively executed by the at least one processor (120), cause the electronic device (101, 201) to: In response to determining that the restoration of the first application data is complete, a request is transmitted from the second application of the electronic device (101, 201) to the first application of the electronic device (101, 201). An electronic device (101, 201) that generates the first identifier through a first application of the electronic device (101, 201) based on the request.

4. In any one of paragraphs 1 to 3, The above instructions, when individually or collectively executed by the at least one processor (120), cause the electronic device (101, 201) to: An electronic device (101, 201) that transmits a response including information about the first identifier from a first application of the electronic device (101, 201) to a second application of the electronic device (101, 201).

5. In any one of paragraphs 1 to 4, The above instructions, when individually or collectively executed by the at least one processor (120), cause the electronic device (101, 201) to: Transmitting the second application data from the second application of the electronic device (101, 201) to the first application of the electronic device (101, 201) based on the first identifier; An electronic device (101, 201) that restores the second application data through the first application of the electronic device (101, 201).

6. In any one of paragraphs 1 to 5, The above second application data is, Received from the external electronic device (211) based on the first buffer size, An electronic device (101, 201), wherein data is transmitted from a second application of the electronic device (101, 201) to a first application of the electronic device (101, 201) based on a second buffer size.

7. In any one of paragraphs 1 to 6, The above first buffer size is, An electronic device (101, 201) larger than the second buffer size.

8. In any one of paragraphs 1 to 7, The above instructions, when individually or collectively executed by the at least one processor (120), cause the electronic device (101, 201) to: An electronic device (101, 201) that generates a file including information on the restoration status of the second application data after the restoration of the second application data is completed.

9. In any one of paragraphs 1 to 8, The above instructions, when individually or collectively executed by the at least one processor (120), cause the electronic device (101, 201) to: An electronic device (101, 201) that generates the file after information on the transmission status of the second application data is transmitted from the second application of the external electronic device (211) to the first application of the external electronic device (211).

10. In any one of paragraphs 1 to 9, The above instructions, when individually or collectively executed by the at least one processor (120), cause the electronic device (101, 201) to: An electronic device (101, 201) that suspends the first application after the first application has been installed.

11. In any one of paragraphs 1 to 10, Each of the above first identifier and the above second identifier, uniform resource identifier (URI) An electronic device (101, 201) comprising:

12. In any one of paragraphs 1 to 11, The above instructions, when individually or collectively executed by the at least one processor (120), cause the electronic device (101, 201) to: An electronic device that restores the second application data by using a data pipe generated based on the second identifier.

13. In the operating method of an electronic device (101, 201), An operation of installing a first application installed on an external electronic device (211) via a second application using an installation file received from the external electronic device (211); An operation of receiving first application data related to the first application stored in the first storage location of the external electronic device (211) through the second application; An operation of generating a first identifier for a second storage location of the electronic device (101, 201) related to the first application after the reception of the first application data is completed; An operation of receiving second application data from the external electronic device (211) based on a second identifier for a third storage location of the external electronic device (211) associated with the first application; An operation for restoring the second application data based on the first identifier. A method comprising:

14. In paragraph 13, The operation of generating the above first identifier is: After the restoration of the above first application data is completed, an operation of generating the above first identifier A method comprising:

15. In any one of paragraphs 13 to 14, The operation of restoring the above second application data is as follows: An operation of transmitting the second application data from the second application of the electronic device (101, 201) to the first application of the electronic device (101, 201) based on the first identifier; and An operation of restoring the second application data through the first application of the electronic device (101, 201) A method comprising:

Citation Information

Patent Citations

  • Information processor, information processing method, information processing program, recording medium with its program recorded and portable telephone set

    JP2007013481A

  • Method of operating the application using launcher inwireless telecommunication terminal

    KR1020050087942A

  • Method and system for recovering file composed of application in mobile communicaiton unit, and the mobile communicaiton unit

    KR1020100123084A

  • Back-up system for mobile communication device

    KR1020170065942A

  • High-speed nanopatterning method and apparatus of two color super-resolution photolithography

    KR1020240023799A