Information processing program, information processing apparatus and information processing method

The information processing apparatus includes: a search unit configured to search an application, which satisfies a condition; a data share unit configured to output location information; and a computer controlled to function as: a first request control unit that requests with a first condition; a first reception unit that receives first application information, satisfying the first condition; a second request control unit that requests with a second condition; a second reception unit that receives second application information satisfying the second condition; a display control unit that displays options to receive an operation of selecting any one of the application indicated by the first application information and the second application information; and an output unit that designates a selected application corresponding to the selected options and outputs location information.

CROSS-REFERENCE TO RELATED APPLICATION

This application claims priority from Japanese Patent Application No. 2011-196650 filed on Sep. 9, 2011, the entire subject matter of which is incorporated herein by reference.

TECHNICAL FIELD

This disclosure relates to an information processing program, an information processing apparatus and an information processing method.

BACKGROUND

There is a mobile terminal having a function that is called as a ‘share function.’ The share function is a function of transferring information (for example, file path) indicating a location of data processed by one application to an application designated as a data output destination and enable the application of the data output destination to process the corresponding data. For example, when image data is captured by a digital camera embedded in the mobile terminal and a JPEG file is made from the image data by a camera application, it is possible to transfer a file path of the JPEG file to an electronic mail application and transmit with attaching the same to an electronic mail by the share function. According to the share function, it is possible to interlock a plurality of applications and to thus enable the mobile terminal to perform various processing. In the meantime, the application that processes the JPEG file is not limited to the electronic mail application, and there may be a variety of applications. For example, the related art discloses a technology of starting different JPEG applications, depending on folders in which the JPEG files are stored.

SUMMARY

In the meantime, it is possible to search the application, which can be designated as the data output destination, by using a function of an operating system (abbreviated to as OS) installed in the mobile terminal. Here, search conditions of the application include a search condition, in which designates a data kind capable of being processed by each application, a search condition, in which designates a processing kind of processing capable of being performed by each application, and the like.

For a developer of an application installed in the mobile terminal, with considering the cost to be consumed for the developing and a burden, it is preferable to configure an application so that an application of the data output destination can be searched by using a search function of the OS installed in the mobile terminal. On the other hand, the search function of the OS has a specification limit such that only one value can be set for first setting item. Therefore, it is difficult to acquire a search result having high convenience.

With taking into consideration the above, this disclosure provides at least an information processing program, an information processing apparatus and an information processing method capable of enabling a search unit of the information processing apparatus to display information that is convenient for a user to select an application of a data output destination.

In view of the above, a non-transitory computer-readable medium having instructions to control a computer of an information processing apparatus, the information processing apparatus including: a search unit configured to search an application, which satisfies a condition, of a plurality of applications, wherein setting values are set for respective setting items in the condition; a data share unit configured to output location information, which indicates a location of data to be output from an application of a data output source, to an application of a data output destination; a display unit; and an operation unit. The instructions controlling the computer to function as: a first request control unit; a first reception unit; a second request control unit; a second reception unit; a display control unit; and an output unit. The first request control unit requests the search unit to perform an application search with a first condition, in which a first setting value is set for a first setting item The first reception unit receives first application information, which indicates an application satisfying the first condition, from the search unit The second request control unit requests the search unit to perform an application search with a second condition, in which a second setting value different from the that of the first condition is set for the first setting item of the first condition The second reception unit receives second application information, which indicates an application satisfying the second condition, from the search unit The display control unit displays options on the display unit to receive an operation of selecting any one of the application indicated by the first application information received by the first reception unit and the application indicated by the second application information received by the second reception unit. The output unit designates, as an application of the data output destination, a selected application, which is an application corresponding to the selected options when the operation unit receives an operation of selecting any one of the options, and outputs location information of indicating data to the data share unit.

This disclosure may be implemented in various ways, such as an information processing apparatus, a control device controlling the information processing apparatus, an information processing system, an information processing method, a non-transitory computer-readable medium having instructions to control a computer, and the like.

DETAILED DESCRIPTION

Hereinafter, illustrative embodiments of this disclosure will be described with reference to the accompanying drawings.FIG. 1is a block diagram illustrating an electrical configuration of a mobile terminal10having a device control application14b(hereinafter, referred to as the application14b) installed therein according to a first illustrative embodiment of this disclosure.

A mobile terminal10is a mobile telephone that may performs voice communication with another apparatus or may use the internet through a mobile telephone network100. Also, the mobile terminal10performs wireless communication with a device30by an infrastructure mode in which an access point50is interposed therebetween. The mobile terminal10has a CPU11, a ROM12, a RAM13, a flash memory14, a wireless LAN transceiver15, an operation key16, a touch panel17, a liquid crystal display apparatus18(hereinafter, referred to as LCD18), a memory card interface19(hereinafter, referred to as memory card I/F19), a voice input/output unit21and a telephone network communication unit22. These are connected to each other via a bus line23.

The CPU11controls the respective units connected to the bus line23, in response to fixed values or programs stored in the ROM12and the like. The ROM12is a non-rewritable and non-volatile memory and the RAM13is a rewritable and volatile memory. The flash memory14is a rewritable and non-volatile memory and stores an operating system14a(hereinafter, referred to as OS14a), a the application14band the other applications (not shown). The OS14ais basic software to implement standard functions of the mobile terminal10and is an ANDROID (registered trademark) OS in this illustrative embodiment. The application14bis an application that is provided by a vendor of the device30and is installed in the mobile terminal10by a user.

