Data processing apparatus, program, and control method

The control method dynamically selects between application and OS file browser functions based on OS information, addressing the inconvenience of OS-dependent file browser changes and ensuring consistent user experience.

JP2025161832AActive Publication Date: 2025-10-24CANON KK
View PDF 6 Cites 0 Cited by

Patent Information

Application Number
JP2025130143
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2025-08-04
Publication Date
2025-10-24
Estimated Expiration
2043-11-21

AI Technical Summary

Technical Problem

The conventional approach of switching between an application's internal file browser function and the OS's file browser function is inconvenient for users, and the most user-friendly file browser function can change with OS specifications.

Method used

A control method that determines whether to display an application's internal or OS-provided file selection screen based on OS information, such as version or compatibility, to provide a consistent and user-friendly file selection experience.

Benefits of technology

Enables a user-friendly file selection method that adapts to OS changes, ensuring seamless file browsing without frequent user permissions and maintaining usability across different OS versions.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025161832000001_ABST
    Figure 2025161832000001_ABST
Patent Text Reader

Abstract

To improve usability by selectively using either a file browser function implemented within an application or a file browser function provided by the operating system (OS) when selecting a file on a data processing apparatus.SOLUTION: Whether to use a file browser function within an application or a file browser function provided by the OS is controlled according to information about the OS.SELECTED DRAWING: Figure 7
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to a data processing device, a program, and a control method. [Background technology]

[0002] In recent years, with the spread of mobile devices, there has been an increase in the number of cases where mobile devices are used as business terminals in companies. A mobile device with an application installed that instructs an image processing device, such as a multifunction peripheral or printer, to execute a process can be used to issue print or scan instructions to the image processing device. For example, a user selects a file from a folder and configures print settings on the application on the mobile device, and then sends a print instruction to the image processing device. Upon receiving the execution instruction, the image processing device executes the print process according to the settings.

[0003] In order to provide an application with a function for selecting a file from a folder in the storage of a mobile device, the application may be implemented with a file browser function built in, or the file browser function provided by the operating system (OS) may be used. Patent Document 1 discloses a method for providing both a file browser function within the application and a file browser function of the OS, and for switching between the two file browser functions depending on the user's operation. [Prior art documents] [Patent documents]

[0004] [Patent Document 1] Japanese Patent Application Publication No. 2019-008370 Summary of the Invention [Problem to be solved by the invention]

[0005] The conventional approach of having users switch between the application's internal file browser function and the OS's file browser function is inconvenient for users, and the file browser function that is most convenient for users may change depending on changes in the OS specifications.

[0006] An object of the present invention is to provide a method for selecting files in an application that is user-friendly. [Means for solving the problem]

[0007] A program for causing a computer of a data processing device running an operating system (OS) to execute a control method, the control method comprising a control step of controlling, based on information about the OS, whether to instruct the OS to display a first file selection screen using a file browser function provided by the OS, or to display a second file selection screen using the file browser function of the program. [Effects of the Invention]

[0008] It is possible to provide a user-friendly method for selecting files in an application. [Brief explanation of the drawings]

[0009] [Figure 1] 1 is a diagram showing a system configuration of the present invention. [Figure 2] FIG. 2 is a diagram illustrating a hardware configuration of a data processing device. [Figure 3] FIG. 1 is a diagram illustrating a hardware configuration of an image processing apparatus. [Figure 4] FIG. 2 is a diagram illustrating a software configuration of the data processing device. [Figure 5] FIG. 10 is a diagram showing an example of a screen displayed by an application running on the data processing device. [Figure 6] FIG. 10 is a diagram illustrating an example of a screen displayed by the data processing device. [Figure 7] 10 is a flowchart showing a process for selecting a photo file and issuing a print instruction. [Figure 8] 10 is a flowchart showing a process for selecting a document file and issuing a print instruction. DETAILED DESCRIPTION OF THE INVENTION

[0010] The present embodiment will be described in detail below with reference to the accompanying drawings. Also, not all of the combinations of features described in the present embodiment are necessarily essential to the solution of the present invention.

[0011] Example 1 This embodiment will be described in detail below with reference to the drawings. FIG. 1 is a diagram showing the configuration of an information processing system in this embodiment. In FIG. 1, a data processing device 101 is a data processing device used to send print jobs and scan jobs to an image processing device 104, and accepts various operations from a user on the data processing device. The data processing device 101 is, for example, a mobile terminal such as a smartphone or tablet. 104 is an image processing device that may have a copy function, a print function, a fax transmission function, etc. in addition to a scan function.

