Application program, recording medium, electronic apparatus, and control method thereof

The mechanism allows a first application to set a secondary network for a second application, addressing network compatibility issues in inter-application cooperation, ensuring seamless data transmission to external devices.

JP2025008980APending Publication Date: 2025-01-20CANON KK
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
JP2023111653
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2023-07-06
Publication Date
2025-01-20

Smart Images

  • Figure 2025008980000001_ABST
    Figure 2025008980000001_ABST
Patent Text Reader

Abstract

To enable data transmission to an external apparatus more appropriately when a cooperation source application in which a second network is set performs an inter-application cooperating operation with a cooperation destination application.SOLUTION: A first application program (112) causes at least one computer (CPU101) to function as: setting means that can set a second network, which is different from a first network managed by an OS110 as a connection destination, as a connection destination in transmitting data to an external apparatus; reception means that receives a cooperation instruction with a second application program (113); and processing means that executes a specific processing of causing the second application program (113) to acquire connection information for connecting to the second network set by the setting means when processing of the second application program (113) is executed on the basis of the cooperation instruction.SELECTED DRAWING: Figure 4
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present invention relates to an application program that enables inter-application cooperation, a recording medium, an electronic device, and a control method thereof. [Background technology]

[0002] A technology called "inter-program cooperation" is used in which programs such as applications installed on information processing devices such as mobile terminals and smartphones cooperate with each other to operate. Specifically, "inter-program cooperation" means that, for example, processing based on information handled in a specific program can be executed in a program other than the specific program.

[0003] Patent Document 1 discloses the following technology. That is, when a second application is launched from a first application using a URL scheme, parameters such as print settings are added to the URL scheme. This discloses a technology for sharing information between the first application and the second application. In other words, a technology related to "inter-app cooperation" is disclosed. Patent Document 2 discloses a technology for suppressing the discomfort of a screen display when different applications are launched during the launch of "inter-app cooperation." When launching "inter-app cooperation," seamless cooperation and display operations as if one application were running are important elements for improving usability.

[0004] In particular, as disclosed in Patent Documents 1 and 2, in an application that performs processing by communicating with an external device, it is desirable to seamlessly exchange setting information and communication data for the external device.

[0005] In recent years, a smartphone disclosed in Non-Patent Document 1 has become capable of connecting to two "Wi-Fi networks: Wi-Fi (registered trademark)" simultaneously using a technology called "Wi-Fi STA / STA simultaneous connection." This "Wi-Fi STA / STA simultaneous connection" makes it possible to specify and use another Wi-Fi network for each application without disconnecting the connection to the Wi-Fi network that is set and managed by the OS. The Wi-Fi network managed by the OS is called the "primary network," and the other Wi-Fi network is called the "secondary network."

[0006] In the above-mentioned Patent Documents 1 and 2, an Internet environment is maintained by a "primary network" in an application that communicates with an external device such as a printer via Wi-Fi. Then, while maintaining an Internet environment via the "primary network," it is possible to connect an external device via a "secondary network." Such communication technology is important. For example, in a smartphone with the Android (registered trademark) OS, a mechanism has been proposed that allows each application to connect to a "secondary network" separate from the "primary network" managed by the OS. [Prior art documents] [Patent documents]

[0007] [Patent Document 1] JP 2016-18285 A [Patent Document 2] JP 2017-10089 A [Non-patent literature]

[0008] [Non-Patent Document 1] AOSP Docs Wi-Fi STA / STA Concurrency, Internet<URL:https: / / source.android.com / docs / core / connect / wifi-sta-sta-concurrency> Summary of the Invention [Problem to be solved by the invention]

[0009] In this way, it is assumed that the "secondary network" is designated and used by the app. For this reason, in "inter-app cooperation," the following problems may occur in the cooperation operation when each app communicates with an external device via Wi-Fi. In other words, when the "first app" that is the source of cooperation communicates with an external device via Wi-Fi using a "secondary network," the "second app" that is the destination of cooperation usually communicates using a "primary network." For this reason, a situation may arise in which it becomes impossible to communicate with an external device via Wi-Fi using a preferred network.

[0010] In other words, when content data is output externally through "inter-app linkage," if a "secondary network" is set in the first app that is the link source, it is assumed that the data will also be output to the "secondary network" when it is output externally from the second app that is the link destination. However, if the same "secondary network" as the first app is not set in the second app, such external output cannot be performed. Here, the external output of content data refers to sending data to an external device, such as selecting an image in an image viewing app, specifying it to print, and then transferring it to a printer driver app to send it to the printer and print it.

[0011] An object of the present invention is to provide a mechanism for more appropriately transmitting data to an external device when a cooperation source application in which a second network is set performs inter-application cooperation with a cooperation destination application. [Means for solving the problem]

[0012] In order to achieve the above object, the present invention provides A first application program, At least one computer A setting means for setting a second network different from a first network managed by an operating system (OS) as a connection destination when transmitting data to an external device; A receiving means for receiving an instruction for linking with a second application program; When processing of the second application program is executed based on the instruction for collaboration received by the receiving means, the processing means functions as a specific process for enabling the second application program to obtain connection information for connecting to the second network set by the setting means. Effect of the Invention

[0013] According to the present invention, when a cooperation source application in which a second network is set performs inter-application cooperation with a cooperation destination application, data transmission to an external device can be performed more appropriately. [Brief description of the drawings]

[0014] [Figure 1] FIG. 2 is a configuration diagram of an information processing device (mobile terminal) according to an embodiment of the present invention. [Diagram 2] FIG. 2 is an explanatory diagram of inter-application cooperation examples (parts 1 to 3) according to the embodiment of the present invention. [Diagram 3] 11 is a flowchart showing "processing executed when an operation for co-launching an application B while an application A is running" by the information processing apparatus according to the embodiment of the present invention. [Figure 4] 13 is a flowchart showing "processing executed when application B is started" by the information processing device according to the embodiment of the present invention. [Diagram 5] FIG. 2 is an explanatory diagram of a “store app display screen” of the information processing device according to the embodiment of the present invention. [Figure 6] FIG. 2 is an explanatory diagram of a "display screen by application A" of the information processing device according to the embodiment of the present invention. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0015] Hereinafter, an embodiment of the present invention will be described in detail with reference to the drawings. However, the configurations described in the following embodiments are merely examples, and the scope of the present invention is not limited by the configurations described in the embodiments. In this specification, a "source application" and a "destination application" correspond to a "source application" and a "destination application," respectively. In addition, there are cases where either a "source application (destination application)" or a "source application (destination application)" is used, and cases where both are used.

[0016] <Embodiments of the present invention> First, an information processing device to which the present invention is applied will be described. In this embodiment, a portable terminal 100 (mobile terminal) will be described as an example of an information processing device, but the information processing device is not limited to this. Examples of information processing devices include various devices in which a program can be installed, such as a notebook PC, a tablet terminal, a PDA (Personal Digital Assistant), a digital camera, a music playback device, and a television. In this embodiment, a smartphone is exemplified as an example of the portable terminal 100. A smartphone is a multi-function mobile phone equipped with various functions such as a camera function, an Internet browser function, and an email sending / receiving function in addition to the function of a mobile phone, and is an example of a mobile terminal.