In the below, the CPU11that executes programs such as application, operating system, and the like may be also described just by a program name. For example, the description of ‘application’ may also mean the ‘CPU11that executes an application.’

As an application uses an Application Program Interface (which is abbreviated to as “API”) of the OS14ainstalled in the mobile terminal10, a function of searching an application and a share function (which is also called as Intent function) of passing data between applications are implemented. The functions are described with reference toFIG. 2. The application14bis an application for directly using printing and scan functions of the device30from the mobile terminal10without passing through a personal computer and the like. Specifically, the application14bis configured to display application information, which is convenient for a user to select an application of a data output destination, by using the search function of the OS14a.

The wireless LAN transceiver15is a circuit that Wi-Fi (registered trademark) connects the mobile terminal10and another device each other by a wireless LAN based on the protocol of IEEE802.11b/g. By the wireless LAN transceiver15, the mobile terminal is wirelessly connected to the device30via the access point50.

The operation key16is a hard key that is provided to a housing of the mobile terminal10to input setting information or instruction to the mobile terminal10. The touch panel17is provided to overlap with the LCD18to input setting information or instruction to the mobile terminal10. The LCD18displays a variety of operation screens and an image based on selected data. The memory card I/F19is an interface to which a non-volatile memory card20is mounted, and controls writing or readout of data to or from the memory card20. The memory card20is an SD card (registered trademark), for example. In this illustrative embodiment, the application14bconverts scan data (one example of image data) received from the device30into a file having a PDF format (hereinafter, referred to as “PDF data”) or file having a JPEG format (hereinafter, referred to as “JPEG data”) and stores the converted data in the memory card20.

The voice input/output unit21is a device for voice input/output including a microphone, a speaker and the like, and the telephone network communication unit22is a circuit for communication through the mobile telephone network100. The mobile telephone network100is an International Mobile Telecommunication-2000 (which is abbreviated to as IMT-2000) communication network and enables the voice communication by the mobile terminal10.

In the meantime, each of the applications (including the application14b) installed in the mobile terminal10call the API of the OS14aand outputs data intended to be transmitted to the respective configurations of the wireless LAN transceiver15, the operation key16, the touch panel17, the LCD18, the memory card I/F19, the voice input/output unit21, the telephone network communication unit22and the like, to the OS14a. That is, each application calls the API of the OS14a, thereby controlling each configuration of the mobile terminal10. Also, each application calls the API of the OS14a, thereby obtaining data that is output by each configuration of the mobile terminal10or data indicating a state of each configuration from the OS14a. That is, each application calls the API of the OS14a, thereby obtaining the data, which indicates a state of each configuration (also including an operation input state to the mobile terminal10) of the mobile terminal10, from the OS14a. Also, the OS14anotifies each application of the data output by each configuration of the mobile terminal10, or data indicating a state of each configuration periodically or every when each configuration state changes. That is, each application receives the notification from the OS14aand thus obtains the data, which indicates a state of each configuration (also including an operation input state to the mobile terminal10) of the mobile terminal10, from the OS14a.

The device30is a complex machine having printer, scan, copying functions and the like, has a wireless LAN transceiver (not shown) having the same configuration as the wireless LAN transceiver15of the mobile terminal10and is Wi-Fi-connected to the mobile terminal10by the wireless communication via the access point50. Also, the device30is controlled by the application14bof the mobile terminal10, prints an image based on data transmitted from the mobile terminal10or reads a document image to generate image data and transmits the image data to the mobile terminal10.

FIG. 2is a pictorial view illustrating search and share functions of the OS14aand shows a flow of processing when the application14arequests an execution of the search function from the OS14aand then designates an application of a data output destination (hereinafter, referred to as data output destination application64) to request execution of the share function. The search function is a function of searching an application of a plurality of application, which satisfies a condition, with conditions in which setting values are designated for respective setting items. In the meantime, the share function is a function of outputting a Uniform Resource Identifier (which is abbreviated to as URI), which indicates a location of data output from an application of a data output source (the application14bin the example shown inFIG. 2), to the data output destination application64, thereby enabling the application of the data output destination to process the data.

First, the application14bcalls the API of the OS14aand requests an application search from the OS14a(process21). The setting items of the search condition include a ‘TYPE’ indicating a data format that can be processed by each application and an ‘ACTION’ indicating a kind of processing that can be performed by each application. The application14bdesignates values for the TYPE and ACTION and requests the search. In the meantime, the application may designate a value for any one of the TYPE and ACTION or may designate values for both of them. However, for one search request, it is possible to set only one value for the TYPE and ACTION, respectively.

In the meantime, based on the search condition designated by the application14a, the OS14asearches an application satisfying the search condition from all applications installed in the mobile terminal10(hereinafter, referred to as all the applications62) (process22).

Specifically, each application installed in the mobile terminal10preliminary declares the TYPE indicating a processable data format of the that application, and the ACTION indicating a kind of processing that can be performed by the that application. Accordingly, the OS14aextracts an application having a declaration corresponding to the search condition from all the applications62and acquires identification information thereof (process23). Meanwhile, the TYPE and ACTION declared by each application can be freely set by a developer of the correspondence application. Therefore, each application may declare a TYPE or ACTION that does not actually correspond. Hence, the ‘application satisfying a condition’ means an application having a declaration corresponding to the search condition requested by the application14band does not require an application that can perform the processing as it is declared.