[0012] Reference numeral 103 denotes a LAN (Local Area Network) to which the data processing device 101 and the image processing device 104 are connected, and the data processing device 101 and the image processing device 104 communicate with each other via the LAN 103. Reference numeral 102 denotes a wireless LAN terminal. The wireless LAN terminal 102 is a wireless LAN base station with a general network router function, and provides a wireless LAN within a home, office, or the like. By enabling its wireless LAN function, the data processing device 101 can join the LAN 103 via the wireless LAN terminal 102. When the data processing device 101 enters a wireless LAN area provided by the wireless LAN terminal 102, it can automatically join the network of the LAN 103 using authentication information pre-set in the data processing device 101. The data processing device 101 and the image processing device 104 can also communicate directly without going through the wireless LAN terminal 102. While only one image processing device is shown here, this is not limiting; multiple image processing devices may be connected to the LAN.

[0013] Fig. 2 is a block diagram showing the hardware configuration of the data processing device 101 in Fig. 1. The data processing device 101 may be running an operating system for small terminals or a program for controlling calls and data communications, or may be a personal computer (PC) that does not include the audio / image control unit 206, microphone / speaker / camera 213, position detection control unit 210, GPS sensor 216, mobile phone data communication unit 212, etc., which will be described later.

[0014] Each hardware component is connected to a system bus 201. An operating system for the data processing device 101 and applications for controlling calls and data communications are stored in a ROM 203, and can be executed by a CPU 202. Applications for controlling data communications include applications for exchanging various data with the image processing device 104, mail software, and a web browser.

[0015] The RAM 204 is a memory for executing programs and a work memory area where applications execute programs. The RAM 204 also serves as a memory for temporarily storing data that must be temporarily saved when applications execute programs. The storage device 209 is a non-volatile storage device that stores various operation mode settings and operation logs that must be retained even after the data processing device 101 is restarted.

[0016] The network controller 205 controls communication by a wireless LAN communication unit 211 for joining the network of the LAN 103 via the wireless LAN terminal 102, and a mobile phone data communication unit 212 for joining a network provided by a mobile carrier.

[0017] The audio / image control unit 206 is used, for example, when a call application is started and the user is making a call. Audio data is input and output via the microphone / speaker 213, and the audio / image control unit 206 acts as an intermediary between the audio data and the audio data control program. The audio / image control unit 206 also acts as an intermediary between image data captured and generated by the camera 213 and the image data control program.

[0018] The display control unit 207 controls information to be output on the display 214 of the data processing device 101. The input control unit 208 controls information instructed by the user using the buttons or touch panel 215 of the data processing device 101. Using the audio / image control unit 206, display control unit 207, and input control unit 208, applications running on the data processing device 101 provide the user with network communication information and various information about the data processing device 101.

[0019] The position detection control unit 210 acquires the position information of the data processing device 101 from the GPS sensor 216 and provides it to the operating system. These controls are controlled by the operating system (OS) running on the CPU 202.

[0020] Fig. 3 is a block diagram illustrating the hardware configuration of the image processing device 104 in Fig. 1. This example shows an example of a multifunction peripheral (MFP (Multi Function Peripheral)) having a scanner function and a printer function.

[0021] In FIG. 3 , 301 denotes an I / O, which includes a LAN communication unit 314. The LAN communication unit 314 can communicate with the data processing device 101 via a network (LAN) 103 or the like. For example, image data generated by scanning with the image processing device 104 is transmitted to the data processing device 101 via the LAN. Multiple I / Os 301 may be installed to accommodate multiple connection configurations. Through this I / O 301, the image processing device 104 passes a device ID and a scanned image to the data processing device 101. It also receives and processes various control commands from the data processing device 101. An I / F control unit 302 controls the issuance of device IDs for processing systems such as a scanner, printer, or fax machine installed in the image processing device 104. A RAM 303 is a primary storage device used to store external data, such as control commands acquired by the I / O 301, and image data (or image data, hereinafter referred to as "image") read by the scanner engine 313. Furthermore, RAM 303 is used to store images developed by printer controller 310 before being passed to printer engine 306. RAM 303 allocation management is performed by RAM control unit 304. Image data start-stop circuit 305 is a device that outputs images developed by printer controller 310 and images captured by scanner engine 313 and developed in RAM 303 in accordance with the rotation of printer engine 306. Printer engine 306 is a device that develops images on output media such as paper. Main controller 308 performs various controls of printer engine 306 via engine I / F 307. Main controller 308 is also a key control module, and performs appropriate allocation processing of control languages ​​received from data processing device 101 via I / O 301 to scanner controller 309 and printer controller 310. Furthermore, main controller 308 controls printer engine 306 and scanner engine 313 in response to instructions from the respective controllers and user interface 312. The scanner controller 309 breaks down the scan control commands received from the data processing device 101 into internal execution commands that can be interpreted by the main controller 308 .It also converts images read by the scanner engine 313 into scan control commands. The printer controller 310 breaks down the PDL (Page Description Language) received as a print job from the data processing device 101 into internal execution commands including a decompressed image that can be interpreted by the main controller 308. The decompressed image is sent to the printer engine and printed on an output medium such as paper.