[0017] <FIG. 1: Configuration of a mobile terminal 100 as an information processing device> FIG. 1 is a configuration diagram showing a configuration example of a mobile terminal 100 as an information processing apparatus according to an embodiment of the present invention. FIG. 1(a) shows a hardware configuration example of the mobile terminal 100, and FIG. 1(b) shows a software configuration example of the mobile terminal 100. The mobile terminal 100 includes a CPU 101, an operation unit 102, a network interface 103, a memory 104, a display unit 105, and a storage device 106, and these components are connected via a bus 114 so as to be able to transmit and receive necessary information to and from each other.

[0018] <CPU101: Operation unit 102: Memory 104> The CPU 101 controls the entire mobile terminal 100. The operation unit 102 is for a user to give an instruction to the mobile terminal 100. The operation unit 102 is realized by, for example, a physical button or a touch panel having soft buttons. The memory 104 has a work area for the CPU 101 and is used as a temporary storage area for various received data, stores various data, or serves as a deployment area for programs, etc. The memory 104 is realized by, for example, a RAM (Random Access Memory) or the like.

[0019] <Display unit 105> The display unit 105 is a display device that displays various information, and is realized by, for example, a liquid crystal panel. In this embodiment, the operation unit 102 and the display unit 105 are configured to be shared by one "touch device" that can accept operations by the user and display various information. In other words, the operation unit 102 and the display unit 105 are configured to be shared by one "touch display". Therefore, the user can operate the mobile terminal 100 by performing an operation of tracing the touch display with a finger or a tap operation of touching a display button, thereby giving various instructions to the mobile terminal 100. Note that the user can also give various instructions to the mobile terminal 100 by operating the touch display with an operation other than a finger, for example, a "pen for electrostatic touch panel" such as a stylus pen. Note that the operation unit 102 and the display unit 105 do not have to be configured by the same device, and for example, the operation unit 102 may be configured to have physical input buttons or the like.

[0020] <Storage device 106> Storage device 106 stores various control programs such as applications, an operating system (hereinafter also referred to as "OS"). Storage device 106 is realized by a non-volatile memory device such as a flash memory. CPU 101 deploys the control program stored in storage device 106 in memory 104 and executes the deployed control program to realize processing required for mobile terminal 100. Various processing related to the present invention is included in this required processing. Therefore, this control program itself is subject to the present invention.

[0021] <Network Interface 103> The network interface 103 is an interface for connecting to a network. The mobile terminal 100 can be connected to the network via the network interface 103, and can be configured to be connected to external devices such as printers via the connected network and also to be connected to the Internet etc. For example, the mobile terminal 100 is connected to the Internet access point (AP) 107 by the network interface 103. There are connection modes such as connecting to an external device A108 via the access point 107, and a connection mode in which an external device B109 such as a printer starts the "access point mode" and is directly connected to the network interface 103. The mobile terminal 100 can perform data communication with the external device A108 and the external device B109 via the network interface 103 in any connection mode.

[0022] Here, when transmitting and receiving data with the external device A108 via the Internet access point 107, both performing it by Internet communication such as downloading print data from the cloud server and performing it by data communication with the external device B109 are possible. On the other hand, when the external device B109 is in the "access point mode" and is directly connected to the network interface 103, it does not have an Internet routing function. That is, generally when the external device B109 operates in the "access point mode", the external device B109 does not have an Internet routing function. For this reason, when there is no other connection method such as cellular data communication in the mobile terminal 100, Internet communication may be restricted, which has been a problem.

[0023] <STA / STA Simultaneous Connection Function: Primary Network: Secondary Network> In recent years, in order to address this problem, some OSs installed in the mobile terminal 100 have been proposed that allow simultaneous connection to multiple access points (corresponding to the access point 107 and external device B 109 in FIG. 1) via the network interface 103. This function is called a "STA / STA simultaneous connection function." A first network connection (called a "primary network") connects to the access point 107 that is capable of Internet communication. A second network connection (called a "secondary network") also makes it possible to communicate with external device B 109 that has an access point running.

[0024] Usually, a connection to a "secondary network" is made by the OS in response to an application's instruction, and is "enabled" only while the application that issued the instruction to the OS is running. In other words, there are measures in place to ensure that applications other than the application that issued the instruction to connect to the "secondary network" are not affected. For example, the Android (registered trademark) OS provides the above function.

[0025] <Figure 1(b): OS 110, store app 111, app A 112, app B 113> As shown in Fig. 1(b), in this embodiment, an operating system (OS) 110, a store application 111, an "application A112", and an "application B113" exist in the storage device 106 of the mobile terminal 100. Hereinafter, "application" will be simply referred to as "app", and "application A112" and "application B113" will be referred to as "app A112" and "app B113", respectively. Furthermore, "store application 111" will be referred to as "store app 111".

[0026] "Application A112" corresponds to a "first application," and "Application B113" corresponds to a "second application." In this embodiment, "Application A112" and "Application B113" are basically "linked application (launch source application)" and "linked application (launch destination application)," respectively. "Store application 111" is an application for downloading applications to mobile terminal 100.

[0027] The user selects a desired application using the "store application 111" and performs a predetermined operation (tapping a download button, authenticating a password, etc.) to download the selected application. This allows the selected application to be downloaded and installed on the mobile terminal 100. The user also performs a predetermined operation (tapping an "open" button, etc.) on a display button or the like displayed on the display screen of the display unit 105 by the "store application 111". This also allows an application already installed on the mobile terminal 100 to be launched via the "store application 111".

[0028] <Figure 5: Example of display screen by Store App 111> FIG. 5 is an explanatory diagram of an example of a display screen on the display unit 105 for the "store application 111". FIG. 5 is a display screen for downloading "application B" in a state in which "application B" is already installed in the mobile terminal 100. As described above, "application B" is started by a user tapping the "open button" 501. Note that "application A112" and "application B113" are applications that are installed in the mobile terminal 100 by the "store application 111" via a network or the like. However, "application A112" and "application B113" do not necessarily need to be installed via the "store application 111". For example, "application A112, application B113" may be installed from a storage medium or the like that stores "application A112, application B113", or may be stored in advance in the mobile terminal 100 when the mobile terminal 100 is purchased and delivered.

[0029] <App A112, App B113: "Printing app"> In this embodiment, "application A112" and "application B113" are applications that transmit a print job to a printer having a printing function and execute printing based on the transmitted print job. In this embodiment, "application A112" and "application B113" have a function of causing a printer to execute printing, but they may have various other functions. As an example, "application A112" and "application B113" may have a function of transmitting a scan job to a scanner and executing scanning based on the transmitted scan job.

[0030] Furthermore, the "store application 111", "application A 112" and "application B 113" are operated via the OS 110. These pieces of software are stored in the storage device 106, and the CPU 101 loads them into the memory 104 and executes them.

[0031] <Cooperation between app A112 and app B113> In this embodiment, "application A112" and "application B113" operate in cooperation with each other. Specifically, "application B113" operates by using information generated by "application A112". Hereinafter, the cooperation between applications is referred to as "inter-application cooperation". Below, examples of inter-application cooperation in each use case will be described. "application A112" is an application that is a cooperation source, and "application B113" is an application that is a cooperation destination.