Then, the application14breceives application information (for example, application name) of the applications satisfying the search condition searched by the OS14afrom the OS14a(process24), displays an application information list on the LCD18(process25) and then receives a user's selection (process26).

Then, the application14bdesignates, as the data output destination application64, an application of the application information list selected by the user, outputs the URI indicating the location of the data to the OS14atogether with the TYPE and ACTION, and requests execution of the share function from the OS14a(process27).

Then, the OS14astarts the data output destination application64designated by the application14b, sets a screen of the data output destination application64as a foreground and outputs the URI, TYPE and ACTION of the data notified from the application14b(process28).

As a result, the screen of the data output destination application64selected by the user is displayed as a foreground on the mobile terminal10, and the data output destination application64accesses data specified by the notified URI and performs processing in response to the ACTION notified from the OS14a. For example, it is performed that the processing can be performed in the data output destination application64such as display output, attachment to an electronic mail and transmission thereof, editing and the like. By the share function, the user can use the function of the application14band the function of the data output destination application64with combining, so that the convenience is improved.

FIG. 3illustrates screen transitions when a user instructs the execution of the share function for image data acquired from the device30at a state in which the screen of the application14bis displayed as a foreground.

When the application14bacquires image data from the device30, it displays a scan result confirmation screen70of the application14bon the LCD18and displays a scan image71corresponding to the image data in the scan result confirmation screen.

The scan result confirmation screen70further includes a page display area72, a share button74and a save button76. The page display area72is an area that displays the total number of pages of documents read by the device30and a page number indicating a page number of the scan image71being currently displayed of all pages.

The share button74is an area for inputting an instruction to perform the share function. When the user touches the share button74, the image data corresponding to the scan image71in the display is determined as data to be shared.

The save button76is an area for inputting an instruction to perform a save function. When the user touches the save button76, the image data corresponding to the scan image71in the display is saved. Specifically, the image data is converted into a file having a predetermined data format, and then the image data is stored in the memory card20as the API of the OS14ais called.

In the scan result confirmation screen70, when the user touches the share button74, the application14bdisplays an application list screen77, in which names (one example of application information) of applications capable of being designated as the data output destination application64(refer toFIG. 2) are listed as options, on the LCD18. The user selects an option corresponding to a desired application from the displayed options, thereby selecting the data output destination application64.

Then, the application14bconverts the image data into one format of JPEG and PDF, which can be processed by the data output destination application64, and outputs the URI of the converted image data to the OS14a. In the meantime, the OS14astarts the designated data output destination application64and sets a screen79of the data output destination application64as a foreground. Therefore, the user can continue the processing by the data output destination application64.

Here, as described above, according to the search function of the OS14a, the value of the TYPE that can be designated as the search condition in the one search request is only one. Therefore, if the search result of the OS14ais used as it is, only a JPEG correspondence application list or PDF correspondence application list is displayed. To the contrary, the application14brequests twice the search from the OS14aso as to display the application list screen77. Specifically, the application first requests the application search from the OS14awith a first search condition, in which JPEG is designated as a value of the TYPE. Then, after receiving the search result thereof, the application requests the application search from the OS14awith a second search condition, in which PDF is designated as a value of the TYPE. As a result, options for selecting any one of an application capable of processing the JPEG (hereinafter, referred to as “JPEG correspondence application)” and an application capable of processing the PDF (hereinafter, “referred to as PDF correspondence application”) are displayed. Specifically, first application information81indicating the JPEG correspondence applications and second application information82indicating the PDF correspondence applications are displayed as the options. That is, it is possible to present the JPEG correspondence applications and the PDF correspondence applications to the user. Accordingly, it is possible to display the application list screen77that is convenient for the user to select the data output destination application64. Meanwhile, in the below descriptions, the first application information81and the second application information82are collectively referred to as the application information when it is not necessary to particularly distinguish them.

FIG. 4is a flowchart illustrating scan processing that is performed by the CPU11of the mobile terminal10in accordance with the application14b. This processing starts when the user instructs execution of the scan from an operation receiving screen (not shown) of the application14b. Meanwhile, in the below descriptions, the application14bcontrol the CPU11to perform respective steps shown in flowcharts of first to fourth illustrative embodiments and a modified embodiment described with reference toFIGS. 4 to 11, or the application14bcontrol the CPU11to perform the same by using the functions of the OS14aand the like. In the meantime, the steps of the respective flowcharts may be partially replaced with steps that are performed by the OS14aand other applications with controlling the CPU11. Also, the steps may be partially replaced with steps that are implemented as a hardware equipped in the mobile terminal2, irrespective of CPU11.

First, in step S400(hereinafter, the term ‘step’ is omitted), the CPU11transmits a scan instruction to the device30. While the scan operation is not completed in the device30(S400: No), the CPU11does not proceed to a next step.

When the scan operation is completed (S402: Yes), the CPU11acquires image data from the device30, which is generated by reading an image in the device30, and temporarily stores the same in the RAM13(S403). In this illustrative embodiment, it is assumed that the image data is uncompressed or reversibly compressed RAW image data. Subsequently, the CPU11displays the scan result confirmation screen70(refer toFIG. 3) on the LCD18(S404). When an execution instruction other than the share function is input in the scan result confirmation screen70(S406: No), the CPU11performs processing corresponding to the instruction (S408) and ends this processing.