[0022] Fig. 4 is a block diagram illustrating the software configuration of the data processing device 101 shown in Fig. 1. The processing of each component is realized by the CPU 202 executing a program stored in the ROM 203, the storage device 209, or the like.

[0023] The OS 410 is basic software for controlling the overall operation of the data processing device 101. For example, it is configured with Android (registered trademark) provided by Google.

[0024] Reference numeral 401 denotes an application executed on the data processing device 101, and is installed in the ROM 203 as an application running on the OS 410. The application 401 is an application that issues print and scan instructions to an image processing device. For example, the application 401 is an application that selects a file such as image data stored in a storage device on the data processing device 101 and issues a print instruction to the image processing device 104 for the selected file. The application 401 also has a function for issuing a scan instruction to the image processing device 104 and a function for saving and processing images captured by the camera 213 provided in the data processing device 101. The UI unit 402 is the UI unit of the application 401 and provides a user interface that allows the user to set and execute the application functions. The image processing device search unit 403 is a search unit for image processing devices, and searches for network devices on the LAN 103 in which the data processing device 101 participates and for network devices with which it can directly communicate. More specifically, the data processing device 101 searches for image processing devices to which it can issue print and scan instructions. The control unit 404 controls various processes performed by the application 401. For example, the control unit 404 generates a print job or a scan job and transmits the generated job to a communicable image processing device. The control unit 404 also performs processing such as saving data generated by the application 401. The file storage unit 405 saves files generated and acquired by the application 401. For example, the file storage unit 405 receives and saves image data generated by the image processing device 104 through scanning. The data saved in the file storage unit 405 may be saved in a common storage area of ​​the data processing device 101 so that it can be referenced and used by applications other than the application 401, or may be saved in a storage area specific to the application 401 so that it cannot be referenced or used by applications other than the application 401.

[0025] For example, when the application 401 is started for the first time, a folder corresponding to the file storage unit 405 is automatically generated. After that, image data generated by processing of the application 401, such as image data (scan data) generated by scanning with the image processing device 104 and image data (capture data) generated by capturing an image with a camera, is saved in the generated folder.

[0026] The file browser unit 406 browses files stored in storage such as the storage device of the data processing device 101. For example, the file browser unit 406 provides a list of files stored in the storage device 209 to allow the user to select print data to be sent to the image processing device 104. This file browser function can be considered to have the following two main methods for allowing the user to select photos, document files, etc. stored on the data processing device 101, etc.

[0027] The first method involves creating a UI screen displaying a file list within the application and allowing the user to select from a list. This method allows application vendors and developers to implement their own file browser functionality, allowing them to provide a file browsing function tailored to their application. For example, a list of files in a pre-specified folder (e.g., the folder used by the application as the default save or selection destination) can be displayed on the default selection screen. However, this requires the implementation of a mechanism for accessing cloud storage or an external memory card, which requires design effort and cost. Furthermore, application maintenance costs are incurred because the application must be modified every time the API for accessing cloud storage or an external memory card is updated. Furthermore, usability may be adversely affected by changes in OS specifications. Hereinafter, the file browser function using this method will be referred to as the in-app file browser function, and the screen displayed by this file browser function will be referred to as the in-app file selection screen. In other words, a file selection screen using an application's file browser function will be referred to as the in-app file selection screen. The in-app file selection screen is used only by compatible applications.

[0028] The second method uses the file browsing function provided by the OS. In this case, an application can call the OS's file browsing function and retrieve the files selected by the OS's file browsing function. Therefore, the application can select files using the OS's mechanisms without implementing mechanisms for accessing external memory cards or cloud storage. In this method, the OS's file browsing function is designed to be called by various applications and does not allow for detailed application-specific settings. An example of an OS-provided file browsing function is the photo selection screen provided by Android. The photo picker extracts and displays a list of files in a specified file format (here, image format) from files stored in storage, such as the memory device 209 of the data processing device 101. Hereinafter, the file browser function using this method will be referred to as the OS-provided file browser function, and the screen displayed by this file browser function will be referred to as the OS-provided file selection screen. In other words, a file selection screen using the OS's file browser function will be referred to as the OS-provided file selection screen. The OS-provided file selection screen is used by multiple applications.

[0029] Applications other than the application 401 are also installed in the OS of the data processing device 101. For example, the application 420 is an application that has the same functions as the application 401, and includes a file browser unit 421. The applications installed in the data processing device 101 are not limited to these, and other applications may also be installed.