[0032] <Figure 2(a), Figure 2(b), Figure 2(c): Examples of inter-app integration> Fig. 2(a) is an explanatory diagram showing "inter-application cooperation" when "application B113" is "co-launched" as a cooperation destination in a state where "application A112" and "application B113" are already installed in the mobile terminal 100. Fig. 2(b) is an explanatory diagram of "inter-application cooperation" when "application B113" is "independently launched" in a state where "application A112" and "application B113" are already installed in the mobile terminal 100. Fig. 2(c) is an explanatory diagram of "inter-application cooperation" when "application B113" is "co-launched" in a state where "application B113" is not installed in the mobile terminal 100.

[0033] Note that "single launch" refers to "app B113" being launched by, for example, a user tapping an app icon on a home screen displayed by the OS110 on the display unit 105. Alternatively, "single launch" refers to store app 111 being launched by a user operation on the display screen of the display unit 105. Meanwhile, "co-launch" refers to "app B113" being launched by an app other than "store app 111" being launched by a user operation on the display screen of the display unit 105.

[0034] In this embodiment, "app B113" is "launched in cooperation" in response to a user operation on a display screen displayed by "app A112" on display unit 105. When "launched in cooperation" is performed, information on "app A112" that is the source of the cooperation is notified, so that CPU 101 can know whether "app B113" that is the application to be coordinated has been "launched in cooperation". Note that "launch in cooperation" refers to, for example, having another application execute a function that cannot be executed by "app A112". Alternatively, "launch in cooperation" is performed to encourage the use of another application (app B113) when a process executed by "app A112" is to be taken over by another application.

[0035] <Figure 6: Display screen by app A112> Fig. 6 is an explanatory diagram of an example of a display screen on which "application A112" is displayed by the display unit 105. In the example of the display screen in Fig. 6, various icons denoted by reference numerals 601 to 609 are displayed. "Icon 601 (printer setting icon)" indicates a printer registered in "application A112". Printer registration will be described later. "Icon 602" and "Icon 603" are buttons for sending a print job to a printer registered in "application A112" to print "photos" and "documents" stored in the mobile terminal 100.

[0036] "Icon 604" is a button for sending a scan job to a multifunction printer or the like registered in "app A112" to execute scanning. "Icon 605" is a button for executing a cloud printing function that causes a printer to print image data stored in a cloud server (external server). "Icon 606" is a button for sending a copy job to a printer registered in "app A112" to create a copy of an original or the like. "Icon 607" is a button for sending a print job to a printer to execute printing on disc media. For example, in order to execute printing on disc media, an app other than "app A112" (an app for printing on disc media) may be required.

[0037] In such a case, when the "disk media printing application" is installed in the mobile terminal 100 and the CPU 101 receives a user operation on the icon 607, the CPU 101 "links and starts" the "disk media printing application." The "icon 608" is a button for launching a Web page showing an operation method for the "application A112." The "icon 609" is a button for "linking and starting" the "application B113." When the "application B113" is installed in the mobile terminal 100 and the CPU 101 receives a user operation on the icon 609, the CPU 101 "links and starts" the "application B113." For example, when a printer that is not compatible with the "application B113" is registered in the "application A112," the CPU 101 grays out or hides the icon 609. This makes it possible to prevent the CPU 101 from receiving a user operation on the icon 609.

[0038] <<Figure 2(a): Inter-app collaboration part 1>> An example of "inter-app cooperation" will be described below with reference to Fig. 2(a), Fig. 2(b), and Fig. 2(c). First, a description will be given with reference to Fig. 2(a). Fig. 2(a) shows a case where "app B113" is "co-launched" via "app A112" in a state where "app A112" and "app B113" are already installed in the mobile terminal 100.

[0039] First, when CPU 101 specifies that "app B113" is to be "linked and started" by, for example, accepting an operation by a user on icon 609 (see FIG. 6) through operation unit 102, CPU 101 stores and saves "shared information 202" in "information sharing area 201." "Shared information 202" is information that CPU 101 can refer to and use both when "app A112" and "app B113" are operating.

[0040] The "shared information 202" is information for performing data communication with an external device such as a printer using a "secondary network" set in the application A112. The "shared information 202" includes "connection information", "printer information", and the like. The "connection information" is information for connecting to a "secondary network", such as the SSID of the "secondary network" set in the application A112, the IP address of the external device (AP), the MAC address of the external device (AP), and a password (network key, authentication code) for connecting to the SSID. The "printer information" is information about the printer, such as the type of printer and the network address of the printer (IP address, MAC address of the printer). Note that the "connection information" is synonymous with the "network information". For example, in S403 in FIG. 4, the "connection information" is described as "network information". Therefore, it may be described as "network information (connection information)" or "connection information (network information)". In addition, the "connection information" and the "printer information" may be collectively referred to as "registration information". In this embodiment, the shared information 202 also includes all other information that "application A 112" and "application B 113" need to refer to, store, and save.

[0041] The information sharing area 201 is a storage area in which the shared information 202 is stored. The information sharing area 201 may be, for example, a "common folder" that can be accessed when "application A112" and "application B113" are operating, or may be something like a clipboard or pasteboard managed by the OS. Basically, the information sharing area 201 is provided in the storage device 106 or the memory 104.

[0042] The "common folder" is, for example, an area included in the storage device 106 or memory 104, but may be provided in a storage area included in an external recording medium such as an SD card or HDD, or may be provided in a storage area of ​​a server connected to a network. There is no restriction on the storage mode of the shared information 202 as long as information usable in both the operation of "application A112" and the operation of "application B113" can be stored and saved. The timing when the information sharing area 201 becomes full of the shared information 202 and is deleted may be, for example, the timing when the shared information 202 is used, or the timing when the startup of the "application B113" that has been "started in cooperation" is completed. When the CPU 101 "starts in cooperation" the application B113, it refers to the information sharing area 201 via the "application B113" to acquire the shared information 202, and executes processing based on the shared information 202.

[0043] As described above, "application A112" and "application B113" have a printing function that causes a printer with which mobile terminal 100 can communicate to print an image. "application A112" and "application B113" can execute the printing function by searching for printers near mobile terminal 100 and registering a printer (printing device) to be used for printing from among the printers found. Here, "searching for a printer" is the same as obtaining a response from an external device (printer) connected to "access point 107" connected via network interface 103 described above.

[0044] The process of registering a printer in an application is, in other words, a process (setting process) in which the application sets the communication mode with the printer. The "setting process" is a process of setting a "secondary network" different from the "primary network" managed by the operating system (OS110) as the connection destination when sending data to an external device (printer). More specifically, the "setting process" is a process of setting the SSID (Service Set Identifier) ​​of the "secondary network", etc.