On the other hand, when the user touches the share button74(refer toFIG. 3) in the scan result confirmation screen70and when an instruction to perform the share function is input (S406: Yes), the CPU11determines whether the image data acquired in S403is plural or not (S410). When it is determined that the image data is single (S410: No), the CPU11requests an application search from the OS14awith the first search condition, in which JPEG is designated as a value of the TYPE and SEND, which is ACTION corresponding to data transmission, is designated as a value of the ACTION (S412). Then, the CPU receives application information of an application satisfying the first search condition (hereinafter, referred to as single JPEG correspondence application) from the OS14a, as a search result (S416). Then, the CPU11requests an application search from the OS14awith the second search condition, in which PDF is designated as a value of the TYPE (S418). Then, the CPU receives application information of an application satisfying the second search condition (hereinafter, referred to as PDF correspondence application) from the OS14a, as a search result (S420).

Subsequently, the CPU11displays the application list screen77having the application information received in S416and the second application information received in S420included therein on the LCD18. Thereby, the CPU11control the touch panel17to receive an operation of selecting one of the application information (S422).

On the other hand, when it is determined that the image data acquired in S403is plural (S410: Yes), the CPU11designates JPEG as a value of the TYPE and MULTI_SEND as a value of the ACTION, and the CPU11requests the application search from the OS14a(S414). Here, MULTI_SEND is a value that is declared by an application capable of executing processing of transmitting a plurality of data. Therefore, in S416, the CPU can acquire application information of a JPEG correspondence application (hereinafter, referred to as plural JPEG correspondence application) capable of processing the plurality of image data by executing the processing of S414instead of S412. Then, in S422, the application list screen77, in which the application information of the plural JPEG correspondence application and the application information of the PDF correspondence application are included, is displayed (S422).

Subsequently, while the application information displayed in the application list screen77is not selected (S424: No), the CPU11does not proceed to a next step. On the other hand, when the application information displayed in the application list screen77is selected (S424: Yes) and an operation of selecting the application information of the single JPEG correspondence application or plural JPEG correspondence application is received (S426: Yes), the CPU11determines whether the image data acquired in S403is plural or not (S428).

When the image data is plural (S428: Yes), the CPU11converts the plurality of image data acquired from the device30into JPEG data, respectively, and stores the same in the memory card20(S430). Then, the CPU11designates an application (hereinafter, referred to as selected application) corresponding to the selected application information as the data output destination application64, outputs the URIs, TYPEs and ACTIONs of the JPEG data to the OS14a, and requests the execution of the share function from the OS14a(S432), and this processing ends.

Also, when the image data is single (S428: No), the CPU11converts the single image data acquired from the device30into JPEG data and stores the same in the memory card20(S434). Then, the CPU11designates an selected application, outputs the URI, TYPE and ACTION of the single JPEG data to the OS14a, and requests the execution of the share function from the OS14a(S436), and this processing ends.

Also, when the operation of selecting the application information of the PDF correspondence application is received (S426: No), the CPU11converts the image data acquired from the device30into PDF data and stores the same in the memory card20(S438). Incidentally, when the plurality of image data is acquired, the CPU converts the plurality of image data into one PDF file in which the plurality of image data is stored in one file. Then, the CPU designates a selected application, outputs the URI and the like of the PDF data to the OS14a, and requests the execution of the share function from the OS14a(S440), and this processing ends.

According to the scan processing of the first illustrative embodiment, since the options for receiving the operation of selecting any one of the JPEG correspondence information satisfying the first search condition and the PDF correspondence application satisfying the second search condition are displayed in the application list screen77, it is possible to display the application list screen77that is convenient for the user to select the data output destination application64.

Also, it is possible to convert the image data, which is generated by reading the image in the device30, into the processable data format of the data output destination application64and to output the URI thereof to the data output destination application64.

Also, since the image data acquired from the device30is converted into the data format corresponding to the selected application, it is possible to convert the image data into the data format appropriate for the data output destination application64even though the user does not remember the data format that can by processed by the selected application.

FIG. 5is a flowchart illustrating scan processing that is performed by the CPU11in accordance with the application14bof a second illustrative embodiment. Regarding the steps S400to S422included in the scan processing of the second illustrative embodiment, which are the same as those of the scan processing of the first illustrative embodiment, the illustrations and descriptions thereof will be omitted.

The scan processing of the second illustrative embodiment is different from the scan processing of the first illustrative embodiment in processing after the user selects the application information in the application list screen77(S424: Yes).

Specifically, the CPU11first determines the processable data format by the selected application (S502). When the selected application can process only the JPEG or PDF (S504: No), the CPU11proceeds to S426, designates the selected application and requests the execution of the share function from the OS14a. In the meantime, since the processing after the CPU proceeds to S426is the same as those of the scan processing of the first illustrative embodiment, the same reference numerals are used and the descriptions thereof will be omitted.

On the other hand, when the selected application is not only the JPEG correspondence application but also the PDF correspondence application (S504: Yes), i.e., when the application information corresponding to the selected application is included in both the first application information81satisfying the first search condition and the second application information82satisfying the second search condition, the CPU11displays a data format selection screen83on the LCD18and controls the touch panel17to receive an operation of selecting one of JPEG and PDF (S506).

FIG. 6illustrates an example of the data format selection screen83that is displayed on the LCD18when the user selects the selected application, based on the application list screen77. As shown inFIG. 6, the data format selection screen83may be a screen that is configured to make the user select a desired data format from the data formats that can be processed by the selected application. In this illustrative embodiment, JPEG and PDF may be selected as the data format. Also, a message display area for inquiry may be provided in a part of the application list screen77, instead of the data format selection screen83, to make the user select the data format in the message display area.