[0030] Using FIG. 5, a description will be given of screen transitions from selecting a photo file to be printed in the application 401 to printing the selected file.

[0031] The menu screen 501 is the home screen of the application 401, and is, for example, a top menu screen that is displayed immediately after the application 401 is launched. The menu screen 501 accepts a user's selection operation of a function to be executed. The document print button 502 is a button for issuing an instruction to print a document to the image processing device. When the document print button 502 is selected, the screen transitions to a screen that is displayed by processing of the file browser unit 406 and that allows the user to select a document to print.

[0032] The photo print button 503 is a button for issuing a photo print instruction to the image processing device. When the photo print button 503 is selected, the screen transitions to a screen for selecting the photo to be printed, which is displayed by processing of the file browser unit 406.

[0033] The scan button 504 is a button for issuing a scan instruction to the image processing device. When the user selects the scan button 504, makes various settings, and then selects the scan execution button, the image processing device executes the scan process and returns the generated image data to the data processing device 101. The file saving unit 405 performs a process of saving the acquired image data in a specified folder.

[0034] Image processing device information 508 displays information about the image processing device to which the application 401 instructs printing or scanning. Here, the icon and device name of the image processing device are displayed.

[0035] A registration / switch button 507 is a button for registering and switching the image processing device to be designated. When the registration / switch button 507 is selected, the image processing device search unit 403 searches for image processing devices on the LAN 103, for example.

[0036] The in-app file selection screen 511 is a screen that is displayed when the photo print button 503 is selected, and is a screen for selecting photo files to print. The in-app file selection screen 511 is a screen that is displayed by the file browser function within the application 401, and displays a list of photo files saved in storage. For example, photo files contained in a predetermined folder in the storage device 209 are displayed as a list by default.

[0037] A cloud button 512 is a display item for selecting a photo file to be printed from cloud storage. A filter button 513 is a button for changing the conditions for the files to be displayed in a list and filtering the files to be displayed.

[0038] Photo files 515 are thumbnails of the photo files included in the target folder. Check marks 516 are display items that are displayed above the thumbnails so that the photo files selected by the user can be identified. Number of files 517 is a display item that indicates the number of files selected by the user.

[0039] When the Next button 518 is selected, the screen transitions to a print instruction screen 521. At this time, the file selected by the user on the in-application file selection screen 511 is to be printed.

[0040] Print instruction screen 521 is a screen for issuing a print instruction to the image forming device. Image 522 shows a preview image of the file to be printed. If there are multiple files to be printed, the user can preview the next file by operating the device. Cancel selection button 523 is a button for canceling the selection of the file to be printed. Print setting button 524 is a button for configuring print settings. Print button 525 is a button for sending a print job including the selected file to the target image processing device.

[0041] The photo acquisition destination selection screen 531 is displayed when the photo print button 503 is selected, and is a screen for selecting a destination from which to acquire photo files to be printed. When the photo print button 503 is selected, the display switches between displaying the in-application file selection screen 511 and the photo acquisition destination selection screen 531, depending on the conditions. For example, starting with Android version 14, applications must obtain permission from the user for each file before accessing files in storage. In other words, if a file is selected from the in-application file selection screen 511 in Android version 14, the user must perform a permission operation each time they select a file, which is inconvenient. On the other hand, if a file is selected from the OS-provided file selection screen, user permission is not required each time a file is selected. Therefore, the version of the OS (Android) of the data processing device on which the application 401 runs is determined. If the version is earlier than 14, the in-application file selection screen 511 is displayed when the photo print button 503 is selected. If the version is 14 or later, the photo acquisition destination selection screen 531 is displayed when the photo print button 503 is selected. In other words, if there are no restrictions on application file access due to the OS specifications as described above, a user-friendly file selection screen called in-application file selection screen 511 can be provided, and if there are restrictions on application file access due to the OS specifications, the file selection screen provided by the OS can be used via photo acquisition destination selection screen 531, eliminating the need to request permission from the user each time. Also, depending on the OS specifications, there may be restrictions on application file access, but all files can be accessed by obtaining user permission only once. In such cases where permission only needs to be obtained once, it is possible to provide an in-application file selection screen or a file selection screen provided by the OS.

[0042] Returning to the explanation of Fig. 5, photo acquisition destination selection screen 531 includes smartphone button 532, which sets the acquisition destination of the photo file within data processing device 101, cloud service button 533, which sets the acquisition destination of the photo file as cloud service 1, and other app button 534, which sets the acquisition destination of the photo file as an application other than application 401.

