(57)【要約】【課題】煩雑なユーザ操作を要することなく、一のアプリケーションを起動させる場合に、他のアプリケーションを適切に制御することを目的とする。【解決手段】新たに起動させる起動対象のアプリケーションの制限情報に基づいて、停止対象のアプリケーションを特定する第１の特定手段と、第１の特定手段により特定された停止対象のアプリケーションを停止させる停止手段とを有する。【選択図】図９
2019087088.tif 000002
【特許請求の範囲】
【請求項１】
新たに起動させる起動対象のアプリケーションの制御情報に基づいて、停止対象のアプリケーションを特定する第１の特定手段と、
前記第１の特定手段により特定された前記停止対象のアプリケーションを停止させる停止手段と
を有することを特徴とする情報処理装置。
【請求項２】
前記制御情報は、前記停止対象のアプリケーションの種別を示す情報であって、
前記第１の特定手段は、前記制御情報に示される種別のアプリケーションを前記停止対象のアプリケーションとして特定することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記停止手段は、前記起動対象のアプリケーションの起動時に前記停止対象のアプリケーションを停止させることを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
前記停止手段は、前記起動対象のアプリケーションのインストール時に前記停止対象のアプリケーションを停止させることを特徴とする請求項１又は２に記載の情報処理装置。
【請求項５】
アプリケーションと、前記アプリケーションが呼び出すアプリケーションと、を対応付けたテーブルを参照し、前記停止対象のアプリケーションを呼び出すアプリケーションを特定する第２の特定手段と、
前記第２の特定手段により特定されたアプリケーションによる前記停止対象のアプリケーションの呼び出しを制限する処理を行う制限手段と
を有する請求項１乃至４の何れか１項に記載の情報処理装置。
【請求項６】
前記制限手段は、前記停止対象のアプリケーションを呼び出すためのアイコンを非表示にするよう制御することを特徴とする請求項５に記載の情報処理装置。
【請求項７】
情報処理装置が実行する情報処理方法であって、
新たに起動させる起動対象のアプリケーションの制限情報に基づいて、停止対象のアプリケーションを特定する第１の特定ステップと、
前記第１の特定ステップにより特定された前記停止対象のアプリケーションを停止させる停止ステップと
を含むことを特徴とする情報処理方法。
【請求項８】
コンピュータを、請求項１乃至６の何れか１項に記載の情報処理装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法及びプログラムに関する。
【背景技術】
【０００２】
従来、スキャン機能やプリント機能を備えた複合機（ＭＦＰ：Ｍｕｌｔｉ  Ｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ）では、アプリケーション（以降アプリと呼ぶ）を複合機内にインストールすることで機能を拡張できるシステムが普及している。複合機のアプリには様々な種類がある。例えば、ＭＦＰに搭載するスキャナやプリンタを使ったコピーアプリ、文書をスキャンして送信するファクスアプリ、保管文書を印刷する印刷アプリ等が挙げられる。
【０００３】
アプリの提供者によっては、自社のアプリや機能を使わせたいニーズから、ＭＦＰに標準で搭載されるアプリと、同種の機能（例：コピー）を持つアプリを搭載したいというケースがある。こうしたケースにおいて、アプリ提供者が採用するコピーアプリのみ使わせ、ＭＦＰの標準搭載のコピーアプリを使えないようにしたい、という要望があった。こうした要望を満たすために、ＭＦＰの設置者は、使わせたいアプリだけを使えるようにするための作業が必要であった。特許文献１には、こうした複数のアプリの停止等の作業を効率化する仕組みが開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１７−４１７５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、より簡単に適切なアプリの停止処理を行う技術が求められていた。
【０００６】
本発明はこのような問題点に鑑みなされたもので、煩雑なユーザ操作を要することなく、一のアプリケーションを起動させる場合に、他のアプリケーションを適切に制御することを目的とする。
【課題を解決するための手段】
【０００７】
そこで、本発明は、情報処理装置であって、新たに起動させる起動対象のアプリケーションの制限情報に基づいて、停止対象のアプリケーションを特定する第１の特定手段と、前記第１の特定手段により特定された前記停止対象のアプリケーションを停止させる停止手段とを有することを特徴とする。
【発明の効果】
【０００８】
本発明によれば、煩雑なユーザ操作を要することなく、一のアプリケーションを起動させる場合に、他のアプリケーションを適切に制御することができる。
【図面の簡単な説明】
【０００９】
【図１】情報処理システムの全体図である。
【図２】ＭＦＰのハードウェア構成図である。
【図３】ＭＦＰのアプリケーションの構成図である。
【図４】ローカルＭＦＰアプリとしての各アプリの構成を示す図である。
【図５】マニフェストファイルの一例を示す図である。
【図６】テーブルのデータ構成例を示す図である。
【図７】アプリの表示画面例を示す図である。
【図８】アプリ情報登録処理を示すフローチャートである。
【図９】アプリ停止処理を示すフローチャートである。
【図１０】呼び出しボタン非表示処理における詳細な処理を示すフローチャートである。
【発明を実施するための形態】
【００１０】
以下、本発明の実施形態について図面に基づいて説明する。
図１は、本発明の実施形態に係る情報処理システム１００の全体図である。情報処理システム１００は、ＭＦＰ１１０とＰＣ１２０とを有している。ＭＦＰ１１０とＰＣ１２０は、ＬＡＮ１３０を介して接続している。ＭＦＰ１１０は、操作部１１１、スキャナ部１１２、プリンタ部１１３を有する複合機（多機能処理装置）である。実施形態に係るＭＦＰ１１０は、スキャナ部１１２を利用して原稿を読み取って得られた画像を、プリンタ部１１３を利用して印刷できる。
【００１１】
ＰＣ１２０は、ＭＦＰ１１０に対して各種設定を行うための端末装置として機能する。なお、上述のシステム構成はあくまでも一例であり、これらの機器の数などは、本実施形態に限定されない。また、本実施形態においては、情報処理装置の一例としてＭＦＰ１１０について説明するが、情報処理装置はＭＦＰに限定されるものではなく、単機能のプリンタであってもよく、またはＰＣ等であってもよい。
【００１２】
本実施形態に係るＭＦＰ１１０には、複数のアプリがインストールされており、さらに新たなアプリをインストールすることができる。なお、アプリには複数の種類のものがある。説明の便宜上、一部のアプリを、アプリの利用用途や役割から、以下のように定義する。機能によっては、１つのアプリのみを使用することを想定する場合がある。この場合、使用される１つのアプリは、同時に使われることを禁止する他のアプリに対し停止を指示する。この機能において使用されるアプリを指示アプリと称することとする。また、指示アプリから停止を指示されたアプリを停止対象アプリと称する。また、他のアプリを呼び出すアプリを呼び出しアプリと称する。また、呼び出しアプリに呼び出されるアプリを被呼び出しアプリと称する。
【００１３】
本実施形態においては、呼び出しアプリは、他のアプリを呼び出すボタン等のアイコンを表示した画面表示を行うものとする。呼び出しアプリには、他のアプリのショートカットのボタンを表示した画面表示を行うアプリも含まれる。また、呼び出しアプリには、他のアプリの設定を行うための、設定画面を表示するためのボタンを表示した画面表示を行うアプリも含まれる。なお、呼び出しアプリのボタン表示については、図７を参照しつつ後述する。
【００１４】
図２は、ＭＦＰ１１０のハードウェア構成図である。操作部１１１は、タッチパネル機能を有する表示部や各種ハードキー等を有し、制御部２００からのデータに従ってユーザに対して情報を表示したり、ユーザの操作に応じた情報を制御部２００に入力したりする。スキャナ部１１２は、原稿上の画像を読み取って、その画像の画像データを作成して制御部２００に供給する。プリンタ部１１３は、制御部２００から受け取った画像データに基づいて用紙上に画像を印刷する。
【００１５】
制御部２００は、操作部１１１、スキャナ部１１２、プリンタ部１１３と電気的に接続されており、またＬＡＮ１３０にもネットワークインターフェース（Ｉ／Ｆ）２０６を介して接続されている。これによりＬＡＮ１３０を介した、ＴＣＰ／ＩＰ等の通信プロトコルによる通信が可能となっている。制御部２００は、ＣＰＵ２０１、ＲＯＭ２０２、ＲＡＭ２０３、ＨＤＤ２０４、操作部Ｉ／Ｆ２０５、ネットワークＩ／Ｆ２０６、スキャナＩ／Ｆ２０７、画像処理部２０８及びプリンタＩ／Ｆ２０９を有している。制御部２００の各部は、システムバス２１１を介して接続されている。
【００１６】
ＣＰＵ２０１は、ＲＯＭ２０２のブートプログラムを実行してＨＤＤ２０４に記憶されたＯＳや制御プログラムをＲＡＭ２０３に展開し、そのプログラムに基づいてこのＭＦＰ１１０を統括的に制御する。この制御には、後述のフローチャートを実現するためのプログラムの実行も含む。ＲＯＭ２０２には、このＭＦＰ１１０のブートプログラムや各種データが格納されている。ＲＡＭ２０３は、ＣＰＵ２０１が動作するためのワークメモリを提供し、また画像データを一時記憶するための画像メモリも提供している。ＨＤＤ２０４は、ハードディスクドライブであり、ＯＳや各種プログラムや画像データを格納している。なお、後述するＭＦＰ１１０の機能や処理は、ＣＰＵ２０１がＲＯＭ２０２又はＨＤＤ２０４に格納されているプログラムを読み出し、このプログラムを実行することにより実現されるものである。
【００１７】
操作部Ｉ／Ｆ２０５は、システムバス２１１と操作部１１１とを接続するためのインターフェース部である。ネットワークＩ／Ｆ２０６は、ＬＡＮ１３０及びシステムバス２１１に接続し、ネットワークを介して情報の入出力を行う。スキャナＩ／Ｆ２０７は、スキャナ部１１２と制御部２００との間のインターフェースを制御する。画像処理部２０８は、スキャナ部１１２から入力した画像データ、及びプリンタ部１１３に出力する画像データに対して、回転、色変換、画像圧縮／伸張処理などの画像処理を行う。プリンタＩ／Ｆ２０９は、画像処理部２０８で処理された画像データを受け取り、この画像データに付随している属性データに従ってプリンタ部１１３による印刷を制御する。
【００１８】
図３は、ＭＦＰ１１０のアプリケーションの構成図である。インストール部３０１は、ＭＦＰアプリをインストールし、アプリを開始する制御を行う。インストール部３０１は、ネットワークＩ／Ｆ２０６を介してＰＣ１２０に接続され、ＰＣ１２０からの指示によりアプリのインストールを実行する。停止部３０２は、アプリの停止を制御する。登録部３０３は、アプリ情報を登録する。ここで、アプリ情報とは、アプリの属性等、アプリに関する情報である。本実施形態においては、アプリ情報は、アプリの識別子、アプリ名、アプリの機能種別（タイプ）を含むものとする。ただし、アプリ情報は、これに限定されるものではなく、さらに、バージョン、アプリがインポートするライブラリ名等を含んでもよい。登録部３０３はさらに、呼び出し情報を登録する。ここで、呼び出し情報とは、呼び出しアプリと被呼び出しアプリの組み合わせを示す情報である。
【００１９】
停止対象アプリ特定部３０４は、停止対象アプリを特定する。アプリ情報管理テーブル３０６は、アプリ情報を管理するためのテーブルである。呼び出し管理テーブル３０７は、呼び出しアプリを管理するためのテーブルである。呼び出しアプリ管理部３０５及びアプリ情報管理テーブル３０６については図６を参照しつつ説明する。
【００２０】
ローカルＭＦＰアプリ３１０は、ＭＦＰ１１０のＨＤＤ２０４に格納される。ローカルＭＦＰアプリ３１０は、ＭＦＰ１１０のスキャナ部１１２、プリンタ部１１３、画像処理部２０８等を利用した機能をアプリケーションとしてＭＦＰ１１０に提供するアプリである。ローカルＭＦＰアプリ３１０は、自身が持つアプリケーションを呼び出すことで、自身が提供する機能をＭＦＰ１１０で実行する。図３の例では、ＭＦＰ１１０には、ローカルＭＦＰアプリ３１０として、５つのアプリがインストールされている。５つのアプリは、標準コピーアプリ３１１、シンプルコピーアプリ３１２、カスタムメニューアプリ３１４、コスト管理コピーアプリ３１３及び設定メニューアプリ３１５である。
【００２１】
図４は、ローカルＭＦＰアプリ３１０としての各アプリの構成を示す図である。ローカルＭＦＰアプリ３１０は、マニフェストファイル４０１と、機能処理部４０２と、を有している。マニフェストファイル４０１は、ＭＦＰアプリの基本情報が記述されたデータファイルである。機能処理部４０２は、アプリにおいて、機能処理（コピー、印刷）等を担う。
【００２２】
図５は、マニフェストファイルの一例を示す図である。図５（ａ）のマニフェストファイル５０１は、標準コピーアプリ３１１に対応する。マニフェストファイル５０２は、シンプルコピーアプリ３１２に対応する。マニフェストファイル５０３は、コスト管理コピーアプリ３１３に対応する。マニフェストファイル５０４は、カスタムメニューアプリ３１４に対応する。マニフェストファイル５０５は、設定メニューアプリ３１５に対応する。
【００２３】
各マニフェストファイル５０１〜５０５においては、「アプリＩＤ」と、「アプリ名」と、「タイプ」が定義されている。「アプリＩＤ」は、アプリを識別するための識別子である。「アプリ名」５０２は、アプリの名称である。「タイプ」は、アプリの機能カテゴリー（種別）である。例えば、コピーを行うアプリの場合、「タイプ」には、「ＣＯＰＹ」と記述される。なお、各項目は、ローカルＭＦＰアプリ３１０で共通して定義される項目である。マニフェストファイル５０３においては、さらに「制御」が定義されている。「制御」は、タイプの文字列をマニフェストに持つアプリを停止対象アプリとして特定する際に参照される情報である。すなわち、「制御」に示されるタイプのアプリが停止対象アプリとして特定される。例えば、「制御」に「ＣＯＰＹ」と記載されている場合には、「タイプ」が「ＣＯＰＹ」のアプリが停止対象アプリとして特定される。
【００２４】
図６（ａ）は、アプリ情報管理テーブル３０６のデータ構成例を示す図である。アプリ情報管理テーブル３０６は、項目として、「アプリＩＤ」と、「アプリ名」と、「タイプ」と、「制御条件」と、を有している。ここで、「制御条件」はマニフェストファイルの「制御」に対応し、これらは、制御情報の一例である。アプリ情報管理テーブル３０６は、ローカルＭＦＰアプリ３１０としてＭＦＰ１１０が管理するすべてのアプリについてのアプリ情報をレコードとして記憶する。図６（ａ）に示すアプリ情報管理テーブル３０６には、５つのレコード６０１〜６０５が記憶されている。各レコード６１１〜６１５は、上述の各項目の情報を含んでいる。各レコード６０１〜６０５は、対応するアプリのアプリ情報である。レコード６０１は標準コピーアプリ３１１のマニフェストファイル５０１と同じ情報を有している。レコード６０２は、シンプルコピーアプリ３１２のマニフェストファイル５０２と同じ情報を有している。同様にレコード６０３〜６０５は、それぞれマニフェストファイル５０３〜５０５と同じ情報を有している。なお、各レコード（アプリ情報）は、対応するアプリケーションのインストール時に登録部３０３により、アプリ情報管理テーブル３０６に格納される。本処理については、図８を参照しつつ後述する。
【００２５】
なお、本実施形態においては、ＭＦＰ１１０は、アプリ情報管理テーブル３０６によりアプリ情報を管理するものとするが、他の例としては、図５に示す、各アプリのマニフェストファイル５０１〜５０５をアプリ情報として管理してもよい。この場合には、ＭＦＰ１１０は、アプリ情報管理テーブル３０６を記憶している必要はない。
【００２６】
図６（ｂ）は、呼び出し管理テーブル３０７のデータ構成例を示す図である。呼び出し管理テーブル３０７は、項目として、「被呼び出しアプリＩＤ」と、「呼び出しアプリＩＤ」と、を有している。被呼び出しアプリＩＤは、被呼び出しアプリのアプリＩＤである。呼び出しアプリＩＤは、呼び出しアプリのアプリＩＤである。あるアプリにより表示される画面において、呼び出されるアプリが登録されたとする。この場合に、画面表示を行うアプリと、呼び出されるアプリと、がそれぞれ呼び出しアプリ、被呼び出しアプリとして、各アプリのアプリＩＤを対応付けたレコードが、登録部３０３により呼び出し管理テーブル３０７に登録される。
【００２７】
ここで、図７を参照しつつ呼び出しアプリと、被呼び出しアプリについて説明する。図７（ａ）の表示画面７００は、カスタムメニューアプリ３１４により表示される画面である。表示画面７００には、標準コピーアプリ３１１を呼び出すためのボタン７０１と、シンプルコピーアプリ３１２を呼び出すためのボタン７０２と、が表示されている。ここで、カスタムメニューアプリ３１４は、呼び出しアプリであり、標準コピーアプリ３１１及びシンプルコピーアプリ３１２は、被呼び出しアプリである。ここで、ボタンは、アイコンの一例である。
【００２８】
また、図７（ｂ）の表示画面７１０は、設定メニューアプリ３１５により表示される画面である。表示画面７１０には、標準コピーアプリ３１１を呼び出すためのボタン７１１と、シンプルコピーアプリ３１２を呼び出すためのボタン７１２と、が表示されている。ここで、設定メニューアプリ３１５は、呼び出しアプリであり、標準コピーアプリ３１１及びシンプルコピーアプリ３１２は、被呼び出しアプリである。なお、設定メニューアプリ３１５から呼び出される被呼び出しアプリの数は任意に設定できるものとする。また、被呼び出しアプリを示す表示は、ボタンに限定されるものではない。他の例としては、アプリ名を示すテキスト文字列等の情報であってもよい。
【００２９】
次に、図６に示す呼び出し管理テーブル３０７の登録処理について図７を参照しつつ説明する。なお、本実施形態においては、アプリＩＤ「ＡＰＰ００４」のカスタムメニューアプリ３１４及び「ＡＰＰ００５」の設定メニューアプリ３１５は、いずれも呼び出しアプリであるものとする。また、アプリＩＤ「ＡＰ００１」の標準コピーアプリ３１１及びアプリＩＤ「ＡＰ００２」のシンプルコピーアプリ３１２は、被呼び出しアプリであるものとする。
【００３０】
アプリＩＤ「ＡＰＰ００４」のカスタムメニューアプリ３１４が図７（ａ）に示す表示画面７００を表示するとする。この表示画面７００に標準コピーアプリ３１１を呼び出すためのボタン７０１が登録されたとする。この場合、登録部３０３は、呼び出しアプリＩＤ「ＡＰ００４」と被呼び出しアプリＩＤ「ＡＰ００１」とを対応付けたレコード６１１を、呼び出し管理テーブル３０７に登録する。また、表示画面７００に、シンプルコピーアプリ３１２を呼び出すためのボタン７０２が登録されたとする。この場合、登録部３０３は、呼び出しアプリＩＤ「ＡＰ００４」と被呼び出しアプリＩＤ「ＡＰ００２」とを対応付けたレコード６１２を、呼び出し管理テーブル３０７に登録する。
【００３１】
また、アプリＩＤ「ＡＰＰ００５」の設定メニューアプリ３１５が図７（ｂ）に示す表示画面７１０を表示するとする。この表示画面７１０に標準コピーアプリ３１１を呼び出すためのボタン７１１が登録されたとする。この場合、登録部３０３は、呼び出しアプリＩＤ「ＡＰＰ００５」と被呼び出しアプリＩＤ「ＡＰ００１」とを対応付けたレコード６１３を呼び出し管理テーブル３０７に登録する。また、表示画面７１０に、シンプルコピーアプリ３１２を呼び出すためのボタン７１２が登録されたとする。この場合、登録部３０３は、呼び出しアプリＩＤ「ＡＰＰ００５」と被呼び出しアプリＩＤ「ＡＰＰ００２」とを対応付けたれコード６１４を呼び出し管理テーブル３０７に登録する。
【００３２】
なお、ＭＦＰ１１０は、呼び出しアプリと被呼び出しアプリとの対応関係を特定可能な情報を記憶していればよく、具体的なデータ構成は、呼び出し管理テーブル３０７に限定されるものではない。他の例としては、ＭＦＰ１１０は、ローカルＭＦＰアプリ３１０としての各アプリのマニフェストファイルに、被呼び出しアプリＩＤと呼び出しアプリＩＤとを対応付ける情報を記載し、マニフェストファイルを参照することとしてもよい。
【００３３】
図８は、ＭＦＰ１１０によるアプリ情報登録処理を示すフローチャートである。Ｓ８０１において、登録部３０３は、インストールの対象となるアプリのマニフェストファイルを取得する。以下、新たにインストールされたアプリを対象アプリと称することとする。なお、本実施形態においては、対象アプリは、インストール後自動的に起動するアプリケーションであるものとする。対象アプリは、起動対象のアプリケーションの一例である。次に、Ｓ８０２において、登録部３０３は、マニフェストファイルの「制御」の定義の有無に従い、対象アプリが指示アプリか否かを判定する。登録部３０３は、「制御」の定義がある場合には指示アプリと判定し、「制御」の定義がない場合には指示アプリでないと判定する。登録部３０３は、指示アプリと判定した場合には（Ｓ８０２でＹＥＳ）、処理をＳ８０３へ進める。登録部３０３は、指示アプリでないと判定した場合には（Ｓ８０２でＮＯ）、処理をＳ８０８へ進める。
【００３４】
Ｓ８０３において、登録部３０３は、アプリ情報管理テーブル３０６を参照し、「制御」の定義と同じ制御条件が定められたレコードが存在するか否かを判定する。登録部３０３は、「制御」の定義と同じ制御条件のレコードが存在する場合には（Ｓ８０３でＹＥＳ）、処理をＳ８０４へ進める。登録部３０３は、「制御」の定義と同じ制御条件のレコードが存在しない場合には（Ｓ８０３でＮＯ）、処理をＳ８０５へ進める。Ｓ８０４においては、登録部３０３は、対象アプリをインストールしないよう制御し、アプリ情報登録処理を終了する。なお、この場合、登録部３０３は、対象アプリに対応したアプリ情報のアプリ情報管理テーブル３０６への登録を行わない。「制御」の定義と同じ制御条件のレコードが存在する場合には同じ制御を行うことができないためである。
【００３５】
一方で、Ｓ８０５においては、登録部３０３は、対象アプリのマニフェストファイルに基づいて、アプリＩＤ、アプリ名、タイプ及び制御の値を対応付けたレコード（アプリ情報）をアプリ情報管理テーブル３０６に格納（登録）する。次に、Ｓ８０６において、インストール部３０１は、対象アプリをインストールし、開始（起動）する。次に、Ｓ８０７において、停止対象アプリ特定部３０４は、アプリ停止処理を行い、その後アプリ情報登録処理を終了する。なお、アプリ停止処理については、図９を参照しつつ後述する。また、Ｓ８０８及びＳ８０９の処理は、Ｓ８０５及びＳ８０６の処理と同様である。ＣＰＵ２０１は、Ｓ８０９の処理の後、アプリ情報登録処理を終了する。
【００３６】
アプリ情報登録処理について具体的に説明する。例えば、コスト管理コピーアプリ３１３がインストールの対象であるとする。なお、コスト管理コピーアプリ３１３はＭＦＰ１１０にインストールされておらず、アプリ情報管理テーブル３０６にコスト管理コピーアプリ３１３のアプリ情報（レコード６０３）は登録されていないものとする。この場合、登録部３０３は、Ｓ８０１においてコスト管理コピーアプリ３１３のマニフェストファイル５０３を取得する。マニフェストファイル５０３には「制御」が定義されているため（Ｓ８０２でＹＥＳ）、処理はＳ８０３へ進む。Ｓ８０３において、アプリ情報管理テーブル３０６を参照すると、同じ制御タイプの記載はないので（Ｓ８０３でＮＯ）、処理はＳ８０５へ進む。そして、コスト管理コピーアプリ３１３のアプリ情報（レコード６０３）が登録され（Ｓ８０５）、コスト管理コピーアプリ３１３がインストール、開始される（Ｓ８０６）。
【００３７】
また、例えば、標準コピーアプリ３１１がインストールの対象であるとする。なお、標準コピーアプリ３１１はＭＦＰ１１０にインストールされておらず、アプリ情報管理テーブル３０６に標準コピーアプリ３１１のアプリ情報（レコード６０１）は登録されていないものとする。この場合、登録部３０３は、Ｓ８０１において、標準コピーアプリ３１１のマニフェストファイル５０１を取得する。マニフェストファイル５０１には、「制御」が定義されていないため（Ｓ８０２でＮＯ）、処理はＳ８０８へ進む。そして、標準コピーアプリ３１１のアプリ情報（レコード６０１）が登録され（Ｓ８０８）、標準コピーアプリ３１１がインストールされる（Ｓ８０９）。
【００３８】
図９は、図８を参照しつつ説明したアプリ停止処理（Ｓ８０７）における詳細な処理を示すフローチャートである。Ｓ９０１において、停止対象アプリ特定部３０４は、対象アプリのアプリ情報（アプリ情報管理テーブル３０６のレコード）から、制限条件を特定する。ここで、制限条件は、制限情報の一例である。次に、Ｓ９０２において、停止対象アプリ特定部３０４は、アプリ情報管理テーブル３０６から対象アプリ以外の他のアプリのレコードを１つ選択する。以下、選択されたレコードを選択レコードと称する。
【００３９】
次に、Ｓ９０３において、停止対象アプリ特定部３０４は、選択レコードのタイプが制限条件を満たすか否かを判定する。停止対象アプリ特定部３０４は、制限条件を満たす場合には（Ｓ８０３でＹｅｓ）、処理をＳ９０４へ進める。停止対象アプリ特定部３０４は、制限条件を満たさない場合には（Ｓ８０３でＮＯ）、処理をＳ９０５へ進める。ここで、制限条件を満たすレコードに対応したアプリは、停止対象となるアプリとなる。すなわち、Ｓ９０３の処理は、起動対象のアプリケーションに基づいて、停止対象のアプリケーションを特定する特定処理の一例である。
【００４０】
Ｓ９０４において、停止部３０２は、選択レコードを停止対象アプリとして特定する。そして、停止対象アプリを停止するよう制御する。次に、Ｓ９０５において、呼び出しアプリ管理部３０５は、停止対象アプリに対応した呼び出しボタンの非表示処理を行う。本処理については、図１０を参照しつつ後述する。次に、Ｓ９０６において、停止対象アプリ特定部３０４は、アプリ情報管理テーブル３０６の対象アプリ以外のすべてのアプリのレコードについてＳ９０３〜Ｓ９０５の処理が完了したか否かを判定する。
【００４１】
停止対象アプリ特定部３０４は、未処理のレコードが存在する場合には（Ｓ９０６でＹＥＳ）、処理をＳ９０２へ進める。この場合、停止対象アプリ特定部３０４は、Ｓ９０２において未処理のレコードを１つ選択し、Ｓ９０３以降の処理を行う。なお、本実施形態においては、停止対象アプリ特定部３０４は、アプリ情報管理テーブル３０６のレコードを上から順に選択するものとする。停止対象アプリ特定部３０４は、すべてのレコードについて処理が完了した場合には（Ｓ９０６でＮＯ）、処理をＳ９０７へ進める。Ｓ９０７において、インストール部３０１は、対象アプリを開始する処理を行う。以上で、アプリ停止処理が終了する。
【００４２】
例えば、対象アプリがコスト管理コピーアプリ３１３であるとする。この場合、コスト管理コピーアプリ３１３のレコード６０３に基づいて、制御条件「タイプ＝ＣＯＰＹ」が特定される。そして、まず、レコード６０１が選択され（Ｓ９０２）、タイプが比較される。レコード６０１の「タイプ」は「ＣＯＰＹ」であり、制御条件を満たす。したがって、Ｓ９０４において、レコード６０１に対応した標準コピーアプリ３１１が停止対象アプリとして特定され、停止される。図６のアプリ情報管理テーブル３０６においては、さらにレコード６０２に対応したシンプルコピーアプリ３１２が停止対象アプリとして特定され、停止される。
【００４３】
図１０は、図９を参照しつつ説明した呼び出しボタン非表示処理における詳細な処理を示すフローチャートである。Ｓ１００１において、呼び出しアプリ管理部３０５は、Ｓ９０４において停止された停止対象アプリを１つ選択する。以下、Ｓ１００１において選択されたアプリを選択アプリと称する。次に、Ｓ１００２において、呼び出しアプリ管理部３０５は、呼び出し管理テーブル３０７を参照し、選択アプリを被呼び出しアプリとするレコードが存在するか否かを判定する。呼び出しアプリ管理部３０５は、選択アプリを被呼び出しアプリとするレコードが存在する場合には（Ｓ１００２でＹＥＳ）、処理をＳ１００３へ進める。呼び出しアプリ管理部３０５は、選択アプリを被呼び出しアプリとするレコードが存在しない場合には（Ｓ１００２でＮＯ）、処理をＳ１００４へ進める。
【００４４】
Ｓ１００３において、呼び出しアプリ管理部３０５は、レコードにおいて呼び出しアプリとされるアプリを特定する。そして、呼び出しアプリ管理部３０５は、特定したアプリの表示画面に表示される、選択アプリを示すボタンを非表示にする。呼び出しアプリ管理部３０５は、具体的には、表示画面から選択アプリのボタンを削除するものとする。なお、呼び出しアプリ管理部３０５は、Ｓ１００３において、ユーザが選択アプリを選択できない状態となるような制限処理を行えばよく、そのための具体的な処理は実施形態に限定されるものではない。他の例としては、呼び出しアプリ管理部３０５は、選択アプリのボタンをグレーアウト表示してもよい。
【００４５】
次に、Ｓ１００４において、呼び出しアプリ管理部３０５は、Ｓ９０４において停止されたすべてのアプリについてＳ１００２、Ｓ１００３の処理を完了したか否かを判定する。呼び出しアプリ管理部３０５は、未処理のアプリが存在する場合には（Ｓ１００４でＮＯ）、処理をＳ１００１へ進める。この場合、Ｓ１００１において、呼び出しアプリ管理部３０５は、Ｓ９０４において停止されたアプリのうち、未処理のアプリを１つ選択し、Ｓ１００２以降の処理を行う。呼び出しアプリ管理部３０５は、すべてのアプリについて処理が完了した場合には（Ｓ１００４でＮＯ）、呼び出しボタン非表示処理を終了する。
【００４６】
例えば、停止されたアプリとして標準コピーアプリ３１１が選択されたとする。この場合、呼び出し管理テーブル３０７を参照すると、標準コピーアプリ３１１を被呼び出しアプリとするレコードが存在するので（Ｓ１００２でＹＥＳ）、処理は、Ｓ１００３へ進む。そして、呼び出しアプリであるカスタムメニューアプリ３１４（ＡＰＰ００４）の表示画面における標準コピーアプリ３１１のボタンが非表示となる。同様に、設定メニューアプリ３１５（ＡＰＰ００５）の表示画面における標準コピーアプリ３１１のボタンが非表示となる。
【００４７】
以上のように、本実施形態のＭＦＰ１１０は、あるアプリをインストールする場合に、これに連動して、必要なアプリの停止処理を行うことができる。さらに、ＭＦＰ１１０は、停止したアプリを呼び出すためのボタンも非表示とするよう制御する。このように、ＭＦＰ１１０は、煩雑なユーザ操作を要することなく、一のアプリケーションを起動させる場合に、他のアプリケーションを適切に制御することができる。
【００４８】
なお、実施形態においては、ＭＦＰ１１０は、アプリのインストール時にインストールの対象のアプリに基づいて、アプリの停止や、呼び出しボタンを非表示にする処理を行うこととした。ただし、これらの処理の実行タイミングは、実施形態に限定されるものではない。例えば、インストール後自動的に起動するアプリを対象とする場合には、インストール時にアプリの停止や呼び出しボタンを非表示にする処理を行うのが好ましい。一方で、インストロールと、起動のタイミングを異ならせることが可能なアプリを対象とする場合には、インストール時ではなく、起動時において、アプリの停止や呼び出しボタンを非表示にする処理を行うこととしてもよい。なお、インストールと、開始のタイミングを異ならせることが可能なアプリを対象とする場合においても、アプリの停止や呼び出しボタンを非表示にする処理をインストールのタイミングで行ってもよい。このように、アプリの停止や呼び出しボタンを非表示にする処理のタイミングは任意に設定することができる。
【００４９】
以上、本発明の好ましい実施形態について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【００５０】
（その他の実施例）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００５１】
１００  情報処理システム
１１０  ＭＦＰ
１２０  ＰＣ
３０１  インストール部
３０２  停止部
【図１】
2019087088.tif 000003
【図２】
2019087088.tif 000004
【図３】
2019087088.tif 000005
【図４】
2019087088.tif 000006
【図５】
2019087088.tif 000007
【図６】
2019087088.tif 000008
【図７】
2019087088.tif 000009
【図８】
2019087088.tif 000010
【図９】
2019087088.tif 000011
【図１０】
2019087088.tif 000012