Returning toFIG. 5, while the data format is not selected (S508: No), the CPU11does not proceed to a next step. On the other hand, when the data format is selected (S508: Yes), the CPU11specifies the data format received through the touch panel17(i.e., data format selected by the user on the data format selection screen83) (S510). When the JPEG is specified (S512: Yes), the CPU11proceeds to S428, converts the image data into JPEG data (S430or S434), and outputs the URI of the JPEG data to the OS14a(S432or S436).

On the other hand, when the PDF is specified as the data format selected by the user (S512: No), the CPU11proceeds to S438, converts the image data into PDF data (S438), and outputs the URI of the PDF data to the OS14a(S440).

According to the scan processing of the second illustrative embodiment, when the selected application is the JPEG correspondence application and the PDF correspondence application, it is possible to make the user select one of JPEG and PDF. Therefore, even though the user does not remember what the data format of the image data the selected application can process, the user can perform the appropriate operation, so that the convenience is improved.

FIG. 7is a flowchart illustrating scan processing of a third illustrative embodiment. Regarding the steps included in the scan processing of the third illustrative embodiment, which are the same as those of the scan processing of the first illustrative embodiment (refer toFIG. 4), the same reference numerals are used, and the descriptions thereof will be omitted. Also, in the third illustrative embodiment, it is assumed that the user has previously selected the JPEG as the data format.

In the scan processing of the first illustrative embodiment, the values of the TYPE are different between the first search condition and the second search condition. In contrast, in the third illustrative embodiment, the values of the ACTION are different between the first search condition and the second search condition. In the below, this will be described in detail.

First, when it is determined that the acquired image data is plural (S410: Yes), the CPU11requests the application search from the OS14awith a search condition, in which MULTI_SEND is designated as a value of the ACTION and JPEG is designated as a value of the TYPE (S700). The application declaring MULTI_SEND is referred to as a plural transmission correspondence application. The CPU11receives application information of an application that is the JPEG correspondence application and the plural transmission correspondence application from the OS14a, as the search result (S702). Then, the CPU11displays an application list screen84(which will be described later with reference toFIG. 8) having the application information included therein on the LCD18and control the touch panel17to receive an operation of selecting one of the applications satisfying the condition (S712). That is, when the acquired image data is plural, it is possible to make the user select any one of appropriate applications capable of processing the plurality of image data.

On the other hand, when it is determined that the acquired image data is single (S410: No), the CPU11requests the application search from the OS14amore than once. Specifically, the CPU requests the application search from the OS14awith a first search condition, in which SEND is designated as a value of the ACTION and JPEG is designated as a value of the TYPE (S704). Then, the CPU receives application information of an application satisfying the first search condition (hereinafter, referred to as a single transmission correspondence application) from the OS14a, as the search result (S706).

Then, the CPU11requests the application search from the OS14awith a second condition, in which EDIT, which is ACTION corresponding to editing, is designated as a value of the ACTION and JPEG is designated as a value of the TYPE (S708). Then, the CPU11receives application information of an application satisfying the second search condition (hereinafter, referred to as an editing correspondence application) from the OS14a, as the search result (S710).

Then, the CPU11requests the application search from the OS14awith a third condition, in which VIEW, which is ACTION corresponding to display process, is designated as a value of the ACTION and JPEG is designated as a value of the TYPE (S711). Then, the CPU receives application information of an application satisfying the third search condition (hereinafter, referred to as a viewing correspondence application) from the OS14a, as the search result (S702).

Then, the CPU11displays the application list screen84(refer toFIG. 8), in which the application information of the three TYPEs received based on the search requests of three times is included, on the LCD18and controls the touch panel17to receive an operation of selecting any one (S712). As a result, it is possible to display the application information of the application, which is the JPEG correspondence application and corresponds to at least one of the single transmission correspondence application, the editing correspondence application and the viewing correspondence application, in the application list screen84. Accordingly, it is possible to present many options to the user.

Then, while any one application information is not selected in the application list screen84(S713: No), the CPU11does not proceed to a next step. On the other hand, when the application information is selected (S713: Yes), the CPU11discriminates the ACTIONs that are declared by the selected application (S714). Then, the CPU11displays an action selection screen on the LCD18and controls the touch panel17to receive an operation of selecting any one of the ACTIONs declared by the selected application (i.e., processing that can be performed by the selected application) (S716).

FIG. 8shows an example of an action selection screen85. The action selection screen85is configured so that the user can select a desired ACTION from the ACTIONs declared by the selected application. Here, both SEND and MULTI_SEND of the ACTIONs indicate transmission processing. Accordingly, in the third illustrative embodiment, the application declaring MULTI_SEND is simply displayed as SEND in the options of the action selection screen85. In the meantime, a message display area for inquiry may be provided in a part of the application list screen84, instead of the action selection screen85, and the user may select the ACTION in the message display area. Also, although not shown, when the selected application declares only one ACTION, the CPU may perform the processing after S426shown in the scan processing of the first illustrative embodiment (refer toFIG. 4) without executing the display processing (S716) of the action selection screen85.