[0043] The OS-provided file selection screen 541 is displayed when the smartphone button 532 is selected, and is a screen for selecting photo files to print. The OS-provided file selection screen 541 is a screen provided by the OS, such as the Photo Picker screen provided by Android. The photo files 542 are thumbnails of photo files included in the target folder. The check marks 543 are display items that are displayed above the thumbnails so that the photo files selected by the user can be identified.

[0044] When the Add button 544 is selected, the screen transitions to the print instruction screen 521. At this time, the file selected by the user on the OS-provided file selection screen 541 becomes the print target. When printing is executed on the print instruction screen 521, a print job including the file selected on the OS-provided file selection screen 541 is sent to the image forming device.

[0045] The condition setting screen 551 is displayed when the filter button 513 is selected. This screen is used to set the conditions for files to be displayed on the in-app file selection screen 511. Here, an example is shown in which the file creation date is set as the condition. The date search button 522 is a button for setting whether the file creation date is used as the condition for displaying files. When the date search button 522 is enabled, the file creation date is used as the condition for displaying files. The start date 553 and end date 554 are display items for setting the start and end dates of the creation of the files to be displayed, respectively. Files created between the start date 553 and the end date 554 are displayed on the in-app file selection screen 511. The condition setting screen 551 also displays an import button 555 for importing files from other applications. When the import button 555 is selected, files imported from other applications can be printed. In this way, the in-app file selection screen 511 can have application-specific browser functions, such as filtering the files to be displayed by date or accessing the cloud. On the other hand, the OS-provided file selection screen 541 cannot provide unique browser functions such as date filtering. Here, we have shown filtering by date as an example of an application's unique function, but this is not limited to this.The file list can also be sorted by creation date and time, or the file name, file size, and creation date and time can be displayed in addition to file thumbnails.

[0046] The process of selecting a photo file to print in application 401 and printing the selected file will be described using the flowchart in Fig. 7. Each step in Fig. 7 is realized by CPU 202 executing a program stored in ROM 203 or storage device 209.

[0047] In step S701, the UI unit 402 accepts selection of the photo print button 503. Then, in S702, the control unit 404 acquires the OS on which the application 401 runs, i.e., the version of the OS running on the data processing device 101, and determines whether the acquired version is equal to or greater than a predetermined value. If it is determined that the version is equal to or greater than the predetermined value, the process proceeds to S721; otherwise, the process proceeds to S703. Here, for example, if the OS is Android 14 or higher, the process proceeds to S721, and if it is lower than Android 13, the process proceeds to S703. Here, the OS version is used for the determination, but this configuration is not limited to this. For example, the configuration may also be such that it determines whether there are predetermined restrictions on access to OS files.

[0048] In S703, the file browser unit 406 displays an in-application file selection screen. In S704, the file browser unit 406 acquires photo files stored in the storage device 209 or the like of the data processing device 101. Then, in S705, the file browser unit 406 displays a list of the acquired photo files. Here, for example, the in-application file selection screen 511 is displayed.

[0049] In S706, the control unit 404 determines whether an instruction to select a file from the cloud has been received from the user. For example, it determines whether the cloud button 512 has been selected, and if it has been selected, the process proceeds to S710, and if it has not been selected, the process proceeds to S707. In S710, the control unit 404 connects to the cloud service and receives a user selection operation from a list of files saved in cloud storage. If a file selection has been received, the process may proceed to S709 or S727, with the file being selected as the file to be printed.

[0050] In S707, the control unit 404 determines whether an instruction to select a file from another application has been received from the user. For example, it determines whether the import button 555 has been selected, and if it has been selected, the process proceeds to S711, and if it has not been selected, the process proceeds to S708. In S711, the control unit 404 starts up another application and receives a user selection operation from a list of files held by the other application. If a file selection has been received, the process may proceed to S709 or S727, with the file being the file to be printed.

[0051] In S708, the control unit 404 determines whether a file has been selected on the in-application file selection screen. If it is determined that a file has been selected, the process proceeds to S712; if not, the process proceeds to S709. In S712, the UI unit 402 displays a check mark 516 on the thumbnail of the file selected in S708, and the process proceeds to S709.

[0052] In S709, the control unit 404 determines whether or not the Next button 518 has been selected on the in-application file selection screen. If the Next button 518 has been selected, the process proceeds to S727; if not, the process returns to S706.

[0053] In S721, the UI unit 402 displays the photo acquisition destination selection screen 531. In S722, the control unit 404 determines whether or not the cloud service button 533 has been selected on the photo acquisition destination selection screen 531, and if selected, proceeds to S710, and if not, proceeds to S723. In S723, the control unit 404 determines whether or not the other app button 534 has been selected on the photo acquisition destination selection screen 531, and if selected, proceeds to S711, and if not, proceeds to S724. In S723, the control unit 404 determines whether or not the smartphone in button 532 has been selected on the photo acquisition destination selection screen 531, and if selected, proceeds to S725, and if not, returns to S721.