[0045] In the example of "inter-application cooperation" shown in FIG. 2(a), for example, "printer information" and "connection information (network information)" registered in "application A112" can be used by "application B113" as shared information 202. As described above, "printer information" is information related to a printer, such as the printer model name, MAC address, IP address, Bonjour name, etc. Then, CPU101 performs a process for "application B113" to register "printer information" registered in "application A112" in "application B113" as a process based on the shared information 202 at the time of "cooperative start-up" of "application B113". By adopting such a cooperation mode, CPU101 can register a printer in "application B113" without causing "application B113" to execute a process for searching for a printer, for example. Similarly, for "connection information (network information)", CPU101 performs a process for "application B113" to register "connection information" registered in "application A112" in "application B113".

[0046] On the other hand, the "connection information" stored by "application A112" in information sharing area 201 basically indicates a connection to an access point other than the access point (primary network) set in OS110 when performing inter-application cooperative operation. One example of this is when a "direct connection" is used. A "direct connection" is a connection mode in which the printer starts up an "access point mode" and functions as an access point to directly connect the printer to the mobile terminal 100. In a "direct connection," the printer and the smartphone (mobile terminal 100) directly communicate wirelessly, which has the advantage that wireless communication is stable and not affected by the connection performance of an external access point.

[0047] When using this function to establish a communication connection with a printer (external device), a connection via an access point is established as the "primary network", and a "direct connection" is established as the "secondary network". As described above, the "secondary network" is only "valid" for the application that instructed the connection. In such a case, it is necessary to add new "connection information" that indicates a method of connecting to the "secondary network" to the "connection information" included in the shared information 202. This is because if the "connection information" of the "secondary network" is not included in the shared information 202 stored in the information sharing area 201, the linked "application B113" will not be able to connect to the "secondary network" and will only be able to use the "primary network".

[0048] If only the "primary network" is available, communication with the printer is not established, and the CPU 101 must start the search process again. For this reason, it is very important for the CPU 101 to add the "shared information 202" of the "secondary network" to the shared information 202 and store it in the information sharing area 201 in order to perform the operation of inter-application cooperation that communicates with an external device that performs "STA / STA connection". If all of the registered information does not fit in the information sharing area 201, the minimum information required to transmit data to the printer (external device) may be stored in the information sharing area 201 as the shared information 202. For example, the "connection information" to the "secondary network" basically includes the "SSID" and "password" (network key, authentication code), but only the "SSID" may be stored in the information sharing area 201. In this case, the "password" may be obtained by the CPU 101 prompting the user to enter it when necessary. The same is true for the "printer information", and at the very least, only the IP address of the printer may be stored in the information sharing area 201.

[0049] <<Operational process of app integration part 1>> A specific process of inter-application cooperation No. 1 is as follows. First, when "application A112" which is an application from which cooperation is to be performed uses a "secondary network" different from the "primary network" managed by the OS110, the CPU101 executes the process described below to realize the process. That is, "application A112" records shared information 202 such as "printer information" and "connection information" which are information for performing data communication with an external device such as a printer using the "secondary network" in the information sharing area 201 of the memory 104 (recording step). Note that a storage area of ​​the storage device 106 may be used instead of the memory 104. Next, "application A112" starts "application B113" which is an application to which cooperation is to be performed (startup step).

[0050] Next, the started "application B113" instructs the OS110 to connect to the "secondary network" set in application A112 based on the shared information 202 stored in the information sharing area 201 (instruction step). Then, "application B113" refers to the shared information 202 stored in the information sharing area 201, connects to the "secondary network" set in application A112, and transmits data to the printer (transmission step). Here, the shared information 202 includes "connection information" such as the SSID (Service Set Identifier) ​​and password of the "secondary network" set in application A112. Furthermore, the shared information 202 includes "printer information" (destination information) such as the type of printer, the IP address, MAC address, etc. of the printer (external device to which data is to be transmitted) on the secondary network set in application A112.

[0051] According to this operation, when the cooperation source application "application A112" that performs the inter-application cooperation starts the cooperation destination application "application B113", the following becomes possible. That is, when the inter-application cooperation operation is performed, the information of the network set in the cooperation source application "application A112" can be passed on to the cooperation destination application "application B113". Thus, the inter-application cooperation operation allows data transmission to the printer (external device) to be performed appropriately through the secondary network set in application A.

[0052] <<Figure 2(b): Inter-app linkage part 2>> Next, a description will be given with reference to Fig. 2(b). Fig. 2(b) shows a state in which "application B113" is "activated independently" without going through "application A112" in a state in which "application A112" and "application B113" are already installed in the mobile terminal 100. The operation of the CPU 101 will be described below.

[0053] 2(a), when the CPU 101 accepts a user's operation on the operation unit 102 for example on an icon 609 (see FIG. 6) and specifies that "application B113" is to be "co-launched," the CPU 101 stores and saves the shared information 202 in the information sharing area 201. Then, in the inter-application cooperation example of FIG. 2(b), the CPU 101 refers to the storage contents of the information sharing area 201 even when "application B113" is "independently launched." Then, when the shared information 202 is stored and saved in the information sharing area 201, the CPU 101 acquires the shared information 202 and executes processing based on the shared information 202.

[0054] In this way, in the second inter-application cooperation, regardless of whether "application B113" is "independently launched" or "in cooperation," when "application B113" is launched, CPU101 refers to information sharing area 201. This allows inter-application cooperation with "application A112" to be executed whether "application B113" is "independently launched" or "in cooperation."

[0055] <<Figure 2(c): Inter-app collaboration No. 3>> Next, a description will be given with reference to Fig. 2(c). Fig. 2(c) shows a case where "app B113" is not installed in mobile terminal 100, and a user operation is performed on "app A112" to "link and launch" "app B113" on the display screen of display unit 105. The operation of CPU 101 will be described below. Even if "app A112" performs a user operation on the display screen of display unit 105 to "link and launch" "app B113", since "app B113" is not installed in mobile terminal 100, CPU 101 naturally cannot launch "app B113".

[0056] Basically, it is necessary to use the store application 111 in order to install the "application B113" in the mobile terminal 100. Therefore, when the "application B113" is not installed in the mobile terminal 100 and a user operation is performed on the display screen of the display unit 105 to "link and start" the "application A112" to the "application B113", the CPU 101 executes the following process.

[0057] First, before starting the store application 111, the CPU 101 causes the "application A 112" to store and save the shared information 202 in the information sharing area 201. Next, the CPU 101 starts the store application 111. The CPU 101 starts the store application 111 using identification information (application identification information 203) that identifies an application to be downloaded (hereinafter, referred to as the "target application"). As a result, a display screen for downloading the "target application" is displayed on the display unit 105.

[0058] At this time, CPU 101 starts store application 111 by using application identification information 203 in which "application B113" is specified as the target application. As a result, a display screen for downloading "application B113" is displayed on display unit 105, and CPU 101 accepts a user's operation on operation unit 102 and downloads "application B113". Note that at this time, CPU 101 may automatically download "application B113" without accepting a user's operation on operation unit 102.

[0059] After that, CPU 101 accepts a user operation on an application icon corresponding to "application B113" on the home screen of display unit 105 and a user operation on a display screen displayed by store application 111 on display unit 105 (such as an operation on button 501 in FIG. 5). Then, CPU 101 starts up "application B113" in response to these operations, and executes the same process as that shown in FIG. 2(b). That is, CPU 101 executes the process when "application B113" is "independently started up."