Returning toFIG. 7, while the ACTION is not selected (S718: No), the CPU11does not proceed to a next step. On the other hand, when the ACTION is selected (S718: Yes), the CPU11specifies the ACTION received through the touch panel17(S720). When the ACTION selected by the user is EDIT or VIEW (S722: EDITING, VIEWING), the CPU11converts one image data into JPEG data (S724). Here, the one image data is the image data that corresponds to the scan image71displayed on the scan result confirmation screen70. Then, the CPU11outputs the URI of the JPEG data and the ACTION selected by the user to the OS14a(S726), and the processing ends.

When the ACTION selected by the user is SEND (S722: TRANSMISSION), the CPU determines whether a plurality of image data is acquired from the device30(S728). When the plurality of image data is acquired (S728: Yes), the CPU11converts the plurality of image data into JPEG data, respectively (S730). Then, the CPU11outputs the URIs of all the JPEG data obtained by the conversion and the ACTION selected by the user to the OS14a(S732), and the processing ends.

On the other hand, when the ACTION selected by the user is SEND (S722: transmission) and single image data is acquired from the device30(S728: No), the CPU11converts the image data into JPEG data (S734), outputs the URI of the JPEG data and the ACTION selected by the user to the OS14a(S736), and the processing ends.

According to the scan processing of the third illustrative embodiment, when the image data is single, the application information of the single transmission correspondence application, the editing correspondence application and the viewing correspondence application is displayed. Therefore, it is possible to display the application list screen84that is convenient for the user to select the data output destination application64.

Also, since the application information of the application, which can process the data format (JPEG in the example ofFIG. 7) previously selected by the user, is displayed, the convenience is more high when the user determines the data format in advance. Also, it is possible to convert the image data, which is acquired from the device30, into the data format previously selected by the user and to enable the data output destination application64to acquire the same.

FIG. 9is a flowchart illustrating scan processing of a fourth illustrative embodiment. Regarding the steps included in the scan processing of the fourth illustrative embodiment, which are the same as those of the scan processing of the first illustrative embodiment (refer toFIG. 4) or third illustrative embodiment (refer toFIG. 7), the same reference numerals are used, and the descriptions thereof will be omitted. Also, in the fourth illustrative embodiment, it is assumed that the user has selected the JPEG in advance, as the data format.

The scan processing of the fourth illustrative embodiment is the same as the third illustrative embodiment up to the step (S702) of receiving the search result from the OS14a. However, in the scan processing of the third illustrative embodiment, the user selects the data output destination application64and then selects the ACTION. To the contrary, in the scan processing of the fourth illustrative embodiment, the user selects the ACTION and then selects the data output destination application64.

Specifically, the CPU first displays the action selection screen85(refer toFIG. 10) on the LCD18and controls the touch panel17to receive an operation of selecting an ACTION (S900). Similarly, to the third illustrative embodiment, a message display area for inquiry may be provided in a part of the LCD18, instead of the action selection screen85, and the user may select an ACTION in the message display area. While an ACTION is not selected on the action selection screen85(S902: No), the CPU11does not proceed to a next step.

When an ACTION is selected (S902: Yes), the CPU11specifies the ACTION received through the tough panel17(i.e., ACTION selected by the user on the action selection screen85)

Then, the CPU11displays only application information of the application corresponding to the ACTION specified in S904, among the application information received from the OS14a, in the application list screen86(S906). For example,FIG. 10shows an example of the application list screen86that is displayed on the LCD18when SEND of the ACTIONs shown on the action selection screen85is selected. In this case, only the application information of the applications declaring SEND is displayed in the application list screen86.

Returning toFIG. 9, while no application information is selected in the application list screen86(S908: No), the CPU11does not proceed to a next step. When any one application information is selected (S908: Yes), the CPU11determines whether a plurality of image data is acquired from the device30(S910). When a plurality of image data is acquired (S910: Yes), the CPU11converts the plurality of image data into JPEG data, respectively (S912). Then, the CPU11outputs the URIs of all the JPEG data obtained by the conversion and the ACTION selected by the user to the OS14a(S914), and the processing ends.

When the single image data is obtained from the device30(S910: No), the CPU11converts the image data into JPEG data and outputs the URI of the JPEG data and the ACTION selected by the user to the OS14a(S918), and the processing ends.

According to the fourth illustrative embodiment, even though the user does not remember the processing that can be performed by each application, the user can select the data output destination application64from the applications corresponding to the desired ACTION.

The mobile terminal10is an example of the information processing apparatus. The CPU11is an example of the computer, the search unit and the data share unit. The LCD18is an example of the display unit. The touch panel17is an example of the operation unit. The data output destination application64is an example of the data output destination application. The first search condition is an example of the first condition. The second search condition is an example of the second condition. The URI is an example of the location indicating information. The JPEG is an example of the first data format, and the PDF is an example of the second data format. The device30is an example of the reading apparatus. The TYPE of the first and second illustrative embodiments and the ACTION of the third and fourth illustrative embodiments are an example of first setting item, respectively.

Each unit of the search unit, the data share unit, the display unit and the operation unit may be configured a single hardware or a hardware that is operated in response to the program of this disclosure or program except for this disclosure such as operating system. Also, the respective units may be a hardware that is operated by a combination of processing by a plurality of programs.