[0054] In step S725, the file browser unit 406 instructs the OS 410 to display an OS-provided file selection screen. For example, the file browser unit 406 instructs the OS 410 to display a Photo Picker screen.

[0055] In S726, the control unit 404 determines whether a photo file has been sent from the OS 410, and if so, proceeds to S726, otherwise repeats the processing of S726. Here, when the user selects a file on the OS-provided file selection screen 541 and selects the Add button 544, the selected file is sent from the OS 410 to the application 401.

[0056] In S727, the control unit 404 copies the photo file selected by the user to a memory area available to the application 401. In S728, the control unit 404 converts the selected photo file into bitmap data. The UI unit 402 then displays a preview screen of the selected file. In S730, the control unit 404 determines whether the print button 525 has been selected. If selected, the process proceeds to S731; if not, the process returns to S729.

[0057] In S731, the control unit 404 transmits a print job including the file selected by the user to the target image processing device 104. The image processing device 104 that receives the print job prints the photo file selected by the user based on the print settings included in the print job.

[0058] By processing the above flowchart, if the OS version of the data processing device 101 is below a predetermined value and there are no file access restrictions, a file selection screen within the application is displayed, providing a user-friendly file browsing function, and if the OS version is equal to or higher than a predetermined value and there are file access restrictions, a file selection screen provided by the OS is displayed, thereby avoiding the user having to approve permission each time they select a file. In other words, it is possible to provide an appropriate file selection screen based on information about the OS on which the application runs.

[0059] In the above example flowchart, the OS version is determined in S702, but this is not a limitation. For example, the OS may be configured to determine whether or not it can display the Photo Picker screen. If the OS can display the Photo Picker screen, the process proceeds to S721; if the OS cannot display the Photo Picker screen, the process proceeds to S703. Since some OS versions do not support the Photo Picker, this determination can also provide an appropriate file selection screen. Furthermore, instead of determining whether or not the OS can display the Photo Picker screen, the process may instead determine whether or not the file browser function provided by the OS is available.

[0060] In the above example of the flowchart, the file browser unit 406 is configured to instruct the OS 410 to display an OS-provided file selection screen in S725, but this is not limited to this. The file browser unit 406 may be configured to call a photo selection application of the data processing device 101. Here, the photo selection application is, for example, Google Photo (registered trademark). The file selected by the photo selection application may be received in S726.

[0061] FIG. 6 is an example of a screen for selecting a document file to print in the application 401. This screen is displayed when the user selects the document print button 502 on the menu screen 501. When the document print button 502 is selected, a document acquisition destination selection screen (not shown) is displayed, and the user selects the acquisition destination of the document file. This document acquisition destination selection screen is configured similarly to the photo acquisition destination selection screen 531. When the cloud service button, which specifies a cloud service as the acquisition destination of the document file, is selected, the document file is acquired from the cloud. When the smartphone internal button, which specifies the data processing device 101 as the acquisition destination of the document file, is selected, a file selection screen 610 is displayed.

[0062] File selection screen 610 is a file browser screen provided by the OS. Here, an example of the SAF (Storage Access Framework) screen for Android is shown. Unlike the Photo Picker screen, the SAF screen does not display a list of photo files contained in storage, but instead displays a folder hierarchy, allowing the user to select the desired file by selecting a folder. Furthermore, the SAF screen cannot be specified by application 401 as the default screen to open. Here, as an example, let's assume that the "Root" directory is opened. The file selection screen 610 displays a directory name 611 and a list of folders (612-617) contained in the "Root" directory.

[0063] The file selection screen 620 is displayed when the "Application 401" folder button 616 is pressed. The file selection screen 620 displays a list of data (621-623) contained in the "Application 401" folder and a button 624 to return to the previous directory. When a file is selected on the file selection screen 620, the screen transitions to a print instruction screen such as the print instruction screen 521, where the user can instruct the image processing device to print the selected document file. The file selection screens 610 and 620 are screens provided by the OS, and are file selection screens that utilize the file browser function of the OS. Even on the file selection screens 610 and 620, the user is not asked for permission each time a file is selected, even if the OS version is 14 or higher.

[0064] The process of selecting a document file to be printed in application 401 and printing the selected file will be described using the flowchart in Fig. 8. Each step in Fig. 8 is realized by CPU 202 executing a program stored in ROM 203 or storage device 209.

[0065] In step S801, the UI unit 402 accepts the selection of the document print button 502.

[0066] In S802, the UI unit 402 displays a document acquisition destination selection screen. In S803, the control unit 404 determines whether or not the cloud service button has been selected on the document acquisition destination selection screen, and if selected, proceeds to S830, and if not, proceeds to S804. In S830, the control unit 404 connects to the cloud service and accepts a user selection operation from a list of files saved in cloud storage. If a file selection has been accepted, the process may proceed to S806 or S807, with that file as the file to be printed.