[0060] In this way, the CPU 101 performs the following operation in a state in which the "application B113" is not installed in the mobile terminal 100. That is, when a user operation for linking and starting up the "application B113" is performed on the display screen displayed on the display unit 105 by the "application A112", the CPU 101 downloads the "application B113" by the store application 111.

[0061] When "app B113" is launched in a coordinated manner, CPU 101 can make "app A112" and "app B113" work together by using shared information 202. In the coordinated manner shown in FIG. 2(c), as described with reference to FIG. 2(b), CPU 101 refers to information sharing area 201 even at the time of "independent launch". For this reason, even when "app B113" is "independently launched" despite a user operation for "coordinated launch" of "app B113", "app A112" and "app B113" can operate in a coordinated manner.

[0062] <<Figure 3: "Processing to be executed when a linked launch operation of app B is accepted while app A is running">> FIG. 3 is a flowchart showing a process executed by the mobile terminal 100 when the "app B113" accepts an operation for "linked launch" while the "app A112" is operating. The process shown in this flowchart is realized, for example, by the CPU 101 reading the program of the "app A112" stored in the storage device 106 or the like into the memory 104 and executing it. The process shown in this flowchart is started in a state where a display screen for executing the function of the "app A112" is displayed on the display unit 105 by the "app A112". Here, as a function of the "app A112", a secondary network can be set as a network to be used by the app A112, independent of the primary network managed by the OS (i.e., as a network unrelated to the primary network managed by the OS). More specifically, at least the SSID of the secondary network can be set according to a user operation. In addition, a password (network key, authentication code) of the secondary network, the BSSID (MAC address) of the connection destination AP, a nickname, etc. may be set. The secondary network is set as follows. It can also be said that this is the setting of a second access point (AP) that is set separately from the first access point (AP) connected in the primary network. The primary network and the secondary network are basically assumed to be different networks, but they do not necessarily have to be different. The OS connects to a suitable AP depending on the radio wave conditions, etc. (connects the suitable network as the primary network), but it is acceptable that the resulting network is the same as the secondary network set in the application A112.

[0063] In S301, the CPU 101 accepts a user operation (coordination instruction) of “coordination start” of “application B 113.” Specifically, the CPU 101 accepts the “coordination instruction” by a user's touch operation on the icon 609 on the operation unit 102, or the like.

[0064] In S302, CPU 101 determines whether "application A112" is using a "secondary network." If CPU 101 determines that "application A112" has set a "secondary network" and is using (enabling) that secondary network (Yes), the process proceeds to S303. On the other hand, if CPU 101 determines that "application A112" is not using a "secondary network" (a secondary network has not been set, or a secondary network has been set but disabled) (No), S303 to S307 are skipped (i.e., S303 to S304 are not performed) and the process proceeds to S308. The fact that "application A112" is not using a "secondary network" means that it can communicate with the printer through the network set by OS 110, and there is no need to perform any special processing for the following processing.

[0065] Since a connection to the "secondary network" is made by an instruction from an application, a flag or the like is set in memory 104 or the like to store the fact that the application that issued the instruction is itself using the "secondary network." CPU 101 may refer to this to make the determination in S302. Alternatively, CPU 101 may make the determination in S302 by inquiring of OS 110.

[0066] Furthermore, if there is a difference between the network information (primary network information) set by the OS 110 and the network information currently being used by "application A112," it may be determined that "application A112" is using a "secondary network." Here, if the CPU 101 determines that the "secondary network" is being used (Yes in S302), "application A112" is communicating with the printer via a network other than the network set by the OS 110.

[0067] In S303, CPU 101 acquires the SSID of the "secondary network" used by "application A 112." In S304, CPU 101 stores the SSID acquired in S303 (connection information for connecting to the secondary network set in application A) in information sharing area 201. This SSID is the SSID of the access point of the secondary network set in application A. Through this process (specific process), connection information for connecting to the secondary network set in application A is acquired (notified) to application B, which is the cooperation destination.

[0068] In S305, CPU 101 determines whether or not the "password" of the "secondary network" can be obtained. If CPU 101 determines that the "password" can be obtained (Yes), the process proceeds to S306. On the other hand, if CPU 101 determines that the "password" cannot be obtained (No), the process skips S306 and S307 and proceeds to S308. In S306, CPU 101 obtains the "password" of the "secondary network" used by "application A112". In S307, CPU 101 stores the "password" obtained in S306 in information sharing area 201.

[0069] In S308, CPU 101 records the above-mentioned "printer information" in information sharing area 201. In this embodiment, the "printer information" is recorded in information sharing area 201 regardless of whether S302 is "Yes" or "No." In S308, CPU 101 further stores information that identifies (instructs) the processing target data (data to be printed, such as an image or a web page) for which linking has been instructed, in information sharing area 201. In this embodiment, the processing target data is, for example, data to be printed. As another example, if the application that originates the linking is image viewing software and the linking instructs to print the image that was being viewed on a printer, the information that identifies the processing target data is information that identifies the image that was being viewed (information indicating the save destination and file name, etc.).

[0070] In S309, CPU 101 determines whether or not "application B113" is installed in mobile terminal 100. If CPU 101 determines that "application B113" is installed in mobile terminal 100 (Yes in S309), the process proceeds to S310. On the other hand, if CPU 101 determines that "application B113" is not installed in mobile terminal 100 (No in S309), the process proceeds to S310.

[0071] In S310, the CPU 101 starts up the "application B 113." After that, the CPU 101 continues to execute the process shown in FIG.

[0072] In S311, the CPU 101 launches the store application 111 by a known method using, for example, a "URL scheme." At this time, the store application 111 launches the store application 111 by adding "application identification information 203" that identifies the "application B113" to the "URL scheme." As a result, a screen for downloading the "application B113" is displayed on the display unit 105 together with the launch of the store application 111. In this state, the CPU 101 is able to download and install the "application B113" and launch the "application B113" in response to receiving a user operation using the operation unit 102 for downloading the "application B113." After this, the CPU 101 continues to execute the process shown in FIG. 4, which will be described later, by the "application B113."

[0073] <<Figure 4: "Process to be executed when app B is launched">> 4 is a flowchart showing the flow of processing executed when the mobile terminal 100 starts up "application B113." This flowchart is realized, for example, by the CPU 101 reading the program of "application B113" stored in the storage device 106 or the like into the memory 104 and executing it. As with "application A112," a "secondary network" of "application B113" can be set as a function of "application B113." The secondary network of application B113 can be set independently of both the primary network and the secondary network of application A112. The primary network can also be called the first network, the secondary network of application A112 the second network, and the secondary network of application B113 the third network.

[0074] In S401, the CPU 101 starts up the "app B113." Note that the process in S401 is executed by the CPU 101 with a trigger such as acceptance of a user's operation using the operation unit 102 for "linked start" of the "app B113" via the "app A112." Alternatively, the trigger may be acceptance of an instruction to start up the "app B113" via the store app 111, or acceptance of an instruction to start up the "app B113" via the home screen of the display unit 105.