The CPU11that performs S412, S414and S704is an example of the first request control unit. The CPU11that performs S416and S706is an example of the first reception unit. The CPU11that performs S418, S708, and S711is an example of the second request control unit. The CPU11that performs S420, S702and S710is an example of the second reception unit. The CPU11that performs S422, S712and S906is an example of the display control unit. The CPU11that performs S403is an example of the acquisition unit. The CPU11that performs S432, S436, S440, S726, S732, S736, S914and S918is an example of the output unit. The CPU11that performs S430, S434and S438ofFIG. 4is an example of the first conversion control unit. The CPU11that performs S506is an example of the format selection reception control unit. The CPU11that performs S410ofFIGS. 7 and 9is an example of the first determination unit. The CPU11that performs S724, S730, S734, S912and S916is an example of the second conversion control unit. The CPU11that performs S900is an example of the processing selection reception control unit.

The CPU11that performs S412, S414and S704is an example of the first request unit. The CPU11that performs S418, S708and S711is an example of the second request unit. The CPU11that performs S422, S712and S906is an example of the display unit.

Although this disclosure has been described with reference to the illustrative embodiments, this disclosure is not limited to the illustrative embodiments. A variety of improvements can be made without departing from the gist of this disclosure.

For example, in the above illustrative embodiments, the mobile terminal10having the communication function is an example of the information processing apparatus. However, a variety of apparatuses having no communication function such as personal computer, digital camera and the like may be an example of the information processing apparatus. Also, this disclosure can be applied to an apparatus that has hard keys with which an operation is input and does not have the touch panel17.

Also, in the above illustrative embodiments, an example of the first data format is JPEG and an example of the second data format is PDF. However, this disclosure is not limited thereto. For example, a variety of data formats such as PNG, GIF, BMP and so on may be an example of the first data format. Also, a variety of data formats such as DOC, XLS and so on may be an example of the second data format.

Also, in the above illustrative embodiments, the JPEG data and the PDF data are stored in the memory card20that is detachably mounted to the mobile terminal10. However, the data may be stored in the flash memory14that is embedded in the mobile terminal10.

Also, in the above illustrative embodiments, the scanner data has been exemplified as the image data. However, the image data is not limited thereto and may be image data that is captured by a digital camera embedded in the mobile terminal10. Also, the image data may be data that is generated by reducing or enlarging image data, which is acquired from the device, to the size of the scan image71displayed on the LCD18. Also, when the image data acquired from the device30is converted into predetermined data format in the mobile terminal10so as to display the scan image71on the LCD18, data that has been converted into the predetermined data format may be an example of the image data.

Also, in the above illustrative embodiments, the image data is the RAW image data. However, even when JPEG data is acquired as the image data from the device30, this disclosure can be applied. In this case, when the user selects the JPEG correspondence application, the processing of changing the format of the image data is not necessary, so that it is possible to skip over the steps of S430, S434, S724, S730, S734, S912and S916.

In the above illustrative embodiments, the application14brequests the search from the OS14amore than once. However, when the sufficient number of applications is found by one search, the search request may be limited to one time.

FIG. 11is a flowchart illustrating scan processing of a modified embodiment. In the meantime, although the scan processing of the modified embodiment includes the same steps as S400to S404and S426to S440of the scan processing (refer toFIG. 4) of the first illustrative embodiment, the corresponding steps are not shown.

As shown inFIG. 11, in the scan processing of the modified embodiment, a step of S1102is provided between the step of receiving the first search result (S416) and the step of requesting the second search (S418).

Specifically, the CPU determines whether the number of applications corresponding to the application information received in S416is a predetermined number (for example, 10) or larger (S1102). When the number of applications is smaller than the predetermined number (S1102: No), the CPU11requests the application search from the OS14awith the second search condition (S418) and receives application information of the applications satisfying the second search condition from the OS14a, as the search result (S420). Then, the CPU11displays the application list screen77(refer toFIG. 3), in which the first application information81received in S416and the second application information82received in S420are included as options, on the LCD18(S422).

On the other hand, when the number of applications corresponding to the application information received in S416is the predetermined number or larger (S1102: Yes), the CPU11skips over the steps of S418and S420. That is, the CPU does not request for search with the second condition. In this case, the first application information81is displayed in the application list screen77as the option and the second application information is not displayed.

According to this modified embodiment, when the number of applications satisfying the first search condition is the predetermined number or larger, the request for search of the application satisfying the second search condition is not performed. Therefore, it is possible to present the predetermined number of the applications or larger to the user while reducing the load to be applied to the mobile terminal2. In this modified embodiment, the CPU11that performs S1102corresponds to an example of the second determination unit.

FIGS. 12A and 12Billustrate application list screens of modified embodiments.FIG. 12Aillustrates an application list screen87of a first modified embodiment. The application list screen87divides and displays application names of applications declaring SEND into the JPEG correspondence application and the PDF correspondence application.FIG. 12Billustrates an application list screen88of a second modified embodiment. The application list screen88displays the applications in a matrix shape in which a horizontal direction is divided for each ACTION and a vertical direction is divided for each TYPE.

That is, the application list screens87,88shown inFIGS. 12A and 12Bcan display the options (for example, application names) in association with the ACTIONs that can be performed by the respective applications and the data formats that can be processed. Accordingly, when any one of the application list screens87,88is adopted, the user can select an appropriate application by referring to the ACTIONs and the data formats.

Also, in the above illustrative embodiments, the OS14ais the ANDROID OS. However, this disclosure can be also applied to an information processing apparatus having other OS installed therein.

Also, in the above illustrative embodiments, the search and share functions are implemented by the OS14a. However, this disclosure can be also applied to a case where

Also, in the above illustrative embodiments, the mobile terminal10and the device30are Wi-Fi connected. However, this disclosure can be also applied to a case where the mobile terminal and the device are connected by Bluetooth (registered trademark). the search and share functions are implemented by hardware or middleware.

