(57)【要約】【課題】  本発明は、呼び出し先アプリケーションが情報処理装置の接続しているネットワーク状態を切り替えていた場合でも、呼び出し元アプリケーションがインターネットやネットワークデバイスをスムーズに利用できるようにすることを目的とする。【解決手段】  情報処理装置において、呼び出し元のアプリケーションにしたがって呼び出し先アプリケーションの呼び出し要求が行われると、ネットワークの状態を記憶し、呼び出し先から呼び出し元アプリケーションを呼び出し直すときに現在のネットワーク状態を確認して、呼び出し元アプリケーションの要求に合わせてネットワーク状態を元に戻す。【選択図】  図６
2019175332.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも第１のアプリケーションと第２のアプリケーションを含む複数のアプリケーションを連携して情報処理を行う情報処理装置であって、
前記第１のアプリケーションから前記第２のアプリケーションの呼び出し要求を行う第１の呼出手段と、
前記第２のアプリケーションでの処理後に、前記第１のアプリケーションに戻るために前記第１のアプリケーションの呼び出し要求を行う第２の呼出手段と、
前記第１の呼出手段によって前記第２のアプリケーションの呼び出し要求が行われると、前記第１のアプリケーションでのネットワーク状態を記憶する第１の記憶手段と、
前記第２のアプリケーションでの処理において設定されたネットワーク状態を記憶する第２の記憶手段と、
前記第２の呼出手段によって前記第１のアプリケーションの呼び出し要求が行われるときに、呼び出し要求の内容に応じて、前記第２のアプリケーションでのネットワーク状態でインターネットが使用できない場合は、第２のアプリケーションが呼び出される前のネットワークに接続を切り替えるネットワーク切り替え手段と、を備えることを特徴とする情報処理装置。
【請求項２】
前記ネットワーク切り替え手段は、前記第２の呼出手段によって前記第１のアプリケーションの呼び出し要求が行われるときに、前記第２のアプリケーションでのネットワーク状態でインターネットが使用できる場合は、ネットワークを切り替えないことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記第２のアプリケーションは、外部装置から画像を取得する処理を行うアプリケーションであり、
前記第１のアプリケーションは、前記第２のアプリケーションで取得された画像を、インターネットを介して画像共有サービスへアップロードする処理を行うことを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
少なくとも第１のアプリケーションと第２のアプリケーションを含む複数のアプリケーションを連携して情報処理を行う情報処理装置であって、
前記第１のアプリケーションから前記第２のアプリケーションの呼び出し要求を行う第１の呼出手段と、
前記第２のアプリケーションでの処理後に、前記第１のアプリケーションに戻るために前記第１のアプリケーションの呼び出し要求を行う第２の呼出手段と、
前記第１の呼出手段によって前記第２のアプリケーションの呼び出し要求が行われると、前記第１のアプリケーションのネットワーク識別情報を記憶する第１の記憶手段と、
前記第２のアプリケーションでの処理において設定されたネットワーク識別情報を記憶する第２の記憶手段と
前記第２の呼出手段によって前記第１のアプリケーションの呼び出し要求が行われるときに、呼び出し要求の内容に応じて、前記ネットワーク識別情報により前記第１のアプリケーションと第２のアプリケーションでのネットワーク状態が異なると判断した場合は、第２のアプリケーションが呼び出される前のネットワークに接続を切り替えるネットワーク切り替え手段と、を備えることを特徴とする情報処理装置。
【請求項５】
前記ネットワーク切り替え手段は、前記第２の呼出手段によって前記第１のアプリケーションの呼び出し要求が行われるときに、前記第１のアプリケーションと第２のアプリケーションでのネットワーク状態が同じと判断した場合は、ネットワークを切り替えないことを特徴とする請求項４に記載の情報処理装置。
【請求項６】
前記第２のアプリケーションは、外部装置から画像を取得する処理を行うアプリケーションであり、
前記第１のアプリケーションは、前記第２のアプリケーションで取得された画像を、ネットワーク上のプリンタに転送する処理を行うことを特徴とする請求項４または５に記載の情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のアプリケーションを用いて情報処理を行う情報処理装置におけるネットワーク制御に関する。
【背景技術】
【０００２】
スマートフォンなどの情報処理装置は、ＯＳや複数のアプリケーションをインストールし、各アプリケーションを用いて動作することで、さまざまな機能を実現することができる。例えば、カメラ接続用アプリケーションを用いてカメラと接続し、画像の取り込みを行ったり、画像編集用アプリケーションを用いて画像の編集を行ったり、画像アップロード用アプリケーションを用いてインターネット上の画像共有サービスにアップロードしたり、画像印刷用アプリケーションを用いてネットワーク上のプリンタで画像印刷したりすることができる。そして、これらの複数のアプリケーションを連携させて使用する機能が知られている。
【０００３】
例えば、特許文献１には、連携元のアプリケーションがＭＦＰにスキャン処理を実行させて取得したデータを、オペレーティングシステムを介して連携先のアプリケーションへ送信することで、複数のアプリケーション間でデータを共有することが開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１２−２１２３４８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
例えば、情報処理装置に、カメラからの画像の取込処理を実行するための第１のアプリケーションと、画像アップロードを実行するための第２のアプリケーションが存在する。第２のアプリケーションが起動されている時、処理の対象となるデータを取得するために、第１のアプリケーションを呼び出してカメラから取得した画像データを受信することが行われる。しかしながら、第１のアプリケーションは、カメラと接続するためにネットワーク接続を切り替えた場合、その動作状態によっては第２のアプリケーションにてインターネット接続できない場合がある。
【０００６】
また、例えば、情報処理装置に、カメラからの画像の取込処理を実行するための第１のアプリケーションと、画像印刷を実行するための第３のアプリケーションが存在する。ここでも同様に、第３のアプリケーションが起動されている時、処理の対象となるデータを取得するために、第１のアプリケーションを呼び出してカメラから取得した画像データを受信することが行われる。しかしながら、第１のアプリケーションは、カメラと接続するために別のネットワーク接続を切り替えた場合、その動作状態によっては第３のアプリケーションにてネットワーク上のプリンタに接続できない場合がある。
【０００７】
本発明は、第１のアプリケーションでカメラと接続するためにネットワークを切り替えても、第２の画像アップロード用アプリケーションが画像データを受信したときにインターネット接続ができるようにすることを目的とする。
【０００８】
また、第１のアプリケーションでカメラと接続するためにネットワークを切り替えても、第３の画像印刷用アプリケーションが画像データを受信したときにネットワーク上のプリンタとの接続ができるようにすることを目的とする。
【課題を解決するための手段】
【０００９】
本願に係る発明の１つは、少なくとも第１のアプリケーションと第２のアプリケーションを含む複数のアプリケーションを連携して情報処理を行う情報処理装置であって、第１のアプリケーションから第２のアプリケーションの呼び出し要求を行う第１の呼出手段と、第２のアプリケーションでの処理後に、第１のアプリケーションに戻るために前記第１のアプリケーションの呼び出し要求を行う第２の呼出手段と、第１の呼出手段によって第２のアプリケーションの呼び出し要求が行われると、第１のアプリケーションでのネットワーク状態を記憶する第１の記憶手段と、第２のアプリケーションでの処理において設定されたネットワーク状態を記憶する第２の記憶手段と、第２の呼出手段によって第１のアプリケーションの呼び出し要求が行われるときに、呼び出し要求の内容に応じて、第２のアプリケーションでのネットワーク状態でインターネットが使用できない場合は、第２のアプリケーションが呼び出される前のネットワークに接続を切り替えるネットワーク切り替え手段と、を備える。
【発明の効果】
【００１０】
本発明によれば、情報処理装置において、カメラと接続するためにネットワークを切り替えても、画像データを受信した起動元アプリケーションが目的のネットワークをスムーズに利用することができる。
【図面の簡単な説明】
【００１１】
【図１】本発明の実施形態における通信機器を含むネットワークの構成例を説明するための図である。
【図２】本発明の実施形態における通信機器のハードウェア構成例を示すブロック図である。
【図３】本発明の実施形態における通信機器のソフトウェア構成例を示す図である。
【図４】本発明の実施形態における撮像装置のハードウェア構成例を示すブロック図である。
【図５】本発明の第１の実施形態におけるＲｅａｄ−ａｐｐからＷｒｉｔｅ−ａｐｐを起動して画像データを受信するときのネットワーク切り替え状態を示す図である。
【図６】本発明の第１の実施形態におけるＲｅａｄ−ａｐｐからＷｒｉｔｅ−ａｐｐを起動させて画像を取得し、画像編集処理を行う処理手順を説明するためのシーケンス図である。
【図７】本発明の実施形態におけるＷｒｉｔｅ−ａｐｐの表示画面の例を示す図である。
【図８】本発明の実施形態におけるＲｅａｄ−ａｐｐの表示画面の例を示す図である。
【図９】本発明の第２の実施形態におけるＲｅａｄ−ａｐｐからＷｒｉｔｅ−ａｐｐを起動して画像データを受信するときのネットワーク切り替え状態を示す図である。
【図１０】本発明の第１の実施形態におけるＲｅａｄ−ａｐｐからＷｒｉｔｅ−ａｐｐを起動させて画像を取得し、画像編集処理を行う処理手順を説明するためのシーケンス図である。
【発明を実施するための形態】
【００１２】
以下に、図面を参照して、この発明の好適な実施の形態を例示的に詳しく説明する。ただし、この実施形態に記載されている構成要素はあくまで例示であり、この発明の範囲をそれらのみに限定する趣旨のものではない。
【００１３】
（第１の実施形態）
本発明の第１の実施形態について図面を参照しながら説明する。本実施形態では、ユーザが情報処理装置である通信機器（スマートフォン）を操作して画像アップロード用アプリケーションを起動させて、更にこの画像アップロード用アプリケーションと連携してデータ取り込み用アプリケーションを起動させ、取り込んだデータを画像アップロード用アプリケーションでインターネット接続を通じて画像共有サービスへアップロードする例について説明する。なお、本実施形態におけるアプリケーションの「起動」として、未起動のアプリケーションを起動させる場合と、バックグラウンドで起動中のアプリケーションをフォアグラウンドへ移動させる場合がある。
【００１４】
（ネットワークの構成）
図１は、本実施形態に係る通信機器１０１を含むシステムの構成例を説明するための図である。
【００１５】
図１に示すように、通信機器１０１は、データ取り込み用アプリケーションを用いて撮像装置１０２と接続し、ネットワーク１０３を介して撮像装置１０２から画像を取り込むことができる。なお、撮像装置１０２との接続に用いられる通信は、有線通信であっても無線通信であってもよい。
【００１６】
（通信機器の構成）
図２は、本実施形態に係る通信機器１０１のハードウェア構成例を示すブロック図である。
【００１７】
図２において、ＣＰＵ２０１は通信機器１０１全体の処理を制御する。ＲＯＭ２０２には、ＣＰＵ２０１が実行する各種制御プログラム、データ等が保存されている。ＲＡＭ２０３は、ＣＰＵ２０１のワーク領域、エラー処理時のデータの退避領域、制御プログラムのロード領域等を有する。ＨＤＤ（ハードディスクドライブ）２０４は、ＯＳ（オペレーティングシステム）、各種アプリケーション、通信機器１０１内で実行される各制御プログラムやコンテンツ、データを格納する。
【００１８】
入力装置２０５は、電源のＯＮ／ＯＦＦを切り替えるためのボタンなど各種ボタンから構成されている。ＢＭＵ（ビットムーブユニット）２０６は、例えば、メモリ間（例えば、ＶＲＡＭ２０７と他のメモリとの間）のデータ転送や、メモリと各Ｉ／Ｏデバイス（例えば、ＮＥＴＩ／Ｆ２０９）との間のデータ転送を制御する。ＶＲＡＭ２０７には、表示装置２１１に表示するための画像データが描画される。ＶＲＡＭ２０７に描画された画像データは、所定の規定に従って表示装置２１１に転送され、これにより表示装置２１１に画像が表示される。また、表示装置２１１はタッチパネルを搭載しており、ユーザが表示装置２１１の表示面に触れることによって、その位置に表示されたアイコンに係る指示を入力する。ＮＥＴＩ／Ｆ２０９は、撮像装置１０２等とネットワーク１０３を介して通信を行う。バス２１２は、アドレスバス、データバス及びコントロールバスを含む。
【００１９】
図３は、本実施形態に係る通信機器１０１のソフトウェア構成例を示す図である。
【００２０】
通信機器１０１には、所定のＯＳ３０１が搭載されており、データ取込みアプリケーション（以下、Ｗｒｉｔｅ−ａｐｐ）３０２と、画像編集アプリケーション（以下、Ｒｅａｄ−ａｐｐ）３０３とがインストールされている。通信機器１０１のＣＰＵ２０１は、ＯＳ３０１を起動して、通信機器１０１が行う基本的な処理を行うとともに、インストールされているアプリケーションの連携処理およびデータをＨＤＤ２０４等に記録する処理を行う。
【００２１】
また、通信機器１０１のＣＰＵ２０１は、Ｗｒｉｔｅ−ａｐｐ３０２を起動して、例えば撮像装置１０２からＮＥＴＩ／Ｆ２０９を介して画像を取り込む処理を行う。また、通信機器１０１のＣＰＵ２０１は、Ｒｅａｄ−ａｐｐ３０３を起動して、前記取り込む処理後に取り込んだ画像に対して加工したり、画像の印刷を印刷装置に指示したりする処理を行う。ここで、Ｗｒｉｔｅ−ａｐｐ３０２は入力用アプリケーションであり、出力用アプリケーションであると言うこともできる。
【００２２】
さらに、通信機器１０１のＣＰＵ２０１は、ＯＳ３０１のネットワーク接続処理を使用して、撮像装置１０２やプリンタ等のデバイスとネットワーク１０３を介して通信するためにＷｉ−Ｆｉネットワークの接続や切り替え、またインターネットを利用するためにインターネットに接続可能なＷｉ−Ｆｉネットワークへの接続や切り替え、およびセルラー通信によるモバイルデータネットワーク接続を可能とする。なお、通信機器１０１は複数のＲｅａｄ−ａｐｐ３０３をインストールすることが可能であり、本実施形態ではその中の１つを例にあげて説明する。
【００２３】
（撮像装置の構成）
図４（ａ）は、本実施形態の外部装置の一例である撮像装置１０２の構成例を示すブロック図である。なお、ここでは外部装置の一例として撮像装置について述べるが、外部装置はこれに限られない。例えば外部装置は携帯型のメディアプレーヤや、いわゆるタブレットデバイス、パーソナルコンピュータなどの情報処理装置であってもよい。
【００２４】
制御部４０１は、入力された信号や、後述のプログラムに従って撮像装置１０２の各部を制御する。なお、制御部４０１が装置全体を制御する代わりに、複数のハードウェアが処理を分担することで、装置全体を制御してもよい。
【００２５】
撮像部４０２は、例えば、光学レンズユニットと絞り・ズーム・フォーカスなど制御する光学系と、光学レンズユニットを経て導入された光（映像）を電気的な映像信号に変換するための撮像素子などで構成される。撮像素子としては、一般的には、ＣＭＯＳ（Ｃｏｍｐｌｅｍｅｎｔａｒｙ  Ｍｅｔａｌ  Ｏｘｉｄｅ  Ｓｅｍｉｃｏｎｄｕｃｔｏｒ）や、ＣＣＤ（Ｃｈａｒｇｅ  Ｃｏｕｐｌｅｄ  Ｄｅｖｉｃｅ）が利用される。撮像部４０２は、制御部４０１に制御されることにより、撮像部４０２に含まれるレンズで結像された被写体光を、撮像素子により電気信号に変換し、ノイズ低減処理などを行って、デジタルデータを画像データとして出力する。本実施形態の撮像装置１０２では、画像データは、ＤＣＦ（Ｄｅｓｉｇｎ  Ｒｕｌｅ  ｆｏｒ  Ｃａｍｅｒａ  Ｆｉｌｅ  ｓｙｓｔｅｍ）の規格に従って、記録媒体４１０に記録される。
【００２６】
不揮発性メモリ４０３は、電気的に消去・記録可能な不揮発性のメモリであり、制御部４０１で実行される後述のプログラム等が格納される。
【００２７】
作業用メモリ４０４は、撮像部４０２で撮像された画像データを一時的に保持するバッファメモリや、表示部４０６の画像表示用メモリ、制御部４０１の作業領域等として使用される。
【００２８】
操作部４０５は、ユーザが撮像装置１０２に対する指示をユーザから受け付けるために用いられる。操作部４０５は例えば、ユーザが撮像装置１０２の電源のＯＮ／ＯＦＦを指示するための電源ボタンや、撮影を指示するためのレリーズスイッチ、画像データの再生を指示するための再生ボタンを含む。さらに、後述の通信部４１１を介して外部機器との通信を開始するための専用の接続ボタンなどの操作部材を含む。また、後述する表示部４０６に形成されるタッチパネルも操作部４０５に含まれる。なお、レリーズスイッチは、ＳＷ１およびＳＷ２を有する。レリーズスイッチが、いわゆる半押し状態となることにより、ＳＷ１がＯＮとなる。これにより、ＡＦ（オートフォーカス）処理、ＡＥ（自動露出）処理、ＡＷＢ（オートホワイトバランス）処理、ＥＦ（フラッシュプリ発光）処理等の撮影準備を行うための指示を受け付ける。また、レリーズスイッチが、いわゆる全押し状態となることにより、ＳＷ２がＯＮとなる。これにより、撮影を行うための指示を受け付ける。
【００２９】
表示部４０６は、撮影の際のビューファインダー画像の表示、撮影した画像データの表示、対話的な操作のための文字表示などを行う。なお、表示部４０６は必ずしも撮像装置１０２が内蔵する必要はない。撮像装置１０２は内部又は外部の表示部４０６と接続することができ、表示部４０６の表示を制御する表示制御機能を少なくとも有していればよい。
【００３０】
記録媒体４１０は、撮像部４０２から出力された画像データを記録することができる。記録媒体４１０は、撮像装置１０２に着脱可能なよう構成してもよいし、撮像装置１０２に内蔵されていてもよい。すなわち、撮像装置１０２は少なくとも記録媒体４１０にアクセスする手段を有していればよい。
【００３１】
通信部４１１は、外部装置と接続するためのインターフェースである。本実施形態の撮像装置１０２は、通信部４１１を介して、外部装置とデータのやりとりを行うことができる。例えば、撮像部４０２で生成した画像データを、通信部４１１を介して外部装置に送信することができる。また、撮像部４０２による撮像を、通信部４１１を介して外部装置からコントロールすることができる。なお、本実施形態では、通信部４１１は外部装置とＩＥＥＥ８０２．１１の規格に従った、いわゆる無線ＬＡＮで通信するためのインターフェースを含む。制御部４０１は、通信部４１１を制御することで外部装置との無線通信を実現する。
【００３２】
近接無線通信部４１２は、例えば無線通信のためのアンテナと無線信号を処理するため変復調回路や通信コントローラから構成される。近接無線通信部４１２は、変調した無線信号をアンテナから出力し、またアンテナで受信した無線信号を復調することによりＩＥＥＥ８０２．１５の規格（いわゆるＢｌｕｅｔｏｏｔｈ（登録商標））に従った近距離無線通信を実現する。本実施形態においてＢｌｕｅｔｏｏｔｈ通信は、低消費電力であるＢｌｕｅｔｏｏｔｈ  Ｌｏｗ  Ｅｎｅｒｇｙのバージョン４．０（以下ＢＬＥ）を採用する。このＢＬＥ通信は、無線ＬＡＮ通信と比べて通信可能な範囲が狭い（つまり、通信可能な距離が短い）。
【００３３】
また、ＢＬＥ通信は、無線ＬＡＮ通信と比べて通信速度が遅い。その一方で、ＢＬＥ通信は、無線ＬＡＮ通信と比べて消費電力が少ない。本実施形態の撮像装置１０２は、近接無線通信部４１２を介して、外部装置とデータのやりとりを行うことができる。例えば、撮像部４０２による撮像を、通信部４１１を介して外部装置からコントロールすることができる。ただし、通信速度が遅いため撮像部４０２で生成した画像データを送信することはしない。
【００３４】
なお、本実施形態における撮像装置１０２の通信部４１１は、インフラストラクチャモードにおけるアクセスポイントとして動作するＡＰモードと、インフラストラクチャモードにおけるクライアントとして動作するＣＬモードとを有している。
【００３５】
そして、通信部４１１をＣＬモードで動作させることにより、本実施形態における撮像装置１０２は、インフラストラクチャモードにおけるＣＬ機器として動作することが可能である。撮像装置１０２がＣＬ機器として動作する場合、周辺のＡＰ機器に接続することで、ＡＰ機器が形成するネットワークに参加することが可能である。また、通信部４１１をＡＰモードで動作させることにより、本実施形態における撮像装置１０２は、ＡＰの一種ではあるが、より機能が限定された簡易的なＡＰ（以下、簡易ＡＰ）として動作することも可能である。撮像装置１０２が簡易ＡＰとして動作すると、撮像装置１０２は自身でネットワークを形成する。撮像装置１０２の周辺の装置は、撮像装置１０２をＡＰ機器と認識し、撮像装置１０２が形成したネットワークに参加することが可能となる。上記のように撮像装置１０２を動作させるためのプログラムは不揮発性メモリ４０３に保持されているものとする。
【００３６】
なお、本実施形態における撮像装置１０２はＡＰの一種であるものの、ＣＬ機器から受信したデータをインターネットプロバイダなどに転送するゲートウェイ機能は有していない簡易ＡＰである。したがって、自機が形成したネットワークに参加している他の装置からデータを受信しても、それをインターネットなどのネットワークに転送することはしない。
【００３７】
次に、撮像装置１０２の外観について説明する。図４（ｂ）、図４（ｃ）は撮像装置１０２の外観の一例を示す図である。レリーズスイッチ４０５ａや再生ボタン４０５ｂ、方向キー４０５ｃ、タッチパネル４０５ｄは、前述の操作部４０５に含まれる操作部材である。また、表示部４０６には、撮像部４０２による撮像の結果得られた画像が表示される。
【００３８】
また、本実施形態の撮像装置１０２は、カメラ筺体の側面に近接無線通信部４１２のアンテナ部分を有する。この近接無線通信部４１２同士を一定の距離に近づけることにより、他の機器と近接無線通信を確立することができる。これにより、ケーブル等を介さずに非接触で通信可能であると共に、ユーザの意図に沿って通信相手を限定することができる。
【００３９】
ここで、図５を参照しながら、本実施形態に係るＷｒｉｔｅ−Ａｐｐ３０２を使用して通信機器１０１が撮像装置１０２からＮＥＴＩ／Ｆ２０９を介して画像データを取り込む処理を行った後にＲｅａｄ−ａｐｐ３０３を使用してインターネット接続で画像データをアップロードするケースにおける、ネットワーク接続の課題とその解決方法について、説明する。
【００４０】
図５（ａ）本発明が解決しようとする課題を説明する図である。５０１から５０３に情報機器１０１のＷｒｉｔｅ−Ａｐｐ３０２とＲｅａｄ−ａｐｐ３０３の操作内容、また、５１１から５１２に情報機器１０１の接続するネットワークの状態を示す。
【００４１】
５０１ではＲｅａｄ−ａｐｐ３０３を操作してＷｒｉｔｅ−Ａｐｐ３０２を起動する。Ｒｅａｄ−ａｐｐ３０３ではインターネットを使用する機能を設けているため、通信機器１０１のネットワーク状態としては５１１に示すとおりにインターネットを利用可能なネットワークに接続した状態である。
【００４２】
続いて５０２ではＷｒｉｔｅ−Ａｐｐ３０２を操作して撮像装置１０２との接続操作を行い、画像データを取り込み、Ｒｅａｄ−ａｐｐ３０３へ画像データを渡すべく、Ｒｅａｄ−ａｐｐ３０３を呼び出す。このとき、通信機器１０１を撮像装置１０２に接続する際、撮像装置１０２はアクセスポイントとして動作するＡＰモードで接続する簡易ＡＰ接続、および、インフラストラクチャモードにおけるクライアントとして動作するＣＬモードで接続するインフラ接続、の２つの接続形態に対応している。どちらの接続方法で接続するかはユーザが選択できるが、簡易ＡＰ接続ではＣＬ機器から受信したデータをインターネットプロバイダなどに転送するゲートウェイ機能は有していないため、５１２に示すインターネットが利用できないネットワーク状態となる。この状態で、５０３においてＷｒｉｔｅ−Ａｐｐ３０２に呼び出されたＲｅａｄ−ａｐｐ３０３は、画像データを受け取ってインターネット接続で画像データをアップロードしようとしても、このときの通信機器１０１のネットワーク状態５１２ではインターネットが利用できない状態となってしまう。ユーザがＯＳ３０１を直接操作してインターネットを利用できるようにネットワーク状態を切り替えてれば良いのだが、非常にわずらわしい。
【００４３】
そこで、図５（ｂ）に上記課題を解決する構成を示す。Ｒｅａｄ−ａｐｐ３０３からＷｒｉｔｅ−Ａｐｐ３０２が呼出されて起動されたタイミングで通信機器１０１のネットワーク状態５２１をＷｒｉｔｅ−Ａｐｐ３０２が記憶する。続けて５０２にてＷｒｉｔｅ−Ａｐｐ３０２が簡易ＡＰ接続で撮像装置１０２に接続した場合、ネットワーク状態５２２はインターネット利用できないネットワークとなる。
【００４４】
この後、Ｗｒｉｔｅ−Ａｐｐ３０２で画像データを取り込んでＲｅａｄ−ａｐｐ３０３を呼び出すタイミングでインターネット利用可能なネットワーク５２１へ接続を切り替える。これにより５０３ではこのネットワーク５２１を利用してＲｅａｄ−ａｐｐ３０３は画像データを受け取ってインターネット接続で画像データをアップロードすることができる。
【００４５】
５０２にてＷｒｉｔｅ−Ａｐｐ３０２が既に接続済みのネットワーク状態５２３を使用してインフラ接続で撮像装置１０２に接続した場合には、Ｗｒｉｔｅ−Ａｐｐ３０２で画像データを取り込んでＲｅａｄ−ａｐｐ３０３を呼び出すタイミングでネットワーク切り替えをせずとも、５０３ではこのネットワーク５２１を利用してＲｅａｄ−ａｐｐ３０３は受け取った画像データをインターネット接続でアップロードすることができる。
【００４６】
つまり、Ｗｒｉｔｅ−Ａｐｐ３０２が撮像装置１０２との接続に使用したネットワーク状態に応じて、Ｗｒｉｔｅ−Ａｐｐ３０２画像データを取り込んでＲｅａｄ−ａｐｐ３０３を呼び出すタイミングで、必要に応じて、情報機器１０１のネットワーク状態を切り替える必要がある。
【００４７】
（通信機器の処理手順）
次に、図６〜図８を参照しながら、本実施形態に係る通信機器１０１の処理手順について説明する。本実施形態では、まず通信機器１０１のＣＰＵ２０１がＲｅａｄ−ａｐｐを起動し、Ｒｅａｄ−ａｐｐによる処理を行う画面でユーザの指示を受け付けて、Ｗｒｉｔｅ−ａｐｐを呼び出す処理について説明する。
【００４８】
図６は、本実施形態において、通信機器１０１のＣＰＵ２０１がＲｅａｄ−ａｐｐを起動してからＷｒｉｔｅ−ａｐｐを起動させてＷｒｉｔｅ−ａｐｐにより外部装置から画像を取得し、そして、取得された画像に対してＲｅａｄ−ａｐｐによりインターネットで画像アップロード処理を行う処理手順を説明するためのシーケンス図である。なお、以下で説明する処理は通信機器１０１のＣＰＵ２０１がＯＳ３０１、Ｗｒｉｔｅ−ａｐｐ３０２やＲｅａｄ−ａｐｐ３０３を起動し、適宜、これらにしたがって動作し、各部を制御することにより実現される。
【００４９】
まず、ユーザの操作に応答して、通信機器１０１のＣＰＵ２０１がＲｅａｄ−ａｐｐを起動することにより処理を開始する。ＣＰＵ２０１はＲｅａｄ−ａｐｐを起動すると、図８（ａ）に示すような画面を表示装置２１１に表示させる。
【００５０】
図８（ａ）に示す画面において、ユーザは、表示装置２１１のタッチパネルを介して実行したい編集処理を選択する。例えば、「写真を加工」が選択されると、表示装置２１１には、図８（ｂ）に示す画面が表示され、「写真を印刷」が選択されると、表示装置２１１には、図８（ｃ）に示す画面が表示される。また、「写真をアップロード」が選択されると、表示装置２１１には、図８（ｄ）に示す画面が表示される。
【００５１】
図８（ｂ）〜図８（ｄ）に示す画面では、ＨＤＤ２０４等に保存された画像から編集したい画像を選択することができる。一方、通信機器１０１が保持していない画像を編集したい場合は、「Ｗｒｉｔｅ−ａｐｐから写真を追加」を選択することにより、外部装置から画像を取り込むことができる。図６に示す処理は、この「Ｗｒｉｔｅ−ａｐｐから写真を追加」がユーザによって選択されることによって開始する。
【００５２】
図６のＴ１００１では、ＣＰＵ２０１はＲｅａｄ−ａｐｐで要求ＩＤを発行し、加えてインターネット利用フラグを指定する。Ｔ５０２では、ＣＰＵ２０１はＲｅａｄ−ａｐｐによるＷｒｉｔｅ−ａｐｐの起動要求を受け入れ、Ｔ１００１で発行された要求ＩＤとインターネット利用フラグおよび起動要求とを関連付けてＨＤＤ２０４に記憶する。
【００５３】
ここで、要求ＩＤは、選択された編集内容によって異なるＩＤが付与されるものである。例えば図８（ｂ）〜図８（ｄ）に示す画面のどの画面から「Ｗｒｉｔｅ−ａｐｐから写真を追加」が選択されたかによって要求ＩＤが異なる。また、インターネット利用フラグは、受け取った画像データを使用するときにインターネット利用をするかどうかの有無を示す情報であり、ネットワーク状態を示す情報である。例えば図８（ｄ）に示す画像データを画像共有サービスへアップロードするときには、インターネット利用「あり」のフラグを指定する。
【００５４】
次に、Ｔ５０３において、ＣＰＵ２０１は、ＯＳからＷｒｉｔｅ−ａｐｐに対して起動要求を行ってＷｒｉｔｅ−ａｐｐを起動させ、Ｔ１００２でＣＰＵ２０１は、Ｗｒｉｔｅ−ａｐｐにおいて要求ＩＤとインターネット利用フラグを受け付け記憶する。Ｗｒｉｔｅ−ａｐｐが起動する際には、Ｗｒｉｔｅ−ａｐｐは要求元のＲｅａｄ−ａｐｐのＩＤを受け取るようにする。Ｒｅａｄ−ａｐｐのＩＤは、通信機器１０１にインストールされたＲｅａｄ−ａｐｐ固有のＩＤであり、Ｒｅａｄ−ａｐｐがインストールされる際にＨＤＤ２０４に記憶され、Ｗｒｉｔｅ−ａｐｐの起動要求を行う際にＨＤＤ２０４から読み出されて通知される。
【００５５】
続いてＴ５０５において、ＣＰＵ２０１は、Ｗｒｉｔｅ−ａｐｐにてＲｅａｄ−ａｐｐのＩＤの照合を行う。つまり、要求元のＲｅａｄ−ａｐｐのＩＤがＨＤＤ２０４に記憶されたＲｅａｄ−ａｐｐのＩＤと一致するか否かをＷｒｉｔｅ−ａｐｐにて判定する。なお、ＣＰＵ２０１はＷｒｉｔｅ−ａｐｐにしたがって動作し、Ｗｒｉｔｅ−ａｐｐと連携可能なＲｅａｄ−ａｐｐのＩＤを、Ｗｒｉｔｅ−ａｐｐから読み出し可能にしてＨＤＤ２０４に予め記憶している。そして、Ｒｅａｄ−ａｐｐのＩＤがＨＤＤ２０４に記憶されたＩＤと一致しない場合は、Ｔ５０６において、ＣＰＵ２０１は当該アプリからの要求を受け付けられない旨を示すメッセージを表示し、本処理を中止する。このようにすることにより、不明なアプリケーションにより誤ってＷｒｉｔｅ−ａｐｐが起動されるのを防止することができる。
【００５６】
Ｒｅａｄ−ａｐｐのＩＤがＨＤＤ２０４に記憶されたＩＤと一致した場合は、ＣＰＵ２０１は、Ｗｒｉｔｅ−ａｐｐを起動する。これによって、Ｗｒｉｔｅ−ａｐｐの画面がフォアグラウンドに表示される。例えば、Ｗｒｉｔｅ−ａｐｐが未起動で、新たに起動された場合には、図７（ａ）に示すトップ画面６６１が表示される。また、Ｗｒｉｔｅ−ａｐｐが起動中で、バックグラウンドで例えば「ライブビュー撮影」機能を実行していた場合は、ライブビュー撮影用の画面が表示される。
【００５７】
そして、ＣＰＵ２０１は、Ｗｒｉｔｅ−ａｐｐの状態を検出し、検出された状態に応じた処理を実行する。Ｗｒｉｔｅ−ａｐｐが連携ＮＧの状態の場合は、Ｔ５０７において、ＣＰＵ２０１は、Ｗｒｉｔｅ−ａｐｐによりエラーメッセージの表示処理を実行する。Ｗｒｉｔｅ−ａｐｐが連携ＯＫの状態の場合は、Ｔ５０８において、ＣＰＵ２０１は、Ｗｒｉｔｅ−ａｐｐを連携モードに切り替えてフォアグラウンドで動作させる。
【００５８】
本実施形態において連携ＮＧの状態は、通信機器１０１において、Ｗｒｉｔｅ−ａｐｐが起動していて、特定の機能、例えば、ライブビュー撮影、カメラの時刻設定、リモコンのいずれかの機能を実行している状態である。ライブビュー撮影では、通信機器１０１はＷｉ−Ｆｉ通信を介して撮像装置１０２と接続し、ライブビュー画像を撮像装置１０２から受信して、表示装置２１１に表示する。そして、ユーザの操作に応答して、撮影設定の変更、フォーカス枠の移動、レリーズなどの撮影処理に関する指示を撮像装置１０２へ送信する。撮像装置１０２は、通信機器１０１からの指示にしたがって撮影処理を実行する。
【００５９】
また、カメラの時刻設定では、通信機器１０１は、自機器に設定された時刻の情報を取得し、撮像装置１０２へ送信する。撮像装置１０２は、通信機器１０１からの時刻情報にしたがって時刻を設定する。また、リモコンでは、通信機器１０１はＢｌｕｅｔｏｏｔｈ通信を介して撮像装置１０２と接続し、レリーズの指示を撮像装置１０２へ送信する。撮像装置１０２は、通信機器からのレリーズ指示に応答して撮影処理を実行する。
【００６０】
そして、Ｗｒｉｔｅ−ａｐｐが連携ＮＧの状態と検出された場合、Ｔ５０７において、ＣＰＵ２０１は、Ｗｒｉｔｅ−ａｐｐにしたがって動作し、図７（ｃ）に示すように、連携モードを開始できないことを示すエラーメッセージ６６３を表示装置２１１に表示させる。このことで、ユーザは、現在、一時的にＷｒｉｔｅ−ａｐｐをＲｅａｄ−ａｐｐから呼び出せない状態であり、Ｒｅａｄ−ａｐｐの処理対象として、Ｗｒｉｔｅ−ａｐｐによって撮像装置１０２から取り込まれた画像を使用することができないことを知ることができる。
【００６１】
なお、Ｗｒｉｔｅ−ａｐｐが連携ＮＧの状態であるとき、ＣＰＵ２０１は、Ｗｒｉｔｅ−ａｐｐではなく、Ｒｅａｄ−ａｐｐにしたがって動作し、エラーメッセージを表示装置２１１に表示する構成としてもよい。この場合、ＣＰＵ２０１はＷｒｉｔｅ−ａｐｐからＯＳを介してＲｅａｄ−ａｐｐを呼び出し、連携ＮＧの状態であることを通知する。これによって、ＣＰＵ２０１はＲｅａｄ−ａｐｐを起動してフォアグラウンドで実行させ、Ｒｅａｄ−ａｐｐにしたがってエラーメッセージの表示処理を実行する。
【００６２】
一方、本実施形態において連携ＯＫの状態は、通信機器１０１において、Ｗｒｉｔｅ−ａｐｐが起動していて、連携ＮＧの状態とは異なる機能、例えば、トップメニュー画面の表示、接続ガイドの表示、カメラ内の画像一覧の表示等の機能を実行している状態である。さらに、Ｗｒｉｔｅ−ａｐｐが未起動のときも連携ＯＫの状態である。接続ガイドの表示では、通信機器１０１は接続ガイドに関する表示データをＨＤＤ２０４から読み出して表示装置２１１に表示する。また、カメラ内の画像一覧の表示では、通信機器１０１は、撮像装置１０２の記録媒体４１０に記録されている撮影済みの画像と対応するサムネイル画像を撮像装置１０２から受信する。そして、受信されたサムネイル画像を通信機器１０１のＨＤＤ２０４に保存し、保存されたサムネイル画像をＨＤＤ２０４から読み出して表示装置２１１に表示する。図７（ｄ）は、Ｗｒｉｔｅ−ａｐｐがカメラ内の画像一覧の表示を実行しているときに表示される画像一覧画面６６４である。
【００６３】
そして、Ｗｒｉｔｅ−ａｐｐが連携ＯＫの状態と検出された場合、ＣＰＵ２０１はＷｒｉｔｅ−ａｐｐを連携モードに切り替えて動作する（Ｔ５０８）。Ｗｒｉｔｅ−ａｐｐが既に起動しており、バックグラウンドで動作している場合は、ＣＰＵ２０１はＷｒｉｔｅ−ａｐｐをフォアグラウンドでの動作に切り替えるとともに、連携モードで動作させる。また、Ｗｒｉｔｅ−ａｐｐが起動していなかった場合は、ＣＰＵ２０１はＷｒｉｔｅ−ａｐｐを起動し、連携モードにしてフォアグラウンドで動作させる。Ｗｒｉｔｅ−ａｐｐが連携モードで動作するとき、具体的には、Ｗｒｉｔｅ−ａｐｐが提供する機能のうち使用できる機能に制限がかけられ、ＵＩ表示にそれが反映される。図７（ａ）はＷｒｉｔｅ−ａｐｐの通常モードのトップ画面６６１の表示例である。図７（ｂ）はＷｒｉｔｅ−ａｐｐの連携モードのトップ画面６６２の表示例である。通常モードでは、すべての機能を使用できるので、図７（ａ）のトップ画面６６１ではすべての機能が選択可能であり、そのことを示すように各機能のアイコンが表示される。一方、連携モード中は使用できる機能が制限されるため、図７（ｂ）のトップ画面６６２では、使用できない一部の機能（ライブビュー撮影、カメラの時刻設定、リモコン）のアイコンが選択不可であり、実行不可を示すようにグレーアウトして表示される。また、図７（ｂ）のトップ画面６６２では、通常モードと異なる連携モードであることを示すようにトップバー６０２の色を変えている。Ｗｒｉｔｅ−ａｐｐの連携モードでは、撮像装置１０２内の画像を取り込む操作を優先することを目的として、上述のような機能制限を行っている。
【００６４】
Ｒｅａｄ−ａｐｐから呼び出された時、Ｗｒｉｔｅ−ａｐｐが「カメラ内の画像一覧」機能を実行していれば、Ｔ５０８においてＣＰＵ２０１はＷｒｉｔｅ−ａｐｐを連携モードへ切替え、図７（ｅ）の画像一覧画面６６５に切替えてフォアグラウンドに表示する。
【００６５】
また同時に、Ｔ１００３で通信機器１０１のネットワーク状態を記憶する。本実施形態では、通信機器１０１のネットワーク状態として  Ｗｉ−Ｆｉ  ネットワーク接続の有無、Ｗｉ−Ｆｉ  ネットワーク接続中の場合にはそのＷｉ−Ｆｉネットワークを識別可能とするＳＳＩＤ（ネットワーク識別情報）を記憶する。また、モバイルデータ通信の有効状態も合わせて記憶してもよい。Ｔ１００４で通信機器１０１と撮像装置１０２との接続を確立する。このときに、ユーザの操作に応じて、撮像装置１０２がアクセスポイントとして動作するＡＰモードと、撮像装置１０２がクライアントとして動作するＣＬモードとのどちらでも接続することができる。接続が確立した時点で、Ｔ１００５で通信機器１０１が撮像装置１０２との接続確立時のネットワーク状態として、インターネット接続の可否を確認して記憶する。つまり、Ｔ１００３でＲｅａｄ−ａｐｐでのネットワーク状態を記憶し、Ｔ１００５でＷｒｉｔｅ−ａｐｐでのネットワーク状態を記憶する。
【００６６】
ＣＰＵ２０１は、Ｗｒｉｔｅ−ａｐｐの「カメラ内の画像一覧」機能を実行するとき、取り込み可能な撮像装置１０２内の本画像と対応するサムネイル画像を撮像装置１０２から受信する。そして、図７（ｅ）に示すように、複数のサムネイル画像を並べた画像一覧画面６６５に表示している。ユーザはＲｅａｄ−ａｐｐで使用するために、一覧表示された複数のサムネイル画像の中から所望のものを選択し、指示を入力する。ＣＰＵ２０１は、選択されたサムネイル画像に関する情報を「保存予定画像リスト」として、Ｗｒｉｔｅ−ａｐｐから読み出し可能にしてＲＡＭ２０３に保存しておく。
【００６７】
Ｔ５０９において、ＣＰＵ２０１はＷｒｉｔｅ−ａｐｐにより、画像一覧画面６６５において、ユーザにより保存ボタン６１１を押下されたことを検知すると、撮像装置１０２に対して保存予定画像リストに基づき、本画像の取得要求を行う。そして、Ｔ５１０において、ＣＰＵ２０１は、Ｗｒｉｔｅ−ａｐｐにより撮像装置１０２からＮＥＴＩ／Ｆ２０９を介して本画像のデータを受信する。ここで、サムネイル画像は本画像に比べて低解像度であり、データサイズが小さい。よって、「カメラ内の画像一覧」を表示する際には、撮像装置１０２から取り込み可能な本画像と対応するサムネイル画像を受信し、速やかに表示装置２１１に表示することができる。そして、撮像装置１０２から取り込み可能な本画像のうち、ユーザに選択された本画像だけを受信することで、通信負荷を軽減することができる。
【００６８】
本画像の受信が完了すると、次に、Ｔ５１１において、ＣＰＵ２０１は、Ｗｒｉｔｅ−ａｐｐによる本画像の保存処理を行う。つまり、ＣＰＵ２０１は、Ｔ５１０で受信した本画像のファイルをＨＤＤ２０４等に保存し、新たに保存した本画像に画像ＩＤを付与する。画像ＩＤは本画像の保存先のファイルパスと対応付けられるコードとして説明する。なお、画像ＩＤは保存先のファイルパスそのものであってもよい。
【００６９】
なお、Ｔ５０９での画像の要求から、Ｔ５１０での画像の受信処理、Ｔ５１１での画像の保存処理、画像ＩＤの発行までの処理は、ユーザに選択されたサムネイル画像と対応する本画像の枚数分繰り返される。この一連の画像保存処理を行っている間は、ＣＰＵ２０１は、図７（ｆ）に示す保存進捗画面６６６を表示装置２１１に表示する。
【００７０】
ユーザに選択されたサムネイル画像と対応するすべての本画像の保存処理が終了したら、ＣＰＵ２０１は、図７（ｈ）に示す保存完了画面６６８を表示装置２１１に表示する。ユーザが「閉じる」ボタン６０８を押したことを検知すると、ＣＰＵ２０１は後述する画像ＩＤリストの生成処理を実行することなく、図７（ｅ）のカメラ内の画像一覧画面６６５の表示に戻る。これによって、今回、取り込まれた画像のＲｅａｄ−ａｐｐとの共有を中止することができる。
【００７１】
一方、ユーザにより図７（ｈ）の保存完了画面６６８で「Ｒｅａｄ−ａｐｐに戻る」ボタン６０９が押されたことを検出すると、ＣＰＵ２０１は、Ｔ１００６の処理を開始する。
【００７２】
Ｔ１００６においてＣＰＵ２０１は、Ｔ１００２で要求ＩＤと合わせて読み込んで記憶したＲｅａｄ−ａｐｐのインターネット利用フラグと、Ｔ１００５において記憶した撮像装置１０２との接続確立時のネットワークのインターネット可否とを比較する。Ｔ１００２のインターネット利用フラグが「利用あり」でかつ、Ｔ１００５のインターネット可否が「不可」である場合、Ｔ１００６で撮像装置１０２とのネットワーク接続を切断する。Ｔ１００７においてＣＰＵ２０１は、Ｔ１００３で記憶した連携開始時のネットワーク状態に戻っているか判断し、戻っていなければ戻す処理を行う。
【００７３】
Ｔ５１２において、ＣＰＵ２０１は、Ｗｒｉｔｅ−ａｐｐによる画像ＩＤリストの生成処理を行う。具体的には、まず、Ｗｒｉｔｅ−ａｐｐにおいて、Ｔ５１１で保存しておいた画像の画像ＩＤと保存先とを関連付けた画像ＩＤリストを生成し、ＯＳから読み出し可能にしてＨＤＤ２０４に記憶する。これにより、後述するＴ５１６においてＲｅａｄ−ａｐｐは画像ＩＤリストを、ＯＳを介して受け取ることができ、Ｒｅａｄ−ａｐｐの処理に利用することができる。よって、画像ＩＤリストはＲｅａｄ−ａｐｐの処理に利用可能なようにＨＤＤ２０４にＷｒｉｔｅ−ａｐｐにより記憶されているといえる。そして、Ｔ５１３において、ＣＰＵ２０１は、ＯＳによって、Ｗｒｉｔｅ−ａｐｐからＲｅａｄ−ａｐｐへの呼出し要求として、要求ＩＤをＷｒｉｔｅ−ａｐｐから受け付ける。ここで、要求ＩＤは、Ｔ５０４でＷｒｉｔｅ−ａｐｐが受け取ったものと同じである。
【００７４】
その後、Ｔ５１４において、ＣＰＵ２０１は、Ｗｒｉｔｅ−ａｐｐに連携モードを解除させ、通常モードに切り替えて動作させる。具体的には、使用できる機能の制限を解除し、ＵＩ表示を通常モードの状態に戻すことである。
【００７５】
続いてＴ５１５において、ＣＰＵ２０１は、ＯＳからＲｅａｄ−ａｐｐに対して起動要求を行ってＲｅａｄ−ａｐｐを起動させる。このとき、Ｒｅａｄ−ａｐｐが起動する際には、Ｒｅａｄ−ａｐｐは、呼出し要求を行った要求元のＷｒｉｔｅ−ａｐｐのＩＤを取得する。Ｗｒｉｔｅ−ａｐｐのＩＤは、通信機器１０１にインストールされたＷｒｉｔｅ−ａｐｐ固有のＩＤであり、Ｗｒｉｔｅ−ａｐｐがインストールされる際にＨＤＤ２０４に記憶されＲｅａｄ−ａｐｐの呼出し要求を行う際にＨＤＤ２０４から読出されて通知される。
【００７６】
また、図５に示した例では、Ｒｅａｄ−ａｐｐは、Ｔ５０２の処理を行った後も起動中であることから、Ｔ５１５の処理は、スリープ状態の解除、または起動中であることの確認処理として機能する。なお、Ｒｅａｄ−ａｐｐはＴ５０２の処理を行った後に起動を一旦停止し、Ｔ５１５の起動要求に応答して、再起動するようにしてもよい。そして、Ｔ５１６において、ＣＰＵ２０１は、Ｒｅａｄ−ａｐｐにおいて、Ｔ５１２でＷｒｉｔｅ−ａｐｐにより生成された画像ＩＤリストと、応答としてＴ５１３で受け付けた要求ＩＤとをＯＳを介して受け取る。
【００７７】
次に、Ｔ５１７において、ＣＰＵ２０１は、Ｒｅａｄ−ａｐｐにてＷｒｉｔｅ−ａｐｐのＩＤの照合を行う。つまり、Ｗｒｉｔｅ−ａｐｐのＩＤがＨＤＤ２０４に記憶されたＷｒｉｔｅ−ａｐｐのＩＤと一致するか否かをＲｅａｄ−ａｐｐにて判定する。なお、ＣＰＵ２０１はＲｅａｄ−ａｐｐにしたがって動作し、Ｒｅａｄ−ａｐｐと連携可能なＷｒｉｔｅ−ａｐｐのＩＤを、Ｒｅａｄ−ａｐｐから読み出し可能にしてＨＤＤ２０４に予め記憶している。そして、Ｗｒｉｔｅ−ａｐｐのＩＤがＨＤＤ２０４に記憶されたＩＤと一致しない場合は、Ｔ５１８において、ＣＰＵ２０１は、Ｒｅａｄ−ａｐｐからＯＳに対してエラーを通知させ、Ｒｅａｄ−ａｐｐの起動を中止する。このようにすることにより、不明なアプリケーションにより誤ってＲｅａｄ−ａｐｐが起動されるのを防止することができる。
【００７８】
一方、Ｗｒｉｔｅ−ａｐｐのＩＤがＨＤＤ２０４に記憶されたＩＤと一致した場合は、Ｔ５１９において、ＣＰＵ２０１は、Ｔ５１６で取得した要求ＩＤと対応する画面を表示する。例えば、Ｔ１００１でＲｅａｄ−ａｐｐから要求ＩＤを通知したときに表示されていたのと同じ画面を表示装置２１１に表示する。そして、ＣＰＵ２０１は、Ｒｅａｄ−ａｐｐにおいて取得した画像ＩＤリストに基づき、ＨＤＤ２０４から画像を取得し、一覧表示に追加する。例えば、図８（ｂ）に示す画面で「Ｗｒｉｔｅ−ａｐｐから写真を追加」を選択した場合は、図８（ｂ）に示す画面を表示して、画面の左側の画像の一覧表示に新たな画像を追加する。
【００７９】
そして、Ｔ５２０において、ＣＰＵ２０１は、Ｒｅａｄ−ａｐｐにてユーザが選択した編集処理を、Ｔ５１９で取得された画像に対して行い、編集結果をＯＳにしたがってＨＤＤ２０４に保存し、処理を終了する。
【００８０】
（第２の実施形態）
以下、本発明の第２の実施形態について図面を参照しながら説明する。本実施形態では、ユーザが情報処理装置である通信機器（スマートフォン）を操作して画像印刷用アプリケーションを起動させて、データ取り込み用アプリケーションを起動させ、取り込んだデータを画像印刷用アプリケーションでネットワーク上のプリンタに接続して印刷する例について説明する。
【００８１】
第１の実施形態と基本構成は同じであるため、図１に示すネットワークの構成、図２・３に示す通信機器１０１の構成、図４に示す撮像装置１０２の構成、および、図７・８に示すＷｒｉｔｅ−ａｐｐとＲｅａｄ−ａｐｐの表示画面の表示画面を用いて説明する。
【００８２】
図９を参照しながら、本実施形態に係るＷｒｉｔｅ−Ａｐｐ３０２を使用して通信機器１０１が撮像装置１０２からＮＥＴＩ／Ｆ２０９を介して画像データを取り込む処理を行った後にＲｅａｄ−ａｐｐ３０３を使用してネットワーク上のプリンタで画像データを印刷するケースにおける、ネットワーク接続の課題とその解決方法について、説明する。
【００８３】
図９（ａ）は本発明が解決しようとする課題を説明する図である。９０１から９０３に情報機器１０１のＷｒｉｔｅ−Ａｐｐ３０２とＲｅａｄ−ａｐｐ３０３の操作内容、また、９１１から９１２に情報機器１０１の接続するネットワークの状態を示す。９０１ではＲｅａｄ−ａｐｐ３０３を操作してＷｒｉｔｅ−Ａｐｐ３０２を起動する。Ｒｅａｄ−ａｐｐ３０３ではプリンタを使用する印刷機能を設けているため、通信機器１０１のネットワーク状態としては９１１に示すとおりにネットワーク上のプリンタへの接続や接続状態の確認をすることができる。
【００８４】
続いて９０２ではＷｒｉｔｅ−Ａｐｐ３０２を操作して撮像装置１０２との接続操作を行い、画像データを取り込み、Ｒｅａｄ−ａｐｐ３０３へ画像データを渡すべく、Ｒｅａｄ−ａｐｐ３０３を呼び出す。このとき、第１の実施形態と同じく。通信機器１０１を撮像装置１０２に接続する際、撮像装置１０２はアクセスポイントとして動作するＡＰモードで接続する簡易ＡＰ接続、および、インフラストラクチャモードにおけるクライアントとして動作するＣＬモードで接続するインフラ接続、の２つの接続形態に対応している。どちらの接続方法で接続するかはユーザが選択できるが、簡易ＡＰ接続では動的に撮像装置１０２に接続するときにのみ作成されるネットワークであるため、定常的にプリンタが接続していることのできるネットワークではない。この状態で、９０３においてＷｒｉｔｅ−Ａｐｐ３０２に呼び出されたＲｅａｄ−ａｐｐ３０３は、画像データを受け取ってプリンタで画像印刷をしようとしても、このときの通信機器１０１のネットワーク状態９１２ではプリンタが利用できない状態となってしまう。ユーザがＯＳ３０１を直接操作してプリンタ接続できるようにネットワーク状態を切り替えてれば良いのだが、非常にわずらわしい。
【００８５】
そこで、図９（ｂ）に上記課題の解決する構成を示す。Ｒｅａｄ−ａｐｐ３０３からＷｒｉｔｅ−Ａｐｐ３０２が起動されたタイミングで通信機器１０１のネットワーク状態９２１をＷｒｉｔｅ−Ａｐｐ３０２が記憶する。続けて９０２にてＷｒｉｔｅ−Ａｐｐ３０２が簡易ＡＰ接続や別のネットワークに切り替えて撮像装置１０２に接続した場合、ネットワーク状態９２２はプリンタの利用できないネットワークとなる。この後、Ｗｒｉｔｅ−Ａｐｐ３０２画像データを取り込んでＲｅａｄ−ａｐｐ３０３を呼び出すタイミングでプリンタ接続していたものと同じネットワーク９２１へ接続を切り替える。これにより９０３ではこのネットワーク９２１を利用してＲｅａｄ−ａｐｐ３０３は受け取った画像データをプリンタで印刷することができる。
【００８６】
９０２にてＷｒｉｔｅ−Ａｐｐ３０２が既に接続済みのネットワーク状態９２１を使用してインフラ接続で撮像装置１０２に接続した場合には、Ｗｒｉｔｅ−Ａｐｐ３０２画像データを取り込んでＲｅａｄ−ａｐｐ３０３を呼び出すタイミングでネットワーク切り替えをせずとも９０３ではこのネットワーク９２１を利用してＲｅａｄ−ａｐｐ３０３は受け取った画像データをプリンタで印刷することができる。つまり、Ｗｒｉｔｅ−Ａｐｐ３０２が撮像装置１０２との接続に使用したネットワーク状態に応じて、Ｗｒｉｔｅ−Ａｐｐ３０２画像データを取り込んでＲｅａｄ−ａｐｐ３０３を呼び出すタイミングで、必要に応じて、情報機器１０１のネットワーク状態を切り替える必要がある。
【００８７】
（通信機器の処理手順）
次に、図１０および図７〜８を参照しながら、本実施形態に係る通信機器１０１の処理手順について説明する。本実施形態では、まず通信機器１０１のＣＰＵ２０１がＲｅａｄ−ａｐｐを起動し、Ｒｅａｄ−ａｐｐによる処理を行う画面でユーザの指示を受け付けて、Ｗｒｉｔｅ−ａｐｐを呼び出す処理について説明する。
【００８８】
図１０は、本実施形態において、通信機器１０１のＣＰＵ２０１がＲｅａｄ−ａｐｐを起動してからＷｒｉｔｅ−ａｐｐを起動させてＷｒｉｔｅ−ａｐｐにより外部装置から画像を取得し、そして、取得された画像に対してＲｅａｄ−ａｐｐによりネットワーク上のプリンタで印刷処理を行う処理手順を説明するためのシーケンス図である。なお、以下で説明する処理は通信機器１０１のＣＰＵ２０１がＯＳ３０１、Ｗｒｉｔｅ−ａｐｐ３０２やＲｅａｄ−ａｐｐ３０３を起動し、適宜、これらにしたがって動作し、各部を制御することにより実現される。
【００８９】
まず、ユーザの操作に応答して、通信機器１０１のＣＰＵ２０１がＲｅａｄ−ａｐｐを起動することにより処理を開始する。ＣＰＵ２０１はＲｅａｄ−ａｐｐを起動すると、図８（ａ）に示すような画面を表示装置２１１に表示させる。図８（ａ）に示す画面において、ユーザは、表示装置２１１のタッチパネルを介して実行したい編集処理を選択する。
本実施形態では、「写真を印刷」を選択して表示装置２１１には、図８（ｃ）に示す画面が表示した場合について説明する。通信機器１０１が保持していない画像を編集したい場合は、「Ｗｒｉｔｅ−ａｐｐから写真を追加」を選択することにより、外部装置から画像を取り込むことができる。図６に示す処理は、この「Ｗｒｉｔｅ−ａｐｐから写真を追加」がユーザによって選択されることによって開始する。
【００９０】
図６のＴ１１０１は、ＣＰＵ２０１はＲｅａｄ−ａｐｐで要求ＩＤを発行し、加えてＷｉ−Ｆｉデバイス接続中フラグを指定する。Ｔ５０２では、ＣＰＵ２０１はＲｅａｄ−ａｐｐによるＷｒｉｔｅ−ａｐｐの起動要求を受け入れ、Ｔ１１０１で発行された要求ＩＤとＷｉ−Ｆｉデバイス接続中フラグおよび起動要求とを関連付けてＨＤＤ２０４に記憶する。ここで、要求ＩＤは、選択された編集内容によって異なるＩＤが付与されるものである。例えば図８（ｂ）〜図８（ｄ）に示す画面のどの画面から「Ｗｒｉｔｅ−ａｐｐから写真を追加」が選択されたかによって要求ＩＤが異なる。また、Ｗｉ−Ｆｉデバイス接続中フラグは、Ｒｅａｄ−ａｐｐが受け取った画像データを使用するときに使用するプリンタなどのＷｉ−Ｆｉデバイスが接続中かどうかの有無を示す情報である。例えば図８（ｃ）に示すように既にネットワーク上にあるプリンタを検出して印刷可能な状態であることが確認できている場合には、接続中Ｗｉ−Ｆｉデバイス「あり」のフラグを指定する。
【００９１】
次に、Ｔ５０３において、ＣＰＵ２０１は、ＯＳからＷｒｉｔｅ−ａｐｐに対して起動要求を行ってＷｒｉｔｅ−ａｐｐを起動させ、Ｔ１１０２において、ＣＰＵ２０１は、Ｗｒｉｔｅ−ａｐｐにおいて要求ＩＤとＷｉ−Ｆｉデバイス接続中フラグを受け付け記憶する。Ｗｒｉｔｅ−ａｐｐが起動する際には、Ｗｒｉｔｅ−ａｐｐは要求元のＲｅａｄ−ａｐｐのＩＤを受け取るようにする。Ｒｅａｄ−ａｐｐのＩＤは、通信機器１０１にインストールされたＲｅａｄ−ａｐｐ固有のＩＤであり、Ｒｅａｄ−ａｐｐがインストールされる際にＨＤＤ２０４に記憶され、Ｗｒｉｔｅ−ａｐｐの起動要求を行う際にＨＤＤ２０４から読み出されて通知される。
【００９２】
続いてＴ５０５において、ＣＰＵ２０１は、Ｗｒｉｔｅ−ａｐｐにてＲｅａｄ−ａｐｐのＩＤの照合を行う。つまり、要求元のＲｅａｄ−ａｐｐのＩＤがＨＤＤ２０４に記憶されたＲｅａｄ−ａｐｐのＩＤと一致するか否かをＷｒｉｔｅ−ａｐｐにて判定する。なお、ＣＰＵ２０１はＷｒｉｔｅ−ａｐｐにしたがって動作し、Ｗｒｉｔｅ−ａｐｐと連携可能なＲｅａｄ−ａｐｐのＩＤを、Ｗｒｉｔｅ−ａｐｐから読み出し可能にしてＨＤＤ２０４に予め記憶している。そして、エラー処理のＴ５０６とＴ５０７、および連携ＮＧの場合の動作は第１の実施形態と同じであるため説明を省略する。
【００９３】
Ｒｅａｄ−ａｐｐから呼び出された時、Ｗｒｉｔｅ−ａｐｐが「カメラ内の画像一覧」機能を実行していれば、Ｔ５０８においてＣＰＵ２０１はＷｒｉｔｅ−ａｐｐを連携モードへ切替え、図７（ｅ）の画像一覧画面６６５に切替えてフォアグラウンドに表示する。
【００９４】
また同時に、Ｔ１１０３で通信機器１０１のネットワーク状態（ネットワーク情報）を記憶する。本実施形態では、通信機器１０１のネットワーク状態としてＷｉ−Ｆｉネットワーク接続の有無、Ｗｉ−Ｆｉネットワーク接続中の場合にはそのＷｉ−Ｆｉネットワークを識別可能とするＳＳＩＤを記憶する。Ｔ１１０４で通信機器１０１と撮像装置１０２との接続を確立する。このときに、ユーザの操作に応じて、撮像装置１０２がアクセスポイントとして動作するＡＰモードと、撮像装置１０２がクライアントとして動作するＣＬモードとのどちらでも接続することができる。接続が確立した時点で、Ｔ１００５で通信機器１０１が撮像装置１０２との接続確立時のネットワーク状態として、そのＷｉ−Ｆｉネットワークを識別可能とするＳＳＩＤ（ネットワーク識別情報）を記憶する。
【００９５】
ＣＰＵ２０１が、Ｗｒｉｔｅ−ａｐｐの「カメラ内の画像一覧」機能を実行して、取り込み可能な撮像装置１０２内の本画像と対応するサムネイル画像を撮像装置１０２から受信して表示したり、本画像の保存処理をしたりする処理は第１の実施形態と同じため割愛する。
【００９６】
ユーザに選択されたサムネイル画像と対応するすべての本画像の保存処理が終了したら、ＣＰＵ２０１は、図７（ｈ）に示す保存完了画面６６８を表示装置２１１に表示する。ユーザにより図７（ｈ）の保存完了画面６６８で「Ｒｅａｄ−ａｐｐに戻る」ボタン６０９が押されたことを検出すると、ＣＰＵ２０１は、Ｔ１１０６の処理を開始する。
【００９７】
Ｔ１１０６においてＣＰＵ２０１は、Ｔ１１０２で要求ＩＤと合わせて読み込んで記憶したＲｅａｄ−ａｐｐのＷｉ−Ｆｉデバイス接続中フラグと、Ｔ１１１０３において記憶した連携開始時のネットワーク状態、および、撮像装置１０２との接続確立時のネットワーク状態とを確認する。
【００９８】
Ｔ１１０２のＷｉ−Ｆｉデバイス接続中フラグが「接続中デバイスあり」であった場合は、Ｔ１００３の連携開始時のＳＳＩＤとＴ１１０５の撮像装置１０２との接続確立時のＳＳＩＤ（ネットワーク識別情報）が異なっているかを確認する。異なっている場合には、Ｔ１１０６で撮像装置１０２とのネットワーク接続を切断する。Ｔ１１０７においてＣＰＵ２０１は、Ｔ１１０３で記憶した連携開始時のネットワーク状態に戻っているか判断し、戻っていなければ戻す処理を行う。なお、ＳＳＩＤが同じである場合は、ネットワーク状態を戻すように切り替えを行わない。
【００９９】
この後、ＣＰＵ２０１は、Ｗｒｉｔｅ−ａｐｐによる画像ＩＤリストを生成してＲｅａｄ−ａｐｐを起動して画像を渡す処理は第１の実施形態と同じ処理であるため割愛する。
【０１００】
（他の実施形態）
前述した実施形態では、通信機器１０１としてスマートフォンを例に説明したが、アプリケーションをインストール可能な機器であれば、特に限定されない。例えば、通信機器１０１として、携帯電話、タブレット、パーソナルコンピュータ（ＰＣ）等であっても同様に適用できる。また、Ｒｅａｄ−ａｐｐおよびＷｒｉｔｅ−ａｐｐが、通信機能が不要なアプリケーションである場合には、必ずしも通信機能がなくてもよく、広く情報処理装置によって実施可能である。
【０１０１】
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【図１】
2019175332.tif 000003
【図２】
2019175332.tif 000004
【図３】
2019175332.tif 000005
【図４】
2019175332.tif 000006
【図５】
2019175332.tif 000007
【図６】
2019175332.tif 000008
【図７】
2019175332.tif 000009
【図８】
2019175332.tif 000010
【図９】
2019175332.tif 000011
【図１０】
2019175332.tif 000012