[0075] In S402, the CPU 101 determines whether or not the information sharing area 201 includes the shared information 202. If the CPU 101 determines that the information sharing area 201 includes the shared information 202 (Yes), the process proceeds to S403. On the other hand, if the CPU 101 determines that the information sharing area 201 does not include the shared information 202 (No), the process in Fig. 4 ends. In this case, it is assumed that the application B operates by connecting to the primary network or the secondary network set in the application B.

[0076] In S403, CPU 101 determines whether or not shared information 202 includes "network information (connection information)". This "network information (connection information)" corresponds to information (connection information) related to the "secondary network" of "app A112" stored in S304 or S307 of FIG. 3. If CPU 101 determines that shared information 202 includes "network information (connection information)" (Yes), the process proceeds to S404. On the other hand, if CPU 101 determines that shared information 202 does not include "network information (connection information)" (No), the process proceeds to S410. In this case, app B operates by connecting to the primary network or the secondary network set in app B.

[0077] In S404, CPU 101 displays on display unit 105 a dialog indicating that the network in the application will be changed. As described above, since there is a possibility that the "network information (connection information)" has not been stored, in this step (S404), the presence or absence of the information is confirmed and the process proceeds. Specifically, in S404, a dialog for changing the network used by "application B113" from the "primary network" set in OS110 to the "network information" acquired in S403 is displayed on display unit 105. Generally, when changing the network used by an application, user permission is often required, and a "permission dialog" is often displayed as a function of OS110.

[0078] In S405, the CPU 101 determines whether or not the user has performed an operation to consent to the network change. If an operation corresponding to "agree" has been performed, the process proceeds to S406. On the other hand, if an operation not corresponding to "agree" (an operation corresponding to refusal) has been performed, the process proceeds to S410.

[0079] In S406, CPU 101 determines whether or not "password" information is included in the "network information (connection information)" included in shared information 202. If it is determined that the "network information (connection information)" includes "password" information (Yes), the process proceeds to S407. If it is determined that the "network information (connection information)" does not include "password" information (No), the process proceeds to S408.

[0080] In S407, CPU 101 instructs OS 110 to connect to the "secondary network" based on the "network information (connection information)" acquired as sharing information 202 and the password included in sharing information 202 or the password acquired in S409 described below.

[0081] In S408, CPU 101 displays a dialog for inputting a "password" on display unit 105, and then in S409, CPU 101 acquires the "password" input by the user in the dialog. In other words, if it is determined that the "network information (connection information)" does not include password information (No in S406), CPU 101 needs to acquire the "password" input by the user via the dialog displayed on display unit 105 in S408 and S409.

[0082] By the process of S407 described above, when the "secondary network" is used in "app A112", it becomes possible for "app B113" to automatically participate in the same network. On the other hand, when it is determined in S403 that the shared information 202 does not include "network information (connection information)" (No), the process of S407 is not performed. Therefore, "app B113" operates in the network (primary network) set by OS110. In this way, in this embodiment, the network on which "app B113" operates is changed depending on the result of the determination in S403.

[0083] In S410, CPU 101 determines whether or not "printer information" (destination information of data to be processed) is included in shared information 202. If it is determined that "printer information" is included in shared information 202 (Yes), the process proceeds to S411. On the other hand, if it is determined that "printer information" is not included in shared information 202 (No), the process ends.

[0084] In S411, the CPU 101 acquires printer information from the shared information 202, and then in S412, the CPU 101 applies the acquired printer information to "application B 113." That is, in S412, the data to be processed (images, data to be printed such as web pages, etc.) instructed by "application A 112" is converted into print data that can be interpreted by the printer indicated by the printer information acquired in S411. Then, the data is sent to the printer indicated by the printer information acquired in S411.

[0085] When a printer is specified in "application A112," the same "printer information" is automatically applied to "application B113" through the processing in steps S410, S411, and S412 by the CPU 101, and the same printer becomes available. This makes it possible to realize seamless operation of the linked and launched "application B113" as if it were a part of "application A112."

[0086] Furthermore, once the "network information (connection information)" and "printer information" stored as shared information 202 have been applied to "app B113", "app B113" may store them. Then, the next time the app is started, the previously acquired information may be automatically applied without using shared information 202. In this case, the process shown in FIG. 4 needs to be executed by CPU 101 only the first time "cooperative start" is performed, and there is no need to execute the process shown in FIG. 4 each time "app B113" is started thereafter. This has the advantage of speeding up app start-up, etc.

[0087] <Specific operation example 1> If the "secondary network" is not set by the CPU 101, the CPU 101 executes the following process. That is, when the CPU 101 controls the "application B113" to be started, the CPU 101 does not notify the "application B113" of "connection information" for connecting to the "secondary network". For example, when the CPU 101 determines "No" in S302 of FIG. 3, S304 to S307 are skipped, and therefore the "connection information (network information)" to the "secondary network" is not stored in the "information sharing area 201". Therefore, when the CPU 101 controls the "application B113" to be started in S310, the CPU 101 determines "No" in S403 of FIG. 4, and the "connection information (network information)" to the "secondary network" is not notified to the "application B113". As a result, when the "secondary network" is not set by the CPU 101, the "connection information" is not notified to the "application B113" which is the linked application, and therefore unnecessary process does not need to be executed.

[0088] <Specific operation example 2> If the CPU 101 determines "No" in S302 of FIG. 3, S304 to S307 are skipped, and therefore "connection information (network information)" of the "application A112" to the "secondary network" is not stored in the "information sharing area 201". Therefore, the "application B113" cannot read the "network information (connection information)" in S402, 402, etc., and the "connection information (network information)" is not notified from the "application A112". In this case, the started "application B113" connects to the "primary network" or the secondary network set in the "application B113", and transmits data to be processed to an external device via the "network information" ("No" in S403, S410 to S412). As a result, the "application B113", which is the application to be coordinated, can make an appropriate network connection in response to the notification of the "connection information" from the "application A112", which is the application to be coordinated, and transmit data to an external device such as a printer.

[0089] In the above embodiment, when application B is able to obtain the connection information notified (shared) from application A, it is described that the application B connects to the secondary network of application A indicated by the notified connection information. However, this is not limited to the case where a secondary network is set in application B. Even when application A is able to obtain the shared connection information, the application B may connect to the secondary network of application B without connecting to the secondary network of application A, and transmit the data to be processed to the external device. This allows an appropriate connection to be made by giving priority to the reason for setting the secondary network of application B (for example, a reason for wanting to limit the networks that application B can connect to).

[0090] The user may intentionally set different secondary networks for each of "application A112" and "application B113" in the following case. That is, application A112 directly connects to a monochrome laser printer to mainly print documents, while application B113 directly connects to another color inkjet printer to edit and print photos. In this case, an SSID is set in the secondary network of application A112 to connect to the access point function of the monochrome laser printer. On the other hand, an SSID is set in the secondary network of application B113 to connect to the access point function of the color inkjet printer. In this case, if "application A112" and "application B113" are "activated in cooperation" and the network setting of "application A112" is registered in "application B113", the network setting of "application B113" will be changed to a network not intended by the user. For this reason, "application B113" stores and saves "unique setting information (e.g., at least 1 bit of information)" indicating whether or not the "secondary network" is set independently in memory 104, storage device 106, etc.