[0067] In S804, the control unit 404 determines whether or not the smartphone button has been selected on the document acquisition destination selection screen, and if it has been selected, the process proceeds to S805, and if not, the process returns to S802.

[0068] In step S805, the file browser unit 406 instructs the OS 410 to display an OS-provided file selection screen. For example, the file browser unit 406 instructs the OS 410 to display an SAF screen.

[0069] In S806, the control unit 404 determines whether or not a document file has been sent from the OS 410. If a document file has been sent, the process proceeds to S807. If not, the process of S806 is repeated. Here, when the user selects a file on the file selection screen 620, the selected file is sent from the OS 410 to the application 401.

[0070] In S807, the control unit 404 copies the document file selected by the user to a memory area available to the application 401. In S808, the control unit 404 converts the selected document file into JPEG data. Then, in S809, the UI unit 402 displays a preview screen of the selected file. In S810, the control unit 404 determines whether the print button 525 has been selected. If selected, the process proceeds to S811; if not, the process returns to S809.

[0071] In S811, the control unit 404 transmits a print job including the file selected by the user to the target image processing device 104. The image processing device 104 that receives the print job prints the document file selected by the user based on the print settings included in the print job.

[0072] When selecting a file to print a document using the processing in the above flowchart, the SAF screen is displayed regardless of the OS version, etc. This prevents usability degradation when using the file browser function within an app due to changes in OS specifications, but by displaying the SAF screen uniformly, it is possible to prevent this degradation.

[0073] As described above, when selecting a photo, the system is configured to switch between displaying an in-application file selection screen or an OS-provided file selection screen depending on the OS version of the data processing device 101. On the other hand, when selecting a document, the system is configured to display the OS-provided file selection screen regardless of the OS version. However, this configuration is not limiting, and the system may be configured to switch between displaying an in-application file selection screen or an OS-provided file selection screen depending on the OS version of the data processing device 101 whether selecting a photo or a document. Furthermore, the system may be configured to display the OS-provided file selection screen regardless of whether selecting a photo or a document. In addition, although the flowchart in FIG. 7 shows an example in which the OS-provided file selection screen is a Photo Picker, the screen may instead be an SAF screen.

[0074] (Other Examples) The present invention can also be realized by executing the following process: software (program) that realizes the functions of the above-described embodiments is supplied to a system or device via a network or various storage media, and the computer (or CPU, MPU, etc.) of the system or device reads and executes the program. In this case, the computer program and the storage medium storing the computer program constitute the present invention.

[0075] The disclosure of this embodiment includes the following configurations, methods, and programs.

[0076] (Configuration 1) A program for causing a computer of a data processing device on which an operating system (OS) runs to execute a control method, The control method includes: A program characterized by having a control step of controlling, based on information about the OS, whether to instruct the OS to display a first file selection screen using a file browser function provided by the OS, or to display a second file selection screen using the file browser function of the program.

[0077] (Configuration 2) 2. The program according to configuration 1, wherein the information about the OS is information about the version of the OS.

[0078] (Configuration 3) 3. The program according to claim 1, wherein the information about the OS is information indicating whether a predetermined file selection screen provided by the OS can be provided.

[0079] (Configuration 4) 4. The program according to any one of configurations 1 to 3, wherein the files to be displayed on the second file selection screen can be filtered based on file date information.

[0080] (Configuration 5) 5. The program according to any one of configurations 1 to 4, wherein, if the OS is a predetermined version, the control process instructs the display of the first file selection screen, and if the OS is not a predetermined version, the control process instructs the display of the second file selection screen.

[0081] (Configuration 6) The program described in any one of configurations 1 to 5, characterized in that when a photo file is selected, the control process controls whether to display the first file selection screen or the second file selection screen based on information about the OS, and when a document file is selected, the control process instructs the OS to display a file selection screen using a file browser function provided by the OS regardless of the information about the OS.

[0082] (Configuration 7) The program described in any one of configurations 1 to 6, characterized in that when a button for selecting print data to instruct an image forming device to print is selected, if the OS satisfies a predetermined condition, the control process displays the second file selection screen, and if the OS does not satisfy the predetermined condition, the control process displays a screen for selecting a file acquisition destination, and when a predetermined acquisition destination is selected on the screen, instructs the OS to display the first file selection screen.

[0083] (Configuration 8) 8. The program according to any one of configurations 1 to 7, wherein the OS is Android (registered trademark).

[0084] (Configuration 9) 9. The program according to any one of configurations 1 to 8, wherein the first file selection screen extracts and displays photo files.