Also, in the above illustrative embodiments, the name of the application corresponds to an example of the application information. However, the application information may be the other information such as icon image and the like indicating each application. Also, the application information may include both the name of the application and the icon image.

Also, in the above illustrative embodiments, the application information received from the OS14athat is an example of the search unit is displayed as the options of the application list screen. Instead of this, when an application ID is received from the search unit, as the application information, the name of the application or icon image may be further acquired from the application information by the API and the information acquired based on the application information may be displayed as the options.

Also, in the above illustrative embodiments, the application14bconverts the image data acquired from the device30into any one of the two data formats. However, this disclosure can be also applied to a case where the image data is converted into any one of the three or more data formats.

Also, like the step of the third illustrative embodiment in which it is determined that the image data is single (S410: No), the application14bmay request the search from the OS14athree or more times and display results thereof.

Also, after requesting the search from the OS14aa predetermined number of times (for example, two times), a user may be inquired about whether or not to perform the additional search and the user requests a new search, it may be possible to request the new search from the OS14awith a condition (for example, search condition corresponding to an advanced function for an advance user) different from that of the search that has been already performed.

Also, another illustrative embodiment in which the characteristics of the first to fourth illustrative embodiments are appropriately combined may be adopted. Also, one mobile terminal10may be configured to perform the respective scan processing of the first to fourth illustrative embodiments. In this case, the user may select which scan processing is performed.

Also, in the first and second illustrative embodiments, the first application information81received based on the first search condition and the second application information82received based on the second search condition are displayed with being included in the application list screen77. However, the above illustrative embodiments may be modified so that it is possible to switch which information will be displayed by a tab. Also, the first application information81and the second application information82are divided and displayed in the application list screen77shown inFIG. 3. However, the first application information and the second application information may be merged and be displayed. Also, the application information is displayed for each data format in the application list screen77shown inFIG. 3. However, the application information may be displayed for each action.

Also, the program for converting the image data into a predetermined data format may be provided to the application or may be a program that requests the conversion from a hardware circuit of the mobile terminal10or other application or OS14ainstalled in the mobile terminal10, and thus the data may be converted. In this case, the CPU11that requests the conversion of the image data from the other configurations corresponds to an example of the first conversion control unit and the second conversion control unit. Also, the first conversion control unit and the second conversion control unit may compress the image data and thus may convert the same into a compressed data format.

Also, in the above illustrative embodiments, the URI that indicates a location of the converted image data is configured by the file path. However, the URI may be information having a format (such as content format) that specifies the data with an index or ID of the application such as ‘Contents://devicecontroll/attach/1’.

Also, in the first illustrative embodiment, when requesting the search of the single JPEG correspondence application from the OS14a(S412), SEND is designated as a value of the ACTION. However, the other values such as ‘VIEW’ and ‘EDIT’ may be also designated.

Also, in the first illustrative embodiment, the OS14ais requested to perform the search with the first search condition, in which JPEG is designated as a value of the TYPE and the second search condition, in which PDF is designated. However, it may be also possible to set the value of the TYPE with a value of the upper hierarchy. For example, ‘IMAGE’ may be designated as the value of the TYPE in the first search condition and ‘APPLICATION’ may be designated in the second search condition. When ‘IMAGE’ is designated, it is possible to search an application that can process a variety of images such as JPEG, BMP, GIF and the like. In the meantime, when ‘APPLICATION’ is designated, it is possible to search an application that can process data having a data format unique to the application such as PDF, DOC, PPT and the like.

Also, JPEG may be designated as the value of the TYPE in the first search condition, and a value (for example, BMP) that is included in an image, such as JPEG, may be designated as the value of the TYPE in the second search condition.

Also, in the scan processing (FIGS. 4 and 5) of the first and second illustrative embodiments, the step of determining whether the image data is plural (S410) and the step of requesting the search of the plural correspondence application (S414) may be omitted. In this case, the CPU makes a request for the search of the JPEG correspondence application (S412) and requests the search of the PDF correspondence application (S418), irrespective of whether the image data is plural or not. Then, the scan processing of the first and second illustrative embodiments may be modified so that when the JPEG correspondence application is selected as the data output destination application64(S426: Yes) and it is determined that the image data is plural (S428: Yes), the CPU11determines whether the JPEG correspondence application selected by the user corresponds to the plurality of image data. When the selected application corresponds to the plurality of JPEG data, the CPU11proceeds to S430, and the CPU11proceeds otherwise proceeds to S434.

Also in the scan processing (FIGS. 7 and 9) of the third and fourth illustrative embodiments, the step of determining whether the image data is plural (S410) and the step of requesting the search of the plural correspondence application (S700) may be omitted. Instead of this, the third illustrative embodiment may be modified so that when the selected ACTION is transmission (S722: TRANSMISSION) and the image data is plural (S728: Yes), the CPU11determines whether the selected application corresponds to the plurality of JPEG data. When the selected application corresponds to the plurality of JPEG data, the CPU proceeds to S730, and otherwise proceeds to S734.

Also, the fourth illustrative embodiment may be modified so that when the application is selected (S908: Yes) and the image data is plural (S910: Yes), the CPU determines whether the selected application correspond to the plurality of JPEG data. When the selected application corresponds to the plurality of JPEG data, the CPU proceeds to S912, and otherwise proceeds to S916.