[0091] When the CPU 101 starts up "app B113", it acquires the above-mentioned "unique setting information" indicating whether or not a "secondary network" for "app B113" is set. Then, the CPU 101 may control whether or not to apply the network setting for "app A112" to "app B113" depending on the result of the determination. This makes it possible to prevent the network set in "app B113" from being changed unintentionally by the user. Furthermore, although the present embodiment focuses only on "network information", it is also possible to execute the same process for "printer information".

[0092] In the above embodiment, an example in which the link source application and the link destination application link when transmitting data to be processed to a printer as an external device has been described, but the present invention is not limited to this, and can be applied as long as data is transmitted to an external device after performing inter-application linkage. For example, the link source application may be a camera application, and the link destination application may be a photo album creation application. In this case, the data to be processed is image data captured by the camera application, and the information identifying the data to be processed shared via the shared information 202 is image information such as image data that can be arranged in a photo album. In addition, the present invention can be applied to a case in which the link source application is an image viewing software, the link destination application is an SNS (social networking service) application, information identifying an image as data to be processed is shared from the link source application, and an image is uploaded to a server from the link destination application (posted to an SNS). In addition, the present invention can be applied to a case in which the link source application is a text editor software, the link destination application is an email application, the data to be processed is text, and the link source application shares the text with the link destination application to send an email as information including the text to an external server. The external device to which the data to be processed is transmitted may also be a scanner, an MFP, a copy machine, etc.

[0093] In the above embodiment, when an operation for "linked startup" of "application B113" is performed on the display screen displayed by "application A112", the shared information 202 is stored in the information sharing area 201, but this is not limiting. For example, the shared information 202 may be stored in the information sharing area 201 at the timing when the CPU 101 receives or generates the shared information 202.

[0094] In addition, in the present embodiment, the "app A112" stores the shared information 202 in the information sharing area 201, and the "app B113" acquires the shared information 202 from the information sharing area 201, but the present invention is not limited to this. For example, the "app A112" may store the shared information 202 in a storage of a cloud server on the Internet, and the "app B113" may inquire about the storage and acquire the required information when the "app B113" is started. In this case, the shared information 202 may be acquired all at once, or the information included in the shared information 202 (such as "printer information") may be inquired one by one. In addition, when the "app B113" is started, the OS 110 may notify the shared information 202, and the "app A112" may notify the OS 110 of the contents of the shared information 202.

[0095] The above-described embodiments can also be realized by executing the following process. That is, software (programs) that realize the functions of the above-described embodiments are supplied to a system or device via a network or various recording media, and a computer (at least one processor such as a CPU or MPU) of the system or device reads and executes the program. The program may be executed by one computer or multiple computers in cooperation with each other.

[0096] Furthermore, it is not necessary to realize all of the above-mentioned processes by software. Some or all of the processes may be realized by hardware such as ASIC. Furthermore, the CPU is not limited to one that performs all the processes by one CPU, and multiple CPUs may appropriately cooperate with each other to share the processing load.

[0097] The above-mentioned various processes described as being executed by the CPU 101 may be performed by one piece of hardware, or the entire device may be configured to operate by sharing the processes among a plurality of pieces of hardware (e.g., a plurality of processors, circuits having various functions, etc.). Furthermore, the present invention has been described in detail based on the preferred embodiments, but the present invention is not limited to these specific embodiments, and various modified forms within the scope of the gist of the present invention are also included in the present invention. Furthermore, each of the above-mentioned embodiments merely shows one embodiment of the present invention, and each embodiment can be combined as appropriate.

[0098] In the above-mentioned embodiment, the present invention is applied to the mobile terminal 100, but the present invention is not limited to this example. For example, the present invention can be applied to any type of device as long as the device has a plurality of applications and an OS, and the plurality of applications work together to communicate data with an external device. That is, the present invention can be applied to various devices in which a program can be installed, such as at least a PC, a tablet terminal, a PDA (Personal Digital Assistant), a digital camera, a music playback device, and a television, as an information processing device. As described above, the external device can be not only electronic devices such as a printer, a scanner, an MFP, and a copier, but also a server that manages a searchable and viewable SNS connected to a network. In short, any device that can receive data and execute a corresponding process can be an external device.

[0099] <Additional Note> The disclosure of the present embodiment includes the following application program, recording medium, electronic device, control method thereof, inter-application cooperation device, method, and program. (Program 1) A first application program, At least one computer A setting means for setting a second network different from a first network managed by an operating system (OS) as a connection destination when transmitting data to an external device; A receiving means for receiving an instruction for linking with a second application program; An application program for functioning as a processing means for executing specific processing so that connection information for connecting to the second network set by the setting means is acquired by the second application program when processing of the second application program is executed based on the linkage instruction received by the receiving means. (Program 2) The setting means is The application program described in Program 1, which sets an SSID (Service Set Identifier) ​​of the second network. (Program 3) The application program described in Program 1, wherein the connection information includes an SSID of the second network. (Program 4) The application program described in Program 1, wherein the connection information includes a password for connecting to the second network. (Program 5) If the second network is not set by the setting means, The processing means includes: The application program according to Program 1, wherein when the processing of the second application program is executed based on the instruction for cooperation received by the receiving means, the specific processing is not executed. (Program 6) The second application program is When the linkage is executed based on the linkage instruction received by the receiving means, when the connection information is acquired based on the specific process by the first application program, connecting to the second network and transmitting data to an external device; An application program described in program 1, characterized in that if the connection information is not acquired based on the specific processing by the first application program, the application program connects to the first network and transmits data to the external device. (Program 7) the first network is a primary network managed by the operating system; The application program according to program 1, wherein the setting means sets the second network as a secondary network. (Program 8) The application program described in Program 1, wherein the first application program and the second application program are each a smartphone application program. (Program 9) a second application program, At least one computer an acquisition means for acquiring connection information for connecting to a network, which is notified from a first application program, when the second application program is executed based on an instruction for linking from the first application program; and a control means for controlling the connection to a second network different from a first network managed by an operating system (OS) as a connection destination based on the connection information acquired by the acquisition means, and for controlling the transmission of data to an external device. (Program 10) The application program according to program 9, wherein the connection information includes an SSID (Service Set Identifier) ​​of the second network. (Program 11) The control means further comprises: The application program described in program 9 is characterized in that, if the connection information acquired by the acquisition means does not include a password for connecting to the second network, an input screen for accepting password input by the user is displayed. (Program 12) When the first application program is started under control of the first application program, An application program described in program 9, characterized in that if the connection information is acquired by the acquisition means, the program connects to the second network and transmits data to the external device, and if the connection information is not acquired by the acquisition means, the program connects to the first network and transmits data to the external device. (Program 13) The at least one computer further functioning as a setting means capable of setting a third network different from the first network managed by the operating system (OS) as a connection destination when transmitting data to an external device; An application program described in program 9, characterized in that when the third network is set by the setting means, even if the connection information is acquired by the acquisition means, the control means controls to connect to the third network and transmit data to the external device. (Program 14) The application program described in Program 9, wherein the first application program and the second application program are each a smartphone application program. (Recording medium) 15. A computer-readable recording medium storing the application program according to any one of claims 1 to 14. (Electronic device 1) 15. An electronic device comprising the means according to any one of claims 1 to 14. (Electronic device No. 2) A setting means for setting, as a function of a first application program, a second network different from a first network managed by an operating system (OS) as a connection destination when transmitting data to an external device; a receiving means for receiving an instruction for linking with a second application program as a function of the first application program; a processing means for executing a specific process for causing the second application program to acquire connection information for connecting to the second network set by the setting means when processing of the second application program is executed based on the instruction for linking received by the receiving means, as a function of the first application program; an acquisition means for acquiring the connection information based on the specific process when the second application program is executed based on an instruction for cooperation from the first application program as a function of the second application program; and a control means for controlling, as a function of the second application program, to connect to the second network and transmit data to an external device based on the connection information acquired by the acquisition means. (Electronic device control method 1) A method for controlling an electronic device executed based on a first application program, comprising: A setting step for setting a second network different from a first network managed by an operating system (OS) as a connection destination when transmitting data to an external device; a receiving step of receiving an instruction for linking with a second application program; a processing step of executing a specific process for causing the second application program to acquire connection information for connecting to the second network set by the setting step when processing of the second application program is executed based on the instruction for collaboration received by the receiving step. (Control method for electronic devices 2) A method for controlling an electronic device executed based on a second application program, comprising: an acquisition step of acquiring connection information for connecting to a network, which is notified from the first application program, when the second application program is executed based on an instruction for cooperation from the first application program; and a control step of controlling the electronic device to connect to a second network different from a first network managed by an operating system (OS) as a connection destination based on the connection information acquired in the acquisition step, and to transmit data to an external device.