[0085] (Configuration 10) 10. The program according to any one of configurations 1 to 9, wherein the first file selection screen does not request user permission to access a file.

[0086] (Configuration 11) 11. The program according to any one of configurations 1 to 10, wherein the first file selection screen is used by a plurality of applications, and the second file selection screen is used by the program.

[0087] (Configuration 12) A program described in any one of configurations 1 to 11, characterized in that the program is a program that issues print instructions to an image forming device, and the first file selection screen and the second file selection screen are screens for selecting print data.

[0088] (Configuration 13) 13. The program according to any one of configurations 1 to 12, wherein the second file selection screen includes a display item for accessing a cloud service.

[0089] (Program 1) A program for causing a computer of a data processing device on which an operating system (OS) runs to execute a control method, The control method includes: A program characterized by having a control step of controlling whether to display a screen for selecting a file source and a file selection screen using the file browser function of the program based on information about the OS.

[0090] (Method 1) A control method for a computer of a data processing device on which an operating system (OS) runs, comprising: A control method characterized by having a control step of controlling, based on information about the OS, whether to instruct the OS to display a first file selection screen using a file browser function provided by the OS, or to display a second file selection screen using the file browser function of the program.

[0091] (device 1) A data processing device on which an operating system (OS) runs, A data processing device characterized by having a control means that controls, based on information about the OS, whether to instruct the OS to display a first file selection screen using a file browser function provided by the OS, or to display a second file selection screen using the file browser function of the program.

Claims

1. A program for causing a computer of a data processing device on which an operating system (OS) runs to execute a control method, The control method includes: A program characterized by having a control process that controls, based on information about the OS, whether to instruct the OS to display a first file selection screen using a file browser function provided by the OS, or to display a second file selection screen using the file browser function of the program.

2. 2. The program according to claim 1, wherein the information about the OS is information about the version of the OS.

3. 2. The program according to claim 1, wherein the information about the OS is information indicating whether a predetermined file selection screen provided by the OS can be provided.

4. 2. The program according to claim 1, wherein the files displayed on the second file selection screen can be filtered based on file date information.

5. The program described in claim 1, characterized in that if the OS is a specified version, the control process instructs the display of the first file selection screen, and if the OS is not a specified version, the control process instructs the display of the second file selection screen.

6. The program described in claim 1, characterized in that when a photo file is selected, the control process controls whether to display the first file selection screen or the second file selection screen based on information about the OS, and when a document file is selected, the control process instructs the OS to display a file selection screen using a file browser function provided by the OS regardless of the information about the OS.

7. The program of claim 1, characterized in that when a button for selecting print data to instruct an image forming device to print is selected, if the OS satisfies a predetermined condition, the control process displays the second file selection screen, and if the OS does not satisfy the predetermined condition, the control process displays a screen for selecting a file acquisition source, and when a predetermined acquisition source is selected on the screen, instructs the OS to display the first file selection screen.

8. 2. The program according to claim 1, wherein the OS is Android (registered trademark).

9. 2. The program according to claim 1, wherein the first file selection screen extracts and displays photo files.

10. 2. The program according to claim 1, wherein the first file selection screen does not request user permission to access a file.

11. 2. The program according to claim 1, wherein the first file selection screen is used by a plurality of applications, and the second file selection screen is used by the program.

12. 2. The program according to claim 1, wherein the program is a program for issuing a print instruction to an image forming apparatus, and the first file selection screen and the second file selection screen are screens for selecting print data.

13. The program of claim 1 , wherein the second file selection screen includes a display item for accessing a cloud service.

14. A program for causing a computer of a data processing device on which an operating system (OS) runs to execute a control method, The control method includes: A program characterized by having a control step of controlling, based on information about the OS, whether to display a screen for selecting a file source and whether to display a file selection screen using the file browser function of the program.

15. A control method for a computer of a data processing device on which an operating system (OS) runs, comprising: A control method characterized by having a control step of controlling, based on information about the OS, whether to instruct the OS to display a first file selection screen using a file browser function provided by the OS or to display a second file selection screen using the file browser function of the program.

16. A data processing device on which an operating system (OS) runs, A data processing device characterized by having a control means that controls, based on information about the OS, whether to instruct the OS to display a first file selection screen using a file browser function provided by the OS or to display a second file selection screen using the file browser function of the program.

Citation Information

Patent Citations

  • A media-enabled messaging system and method with publish-and-send functionality.

    JP2007513423A

  • Media / Audio Binding Protocols and Related User Interfaces

    JP2013536637A

  • Device control unit, device control method, and device control program

    JP2016031668A

  • Control method and program for communication terminal

    JP2019008370A

  • Information processing apparatus and operation-related information display method

    JP2020201888A