[0100] Although the preferred embodiment of the present invention has been described above, the present invention is not limited to the above-mentioned embodiment, and various modifications and changes are possible within the scope of the gist of the present invention. For example, the present invention can be realized by supplying a program that realizes one or more functions of the above-mentioned embodiment to a system or device via a network or a recording medium, and having a processor of a computer in the system or device read and execute the program. The present invention can also be realized by a circuit (e.g., ASIC) that realizes one or more functions. [Explanation of symbols]

[0101] 100 Mobile Devices 101 CPU 102 Operation section 103 Network Interface 104 Memory 105 Display section 106 Storage device 110 OS 112 App A 113 App B 201 Information sharing area 202 Shared Information 609 Icon (Linkage launch icon for App B)

Claims

1. A first application program, At least one computer, a setting means for setting a second network different from a first network managed by an operating system (OS) as a connection destination when transmitting data to an external device; A receiving means for receiving an instruction to link with a second application program; a processing means for executing a specific process for causing the second application program to acquire connection information for connecting to the second network, which is set by the setting means, when processing of the second application program is executed based on the instruction for linking received by the receiving means; An application program to function as a

2. The setting means is 2. The application program according to claim 1, further comprising: setting an SSID (Service Set Identifier) ​​of the second network.

3. The application program according to claim 1 , wherein the connection information includes an SSID of the second network.

4. 2. The application program according to claim 1, wherein the connection information includes a password for connecting to the second network.

5. If the second network is not set by the setting means, The processing means includes:

2. The application program according to claim 1, wherein when the processing of the second application program is executed based on the instruction for cooperation accepted by the accepting means, the specific processing is not executed.

6. The second application program is When the linkage is executed based on the linkage instruction received by the receiving means, When the connection information is acquired based on the specific process by the first application program, a connection is made to the second network and data is transmitted to an external device; The application program according to claim 1, characterized in that if the connection information based on the specific processing by the first application program is not acquired, the application program connects to the first network and transmits data to the external device.

7. the first network is a primary network managed by the operating system; 2. The application program according to claim 1, wherein the setting means sets the second network as a secondary network.

8. The application program according to claim 1 , wherein the first application program and the second application program are each an application program for a smartphone.

9. a second application program, At least one computer, an acquisition means for acquiring connection information for connecting to a network, which is notified from a first application program, when the second application program is executed based on an instruction for linking from the first application program; An application program for functioning as a control means that controls connection to a second network different from a first network managed by an operating system (OS) as a connection destination based on the connection information acquired by the acquisition means, and transmits data to an external device.

10. The connection information is 10. The application program of claim 9, further comprising a Service Set Identifier (SSID) of the second network.

11. The control means further comprises: The application program according to claim 9, characterized in that if the connection information acquired by the acquisition means does not include a password for connecting to the second network, the application program controls to display an input screen for accepting input of a password by a user.

12. When the application program is started based on the control of the first application program, The application program according to claim 9, characterized in that if the connection information is acquired by the acquisition means, the application program connects to the second network and transmits data to the external device, and if the connection information is not acquired by the acquisition means, the application program connects to the first network and transmits data to the external device.

13. The at least one computer a setting unit that can set a third network, which is different from the first network and is managed by the operating system (OS), as a connection destination when transmitting data to an external device; The application program according to claim 9, characterized in that when the third network is set by the setting means, even if the connection information is acquired by the acquisition means, the control means controls to connect to the third network and transmit data to the external device.

14. The application program according to claim 9 , wherein the first application program and the second application program are each a smartphone application program.

15. 15. A computer-readable recording medium storing the application program according to any one of claims 1 to 14.

16. 15. An electronic device comprising the means according to any one of claims 1 to 14.

17. A setting means for setting, as a function of a first application program, a second network different from a first network managed by an operating system (OS) as a connection destination when transmitting data to an external device; a receiving means for receiving an instruction for linking with a second application program as a function of the first application program; a processing means for executing a specific process for causing the second application program to acquire connection information for connecting to the second network set by the setting means when processing of the second application program is executed based on the instruction for linking received by the receiving means, as a function of the first application program; and an acquisition means for acquiring the connection information based on the specific process when the second application program is executed based on an instruction for cooperation from the first application program as a function of the second application program; and a control means for controlling, as a function of the second application program, to connect to the second network and transmit data to an external device based on the connection information acquired by the acquisition means.

18. A method for controlling an electronic device executed based on a first application program, comprising: a setting step capable of setting a second network different from a first network managed by an operating system (OS) as a connection destination when transmitting data to an external device; a receiving step of receiving an instruction for linking with a second application program; a processing step of executing a specific process so that, when processing of the second application program is executed based on the instruction for collaboration received by the receiving step, the second application program acquires connection information for connecting to the second network set by the setting step.

19. A method for controlling an electronic device executed based on a second application program, comprising: an acquisition step of acquiring connection information for connecting to a network, which is notified from a first application program, when the second application program is executed based on an instruction for cooperation from the first application program; and a control step of controlling the electronic device to connect to a second network different from a first network managed by an operating system (OS) as a connection destination based on the connection information acquired in the acquisition step, and to transmit data to an external device.

Citation Information

Patent Citations

  • Portable terminal equipment, print setting method, and print setting program

    JP2016018285A

  • Display screen control system

    JP2017010089A