(57)【特許請求の範囲】
【請求項１】
アプリケーションの第１の表示画面が第２の表示画面へと切り替わる画面遷移を検出した際、前記第１の表示画面で入力が受け付けられた入力情報が写る前記第１の表示画面の画像データを、前記アプリケーションと関連付けて保存する処理部、を備え、
前記入力情報は、前記第１の表示画面において項目と対応付けて入力が受け付けられており、
前記処理部は、
前記画面遷移を検出した際、前記第１の表示画面の前記項目に対応付けて入力された前記入力情報が、前記アプリケーションに関する情報が登録されているアプリケーション情報に含まれる前記項目の値から変更されているか否かを判定し、
前記入力情報が、前記アプリケーション情報に含まれる前記項目の値から変更されている場合に、前記第１の表示画面の前記画像データの保存を実行する、
情報処理装置。
【請求項２】
前記処理部は、前記入力情報が文字列である場合、前記第１の表示画面の画像に前記文字列を描画して、前記画像と前記文字列とを合成した合成画像のデータを前記画像データとして保存する、ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記処理部は、前記入力情報が文字列であり、且つ、前記第１の表示画面において伏せ字に変換して表示される場合、前記第１の表示画面の画像に前記文字列を描画して、前記画像と前記文字列とを合成した合成画像のデータを前記画像データとして保存する、ことを特徴とする請求項１に記載の情報処理装置。
【請求項４】
更に、前記アプリケーションの表示画面のタイトルの履歴を管理する管理部を含み、
前記処理部は、前記画像データの保存を実行する場合、前記アプリケーションを起動してから前記第１の表示画面が表示されるまでのタイトルの前記履歴を前記管理部から取得し、取得した前記履歴を前記画像データの保存場所を示すパスと対応づけて保存する、ことを特徴とする、請求項１から請求項３のいずれか１項に記載の情報処理装置。
【請求項５】
アプリケーションの第１の表示画面が第２の表示画面へと切り替わる画面遷移を検出し
た際、前記第１の表示画面で入力が受け付けられた入力情報が写る前記第１の表示画面の画像データを、前記アプリケーションと関連付けて保存する処理をコンピュータに実行させ、
前記入力情報は、前記第１の表示画面において項目と対応付けて入力が受け付けられており、
前記保存する処理は、
前記画面遷移を検出した際、前記第１の表示画面の前記項目に対応付けて入力された前記入力情報が、前記アプリケーションに関する情報が登録されているアプリケーション情報に含まれる前記項目の値から変更されているか否かを判定する処理と、
前記入力情報が、前記アプリケーション情報に含まれる前記項目の値から変更されている場合に、前記第１の表示画面の前記画像データの保存を実行する処理と、をさらに含む、
入力情報保存プログラム。
【請求項６】
アプリケーションの第１の表示画面が第２の表示画面へと切り替わる画面遷移を検出した際、前記第１の表示画面で入力が受け付けられた入力情報が写る前記第１の表示画面の画像データを、前記アプリケーションと関連付けて保存する工程、を含み、
前記入力情報は、前記第１の表示画面において項目と対応付けて入力が受け付けられており、
前記保存する工程は、
前記画面遷移を検出した際、前記第１の表示画面の前記項目に対応付けて入力された前記入力情報が、前記アプリケーションに関する情報が登録されているアプリケーション情報に含まれる前記項目の値から変更されているか否かを判定する工程と、
前記入力情報が、前記アプリケーション情報に含まれる前記項目の値から変更されている場合に、前記第１の表示画面の前記画像データの保存を実行する工程と、をさらに含む、
コンピュータが実行する入力情報保存方法。
【発明の詳細な説明】
【技術分野】
【０００１】
例えば、企業や省庁などの或る顧客に、スマートフォン、携帯電話、タブレット端末などの情報処理装置を導入する際、顧客の要望に応じてメーカがカスタマイズを行うサービス（キッティング）が提供されている。
【０００２】
キッティングでは、例えば、オペレーティングシステム（ＯＳ）及びソフトウェアの設定、並びにソフトウェアのインストールなどが行われる。例えば、キッティングでは、企業内の機密情報を社外に持ち出すことを禁止するためのカメラやＳＤカードの使用を禁止する設定、及び企業の利用環境に合わせたＷｉ-ｆｉアクセス・ポイントの設定などが行われる。
【０００３】
また、例えば、情報処理装置を利用するユーザが、様々なアプリケーションでデータベースに情報を登録することが行われている。例えば、住所録を管理するアプリケーションに、知人や顧客などの情報を登録したり、日程を管理するアプリケーションに予定を登録したりすることが行われている。
【０００４】
これに関し、ユーザにとって重要な操作を自動的に記録できる記録装置を提供するための技術が知られている（特許文献１）。また、ユーザによるコンピュータ操作中の操作画面をキャプチャして得られたキャプチャ画像を監視目的のために効率よく記録保存するための技術が知られている（特許文献２）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００９−１２３１４３号公報
【特許文献２】特開２００８−１９３４９１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
例えば、オペレーティングシステム及びソフトウェアの設定、並びに住所録などのアプリケーションのデータベースへの登録などで入力された入力情報が、作業者の要望通りの内容で入力されているかを確認することが望まれることがある。この確認のために、例えば、入力情報が入力された表示画面をキャプチャして画像として保存することが考えられる。一方で、例えば、情報処理装置の機能拡張などにより入力情報が入力される表示画面の構成などが変更されることがある。そのため、保存対象の表示画面に変更が生じても、入力情報が入力された表示画面の画像の保存を柔軟に実行することができる技術が望まれている。１つの側面では、本発明は、保存対象の表示画面に変更が生じても入力情報が入力された表示画面の画像の保存を柔軟に実行することができる技術を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の一つの態様の情報処理装置は、処理部を含む。処理部は、アプリケーションの第１の表示画面が第２の表示画面へと切り替わる画面遷移を検出した際、第１の表示画面で入力が受け付けられた入力情報が写る第１の表示画面の画像データを、アプリケーションと関連付けて保存する。
【発明の効果】
【０００８】
保存対象の表示画面に変更が生じても入力情報が入力された表示画面の画像の保存を柔軟に実行することができる。
【図面の簡単な説明】
【０００９】
【図１】表示画面に入力される入力情報を例示する図である。
【図２】画面遷移が起きた際のアプリケーション情報の確認と画像の保存を例示する図である。
【図３】情報処理装置のオペレーティングシステムのアーキテクチャを例示する図である。
【図４】実施形態に係る情報処理装置の機能ブロック構成を例示する図である。
【図５】第１の実施形態に係る監視対象情報を例示する図である。
【図６】第１の実施形態に係る保存画像管理情報を例示する図である。
【図７】第１の実施形態に係る入力情報保存処理を例示する図である。
【図８】第２の実施形態に係る入力情報保存処理を例示する図である。
【図９】第２の実施形態に係る入力された文字列の画像への合成を例示する図である。
【図１０】第３の実施形態に係る保存画像管理情報を例示する図である。
【図１１】第３の実施形態に係る入力情報保存処理の動作フローを例示する図である。
【図１２】実施形態に係る情報処理装置を実現するためのコンピュータのハードウェア構成を例示する図である。
【発明を実施するための形態】
【００１０】
図１は、情報処理装置１００が備える表示装置の表示画面１０１に入力される入力情報を例示する図である。情報処理装置１００は、例えば、スマートフォン、タブレット端末、パーソナルコンピュータ（ＰＣ）、ノートＰＣなどを含む。そして、表示画面１０１は、例えば、スライドスイッチ、ラジオボタン、及び、エディットボックスなどを介して入力情報の入力を受け付けてよい。なお、スライドスイッチは、例えば、ＯＮ（オン）とＯＦＦ（オフ）を切り替えるスライド方式のスイッチである（図１（ａ））。ラジオボタンは、例えば、いずれかを選択する形式のボタンである（図１（ｂ））。エディットボックスは、例えば、文字列の入力を受け付けるための領域である（図１（ｃ））。エディットボックスは、例えば、ユーザ名、ネットワーク名、及びパスワードなどの文字列を入力するために用いられる。
【００１１】
ここで、例えば、これらの表示画面１０１を介して作業者がキッティングや、アプリケーションのデータベースへの登録を行った場合に、作業者の要望通りの内容で入力されているかを確認することが望まれることがある。この場合に、例えば、入力情報の入力後の内容を、入力情報の内容が反映されたデータベースの値を見て確認しようとしても、作業者にとって見づらいことがある。そのため、例えば、入力情報の入力後の内容が、作業者の要望通りの内容となっているか確認したり、記録したりするために、入力情報の入力後に、これらの表示画面１０１をキャプチャして画像として保存することが考えられる。表示画面１０１を画像として保存することで、作業者は、入力情報の入力後の内容を、自分が設定した時の画面と同じ画面を見てビジュアルに確認することができる。一方で、例えば、情報処理装置１００の機能拡張などにより入力情報が入力される表示画面１０１の構成などが変更されることがある。そのため、保存対象の表示画面１０１に変更が生じても、入力情報が入力された表示画面１０１の画像の保存を柔軟に実行することができる技術が望まれている。
【００１２】
そこで、以下で述べる実施形態では、情報処理装置１００において保存対象の表示画面１０１を画像として保存する入力情報保存ソフトウェアを動作させる。なお、入力情報保存ソフトウェアは、例えば、保存対象の表示画面１０１を提供して入力情報の入力を受け付けるアプリケーションとは別のソフトウェアとして動作してよい。
【００１３】
入力情報保存ソフトウェアは、例えば、保存対象の表示画面１０１を提供するアプリケーションの表示画面１０１が別の表示画面に切り替わる画面遷移を検出し、その検出タイミングで、表示画面１０１において項目に対応付けて入力された入力情報を取得する。そして、入力情報保存ソフトウェアは、保存対象の表示画面１０１を提供するアプリケーションに関する情報が登録されているアプリケーション情報に含まれる項目の値から、取得した入力情報が変更されているか否かを判定する。アプリケーション情報は、例えば、アプリケーションに関する情報が登録されているデータベース（ＤＢ）であってよい。そして、入力情報保存ソフトウェアは、入力情報が、アプリケーション情報に含まれる項目の値から変更されている場合に、表示画面の画像データの保存を実行する。また、入力情報保存ソフトウェアは、表示画面の画像データを保存する際に、表示画面の画像データを、表示画面を提供するアプリケーションと関連付けて保存する。
【００１４】
図２は、画面遷移が起きた際のアプリケーション情報の確認と、表示画面の画像の保存を例示する図である。例えば、図２（ａ）の表示画面１０１において、別の表示画面への画面遷移が発生したとする。なお、画面遷移は、例えば、入力情報保存ソフトウェアが、ウィンドウマネージャを監視することで検出されてよい。例えば、入力情報保存ソフトウェアは、ウィンドウマネージャが現在表示中の表示画面を破棄して次の表示画面を生成する際の表示画面の破棄を検出することで、画面遷移を検出してよい。そして、入力情報保存ソフトウェアは、例えば、破棄される画面で項目に対して入力された入力情報により、アプリケーション情報に含まれる同じ項目の値が変更されるか否かを判定する。
【００１５】
例えば、入力情報保存ソフトウェアは、まず、図２（ａ）の表示画面１０１「位置情報」に対応する入力情報の入力を受け付ける領域（スライドスイッチ）の項目名を、ウィンドウマネージャから取得する。例えば、入力情報保存ソフトウェアは、ＡＰＩ（Application Programming Interface）を介してウィンドウマネージャに問い合わせ、「位置情報」に対応する入力を受け付ける領域の項目名：「assisted_gps_enabled」を取得してよい。また、入力情報保存ソフトウェアは、項目名：「assisted_gps_enabled」に対して表示画面１０１で入力された入力情報：ＯＮを取得する。続いて、入力情報保存ソフトウェアは、図２（ｂ）のアプリケーション情報を参照し、項目：「assisted_gps_enabled」に対してアプリケーション情報で設定されている値：ＯＦＦを取得する。この場合、入力情報と、アプリケーション情報とにおいて同じ項目：「assisted_gps_enabled」に対して設定された値が異なっている。そのため、入力情報保存ソフトウェアは、入力情報により、アプリケーション情報に含まれる同じ項目の値が変更されると判定してよい。この場合、入力情報保存ソフトウェアは、図２（ｃ）に示す様に、表示画面１０１をキャプチャして得た画像の画像データを記憶装置に保存する。また、保存した画像に関する情報を後述する保存画像管理情報６００に保存する。
【００１６】
そのため、入力情報を表示画面１０１に入力した作業者は、表示画面１０１の画像を保存するために別途操作を行わなくても、表示画面１０１の画像データを保存することができる。また、例えば、表示画面１０１の画面遷移を契機として表示画面１０１の画像を保存するため、保存対象の表示画面１０１の構成などに変更が生じても、入力情報が入力された表示画面１０１の画像の保存を柔軟に実行することができる。
【００１７】
また更に、上記の例では、画面遷移が起こり、且つ、アプリケーション情報の内容が入力情報により変更される場合に、表示画面１０１の画像データを保存している。従って、アプリケーション情報が変更された場合にのみ画像が保存されるため、保存される画像の枚数を抑えることができ、作業者の確認作業が容易になる。なお、入力情報保存ソフトウェアは、上記の例では、アプリケーション情報を参照して、表示画面１０１の項目に対して入力された入力情報によりアプリケーション情報の同じ項目の値が変更されるか否かを判定している。そのため、例えば、保存対象の表示画面１０１の構成が変更されたとしても、変更後のアプリケーション情報が同じ項目を含めば、その項目の値が入力情報により変更されるか否かを判定でき、画像を保存するか否かを柔軟に判定することができる。従って、実施形態によれば、設計変更などで保存対象の表示画面に変更が生じても入力情報が入力された表示画面の画像の保存を柔軟に実行することができる。
【００１８】
なお、入力情報保存ソフトウェアは、例えば、バックグラウンドサービスとして動作してよい。例えば、実施形態に係る情報処理装置１００のオペレーティングシステム（ＯＳ）は、図３に示すアーキテクチャ３００を有してよい。アーキテクチャ３００は、例えば、アプリケーション層、アプリケーションフレームワーク層、ライブラリ層、及びＯＳ層を含む。アプリケーション層は、例えば、ホーム画面を管理するソフトウェアや、ブラウザソフトウェアなどのアプリケーションが動作する階層である。
【００１９】
アプリケーションフレームワーク層は、例えば、アプリケーションの起動から終了までの流れであるライフサイクルを管理する機能を提供する。また、アプリケーションフレームワーク層は、ユーザインタフェースの表示やユーザによる操作など情報処理装置１００で起こるさまざまな状態の変化を各アプリケーションに伝える機能を提供する。アプリケーションフレームワーク層は、ウィンドウマネージャ、パッケージマネージャ、テレフォニーマネージャなどを含む。ウィンドウマネージャは、例えば、ウィンドウを管理する。パッケージマネージャは、システムにロードされたアプリケーションの情報の保存・変更・削除という一連の管理機能をアプリケーションに提供する。テレフォニーマネージャは、電話機能の管理を提供する。
【００２０】
ライブラリ層は、例えば、システム内で使用されるライブラリを含んでおり、これらのライブラリの機能は、各アプリケーションのフレームワークを経由して利用される。ＯＳ層は、例えば、ハードウェア及びメモリの制御を行う層である。
【００２１】
そして、一実施形態においては、入力情報保存ソフトウェアは、図３に示すように、例えば、アプリケーションフレームワーク層に実装され、バックグラウンドサービスとして動作してよい。
【００２２】
以下、図４から図７を参照して、第１の実施形態について詳細に説明する。なお、複数の図面において対応する要素には同一の符号を付す。
【００２３】
図４は、実施形態に係る情報処理装置１００の機能ブロック構成を例示する図である。情報処理装置１００は、例えば、制御部４０１及び記憶部４０２を含む。制御部４０１は、例えば処理部４１１、及び管理部４１２を含む。情報処理装置１００の記憶部４０２は、例えば、入力情報保存ソフトウェアの入力情報保存プログラム、並びに後述する監視対象情報５００、及び保存画像管理情報６００，１０００などの情報を記憶する。これらの各機能部の詳細及び記憶部４０２に格納されている情報の詳細については後述する。
【００２４】
図５は、第１の実施形態に係る監視対象情報５００を例示する図である。監視対象情報５００は、エントリを含む。各エントリは、例えば、アプリケーション名と、保存場所の情報を含み、これらは対応づけられている。アプリケーション名は、例えば、後述の入力情報保存処理において、表示画面１０１の画像を保存する対象とする監視対象のアプリケーションの名称である。また、保存場所は、例えば、監視対象のアプリケーションに関する情報が登録されているアプリケーション情報の保存場所を示すパスなどであってよい。
【００２５】
図６は、第１の実施形態に係る保存画像管理情報６００を例示する図である。保存画像管理情報６００は、例えば、入力情報保存処理において表示画面１０１の画像を保存する対象とする監視対象のアプリケーション毎に備えられる。例えば、或る監視対象のアプリケーションの表示画面１０１の画像が保存された場合、そのアプリケーションに対応する保存画像管理情報６００には保存された画像についてのエントリが登録される。エントリは、例えば、アプリケーション名（Ａｐｐ名）、記録日時、画面タイトル履歴、画像ファイルパスなどの情報を含み、これらの情報は対応づけられている。アプリケーション名は、例えば、保存画像管理情報６００が対応付けられている監視対象のアプリケーションの名称である。記録日時は、例えば、エントリに対応する画像が保存された日時を示す情報である。画像タイトル履歴は、例えば、エントリに対応する画像がキャプチャされた表示画面１０１が表示されるまでの表示画面のタイトルの履歴である。画像ファイルパスは、例えば、エントリに対応する画像が保存された場所を示すパスである。
【００２６】
図７は、第１の実施形態に係る入力情報保存処理を例示する図である。例えば、制御部４０１は、情報処理装置１００が起動すると、図７の入力情報保存処理の動作フローを開始してよい。図７の処理は、例えば、アプリケーションフレームワーク層において、バックグラウンドで動作してよい。
【００２７】
ステップ７０１（以降、ステップを“Ｓ”と記載し、例えば、Ｓ７０１と表記する）において制御部４０１は、画面遷移が発生したか否かを判定する。例えば、制御部４０１は、ウィンドウマネージャを監視し、ウィンドウマネージャが表示画面１０１を破棄して次の表示画面を生成する際の表示画面１０１の破棄を検出することで、画面遷移を検出してよい。Ｓ７０１において画面遷移が検出されていない場合（Ｓ７０１がＮＯ）、フローはＳ７０１の処理を繰り返す。一方、Ｓ７０１において画面遷移が検出された場合（Ｓ７０１がＹＥＳ）、フローはＳ７０２に進む。
【００２８】
Ｓ７０２において制御部４０１は、検出された画面遷移において遷移元である破棄される表示画面１０１を提供するアプリケーションの名称を取得する。例えば、制御部４０１は、ＡＰＩを介してウィンドウマネージャから遷移元の表示画面１０１を提供するアプリケーションの名称を取得してよい。
【００２９】
Ｓ７０３において制御部４０１は、遷移元の表示画面１０１を提供するアプリケーションが、監視対象のアプリケーションであるか否かを判定する。例えば、制御部４０１は、遷移元の表示画面１０１を提供するアプリケーションの名称が、監視対象情報５００のアプリケーション名に登録されていれば、監視対象のアプリケーションであると判定してよい。Ｓ７０３において遷移元の表示画面１０１を提供するアプリケーションが監視対象のアプリケーションでない場合（Ｓ７０３がＮＯ）、フローはＳ７０１に戻る。一方、Ｓ７０３において遷移元の表示画面１０１を提供するアプリケーションが、監視対象のアプリケーションである場合（Ｓ７０３がＹＥＳ）、フローはＳ７０４に進む。
【００３０】
Ｓ７０４において制御部４０１は、検出された画面遷移が、戻る操作の入力による画面遷移であるか否かを判定する。検出された画面遷移が、戻る操作の入力による画面遷移でない場合（Ｓ７０４がＮＯ）、フローはＳ７０６に進む。Ｓ７０６において制御部４０１は、遷移先の表示画面１０１のタイトルを、その表示画面１０１を提供するアプリケーションのタイトルの履歴に追加する。なお、制御部４０１は、例えば、ＡＰＩを介してウィンドウマネージャから表示画面１０１のタイトルを取得してよい。
【００３１】
一方、Ｓ７０４において、検出された画面遷移が、戻る操作の入力による画面遷移である場合（Ｓ７０４がＹＥＳ）、フローはＳ７０５に進む。Ｓ７０５において制御部４０１は、画面タイトルの履歴から１件破棄（遷移元の表示画面１０１のタイトルを破棄）し、フローはＳ７０１に戻る。即ち、例えば、アプリケーションが起動すると、制御部４０１は、起動時の表示画面１０１のタイトルの値を取得し、その後、表示画面１０１が戻る操作以外で遷移すると、遷移先の表示画面１０１のタイトルを、タイトルの履歴に追加する。一方、表示画面１０１が戻る操作の入力で遷移すると、例えば、制御部４０１は、画面タイトルの履歴から１件の履歴を削除する。この様に、制御部４０１は、アプリケーションが起動して以降、戻る操作以外で表示画面１０１が遷移すると、その表示画面１０１のタイトルを履歴として記憶部４０２に記録してよい。また、制御部４０１は、戻る操作で表示画面１０１が遷移すると、遷移元の表示画面１０１のタイトルを履歴から１件削除してよい。更に、アプリケーションが終了すると、そのアプリケーションについての画面タイトルの履歴を破棄してよい。そして、例えば、上述の図６の保存画像管理情報６００には、この様に記録された画面タイトルの履歴が画面タイトル履歴に保存されている。保存画像管理情報６００に登録された１列目のエントリの画面タイトル履歴の例では、アプリケーションの起動時の画面タイトルは「設定」である。その後、「無線とネットワーク」→「モバイルネットワーク設定」→「APN」へと画面が遷移する履歴が示されている。また、ここで、戻る操作が行われると、「APN」が破棄され、次にユーザが「VPN」に画面を遷移させると、画面タイトル履歴は、２列目のエントリに示すように、「設定」→「無線とネットワーク」→「モバイルネットワーク設定」→「VPN」となる。なお、画面タイトルの履歴は、アプリケーション毎に記録が管理され、後述するＳ７１０において保存画像管理情報６００の画面タイトル履歴に保存されてよい。
【００３２】
続いて、Ｓ７０７において制御部４０１は、遷移元の表示画面１０１を提供するアプリケーションに対応するアプリケーション情報が入力情報により変更されたか否かを判定する。例えば、制御部４０１は、遷移元のアプリケーションに対応するアプリケーション情報の保存場所を、監視対象情報５００から特定する。そして、制御部４０１は、例えば、ＡＰＩを介して遷移元の表示画面１０１に含まれる項目を特定する。制御部４０１は、例えば、特定した項目を、遷移元の表示画面１０１を提供するアプリケーションに対応するアプリケーション情報において検索し、項目が見つかった場合、その項目の値を取得する。そして、例えば、遷移元の表示画面１０１で項目に対して入力された入力情報と、アプリケーション情報から取得した同じ項目の値とが一致している場合、制御部４０１はＳ７０７においてＮＯと判定してよく、この場合、フローはＳ７０１に戻る。一方、例えば、表示画面１０１で項目に対して入力された入力情報と、アプリケーション情報から取得した同じ項目の値とが異なる場合、制御部４０１はＳ７０７においてＹＥＳと判定してよく、この場合、フローはＳ７０８に進む。なお、制御部４０１は、例えば、遷移元の表示画面１０１に含まれる項目が、アプリケーション情報に含まれていない場合にも、Ｓ７０７においてＹＥＳと判定してよい。
【００３３】
Ｓ７０８において制御部４０１は、遷移元の表示画面１０１をキャプチャする。Ｓ７０９において制御部４０１は、キャプチャした画像を記憶部４０２に保存する。これにより、或る表示画面１０１で入力された入力情報によりアプリケーション情報の項目の値が変更される場合、入力された入力情報が写る表示画面１０１の画像データを記憶部４０２に保存することができる。なお、画像の保存場所は、例えば、所定のフォルダなどであってよい。
【００３４】
Ｓ７１０において制御部４０１は、Ｓ７０２で特定したアプリケーションの名称を含む保存画像管理情報６００を特定する。制御部４０１は、特定した保存画像管理情報６００に、画像を記憶部４０２に保存した記録日時と、表示画面１０１の画面タイトルの履歴と、画像ファイルの保存場所のパスを示す画像ファイルパスとを対応づけたエントリを登録し、フローはＳ７０１に戻る。なお、画面タイトルの履歴は、アプリケーションが起動してから画像を保存した表示画面１０１が表示されるまでの表示画面１０１の画面タイトルの履歴である。
【００３５】
以上の動作フローのＳ７０１〜Ｓ７０３、及びＳ７０７〜７１０の処理において、情報処理装置１００の制御部４０１は、例えば、処理部４１１として動作する。また、Ｓ７０４〜７０６の処理において、情報処理装置１００の制御部４０１は、例えば、管理部４１２として動作する。
【００３６】
以上で述べた様に、第１の実施形態によれば、入力情報を表示画面１０１に入力した作業者が、表示画面１０１の画像を保存するために別途操作を行わなくても、画面遷移を契機に監視対象のアプリケーションの表示画面１０１の画像の保存が実行される。従って、作業者が入力した入力情報を記録する手間を低減することができる。
【００３７】
また、例えば、入力された入力情報が写る表示画面１０１の画像を保存する別の手法として、画像を保存する対象となる表示画面１０１を予め決めておくことが考えられる。しかしながら、画像を保存する対象となる表示画面１０１を予め決めておく場合、例えば、その表示画面１０１を提供するアプリケーションに設計変更などが行われ、表示画面１０１が変更されると、画像の保存がされなくなる恐れがある。しかしながら、上記の実施形態によれば、例えば、表示画面１０１の画面遷移を契機として表示画面１０１の画像を保存するため、保存対象の表示画面１０１の構成などに変更が生じても、入力情報が入力された表示画面の画像の保存を柔軟に実行することができる。
【００３８】
また、第１の実施形態では、画面遷移が起こり、且つ、監視対象情報５００に登録されている所定のアプリケーションのアプリケーション情報に変更があった場合の両方の条件がそろった時に画像を記録している。そのため、作業者が実際に値の変更や登録を行った表示画面１０１に限定して画像を保存することができる。また、保存される画像の枚数が抑えられるため、作業者による作業の確認も容易になる。また、この場合、保存対象の表示画面１０１の構成が変更されたとしても、変更後のアプリケーション情報が同じ項目を含めば、その項目の値が入力情報により変更されるか否かを判定できる。そのため、保存対象の表示画面１０１の構成が変更されたとしても、入力情報が入力された表示画面１０１の画像の保存を柔軟に実行することができる。
【００３９】
また、第１の実施形態では、保存画像管理情報６００はアプリケーション毎に生成されており、保存した画像とアプリケーションとが関連付けられている。そのため、例えば、或るアプリケーションについて入力情報を入力後に入力した内容を確認する場合に、入力後の表示画面１０１の画像を保存画像管理情報６００から容易に特定することができる。
【００４０】
また、例えば、情報処理装置１００の各種設定を行う設定画面などにおいて、複数画面に渡って連続する一連の設定項目に設定を行う場合がある。上記の実施形態では、保存画像管理情報６００は、アプリケーションと対応付けて、記録日時と、画面タイトル履歴と、画像ファイルパスの情報を含んでいる。そのため、複数頁に渡って連続する一連の設定項目に対して保存された複数枚の画像は、保存画像管理情報６００の記録日時や画面タイトル履歴により互いに関連付けられている。そのため、入力情報を入力した作業者は、保存画像管理情報６００を参照することで、複数画面に渡って連続する一連の設定項目に設定を行った場合も、連続する一連の設定項目の画像を保存画像管理情報６００から容易に特定することができる。その結果、例えば、入力情報を入力した作業者が表示画面１０１に設定した内容を、対応する複数枚に渡る一連の画像を見ることで、容易に確認することができる。
【００４１】
以上で述べた様に、実施形態によれば、設計変更などで保存対象の表示画面１０１に変更が生じても入力情報が入力された表示画面１０１の画像の保存を柔軟に実行することができる。
【００４２】
＜第２の実施形態＞
図１で例示した様に、表示画面１０１が、エディットボックスによる文字列の入力領域を含むことがある。そして、例えば、エディットボックスに入力された文字列の長さが、エディットボックスの表示領域よりも長いと、表示画面１０１に表示しきれない文字列がでてしまうことがある。この場合、表示画面１０１をキャプチャしても、エディットボックスに入力された文字列の一部しか画像に写らないことがある。また、例えば、パスワードなどの保護された情報の入力を受け付けるエディットボックスでは、入力された情報を伏せ字にするように設定されていることがある。この場合、表示画面１０１をキャプチャしても、エディットボックスに入力された文字列が伏せ字に変換されており、画像に写らないことがある。そのため、キャプチャして得た画像を、表示画面１０１に入力された入力情報の確認に利用できないことがある。そこで、第２の実施形態では、表示画面１０１がエディットボックスなどの文字列の入力領域を含む場合には、制御部４０１は、入力された文字列を取得し、キャプチャした画像上に文字列を描画して合成した合成画像を保存する。以下、図８及び図９を参照して、第２の実施形態を説明する。
【００４３】
図８は、第２の実施形態に係る入力情報保存処理を例示する図である。例えば、制御部４０１は、情報処理装置１００が起動すると、図８の入力情報保存処理の動作フローを開始してよい。図８の処理は、例えば、バックグラウンドで動作してよい。
【００４４】
なお、図８の動作フローのＳ８０１からＳ８０８までの処理は、例えば、図７のＳ７０１からＳ７０８までの処理と対応しており、制御部４０１は、Ｓ８０１からＳ８０８の処理において、Ｓ７０１からＳ７０８の処理と同様の処理を実行してよい。Ｓ８０９において制御部４０１は、画面遷移が検出された表示画面１０１に文字入力があるか否かを判定する。例えば、制御部４０１は、ＡＰＩを介してウィンドウマネージャに問い合わせ、応答結果から表示画面１０１にエディットボックスがある場合に文字入力があると判定してよい。文字入力がない場合（Ｓ８０９がＮＯ）、フローはＳ８１２に進む。一方、Ｓ８０９において文字入力がある場合（Ｓ８０９がＹＥＳ）、フローはＳ８１０に進む。Ｓ８１０において制御部４０１は、ＡＰＩを介してウィンドウマネージャに問い合わせ、応答結果から表示画面１０１に入力された文字列と、文字列が入力された領域の情報（例えば、領域の開始点の座標と、高さと幅の情報）を取得する。
【００４５】
Ｓ８１１において制御部４０１は、表示画面１０１に入力された文字列と、文字列が入力された領域の情報を用いて、キャプチャした画像上の文字列が入力される領域に、入力された文字列を描画して、画像と文字列を合成した合成画像を取得する。Ｓ８１２において制御部４０１は、入力された文字列を含む合成画像を記憶部４０２に保存する。例えば、制御部４０１は、画像に文字列を合成した合成画像を所定のフォルダに保存してよい。
【００４６】
以降のＳ８１３の処理は、例えば、図７のＳ７１０の処理と対応しており、制御部４０１は、Ｓ８１３において、Ｓ７１０の処理と同様の処理を実行してよく、本動作フローはＳ８０１に戻る。
【００４７】
図９は、第２の実施形態に係る入力された文字列の画像への合成を例示する図である。例えば、Ｗｉ-ｆｉのテザリング設定などのネットワーク設定では、ネットワークのＳＳＩＤ（Service Set Identifier）と、パスワードとが文字列として入力されることがある。この場合に、表示画面をキャプチャすると、図９（ａ）のようにエディットボックスに表示しきれなかった文字列は見えなくなってしまう。また、伏せ字となるパスワードも、キャプチャされた画像では確認することができない。
【００４８】
しかし、第２の実施形態によれば、図９（ｂ）のように、表示画面１０１に入力された文字列を取得し、キャプチャした画像上に描画して合成した合成画像を保存する。そのため、キャプチャ画像に収まりきらないような長い文字列やパスワードなどの伏せ字となった文字列をユーザに見える形式で画像に保存することができる。その結果、例えば、保存された画像を見て、表示画面１０１に入力された入力情報を確認することができる。
【００４９】
なお、図８の動作フローのＳ８０１〜Ｓ８０３、及びＳ８０７〜８１３の処理において、情報処理装置１００の制御部４０１は、例えば、処理部４１１として動作する。また、Ｓ８０４〜８０６の処理において、情報処理装置１００の制御部４０１は、例えば、管理部４１２として動作する。
【００５０】
＜第３の実施形態＞
以上においていくつかの実施形態を例示したが、実施形態はこれらに限定されるものではない。例えば、実施形態は、データベースへの情報の登録や編集などの入力情報の入力にも適用することができる。以下の説明では、入力情報の入力により情報が登録されたり及び編集されたりするデータベースの例として、電話帳を例に、第３の実施形態を説明する。
【００５１】
図１０は第３の実施形態に係る保存画像管理情報１０００を例示する図である。保存画像管理情報１０００は、エントリを含み、各エントリは、例えば、アプリケーション名（Ａｐｐ名）、記録日時、画面タイトル、及び画像ファイルパスを含み、これらの情報は対応付けられている。なお、アプリケーション名、記録日時、及び画像ファイルパスは、図６の保存画像管理情報６００のアプリケーション名、記録日時、及び画像ファイルパスと同様の情報であってよい。また、画面タイトルは、例えば、エントリに対応する画像がキャプチャされた表示画面１０１のタイトルである。なお、第１の実施形態では、画面タイトルの履歴を保存画像管理情報６００に保存しているが、第３の実施形態では、例として用いる電話帳のデータベースに登録される１件の登録データが１頁の表示画面に収まるため、履歴をとらない場合を例示している。しかしながら、第３の実施形態においても、例えば、電話帳のデータベースに登録される１件の登録データが複数頁の表示画面に渡る場合に、画面タイトルの履歴を保存してよい。また、図１０の例では、画面タイトルとして電話帳への登録者の姓名が取得された場合を例示している。
【００５２】
図１１は、第３の実施形態に係る入力情報保存処理の動作フローを例示する図である。例えば、制御部４０１は、情報処理装置１００が起動すると、図１１の入力情報保存処理の動作フローを開始してよい。図１１の処理は、例えば、バックグラウンドで動作してよい。
【００５３】
Ｓ１１０１において制御部４０１は、画面遷移が発生したか否かを判定する。なお、図１１のＳ１１０１からＳ１１０６までの処理は、例えば、図７のＳ７０１からＳ７０３及びＳ７０７からＳ７０９の処理とそれぞれ対応していてよい。例えば、制御部４０１は、Ｓ１１０１からＳ１１０６の処理において、Ｓ７０１からＳ７０３及びＳ７０７からＳ７０９の処理と同様の処理を実行してよい。Ｓ１１０７において制御部４０１は、Ｓ１１０２で特定したアプリケーションの名称を含む保存画像管理情報１０００を特定する。そして、制御部４０１は、そのアプリケーションに対応する保存画像管理情報１０００に、Ｓ１１０６で保存した画像についてのエントリを登録し、フローはＳ１１０１に戻る。登録されるエントリは、例えば、画像を記憶部４０２に保存した記録日時と、画像を保存した際の表示画面１０１の画面タイトルと、画像の保存場所を示す画像ファイルパスとを含んでよい。
【００５４】
図１１の動作フローのＳ１１０１〜Ｓ１１０７の処理において、情報処理装置１００の制御部４０１は、例えば、処理部４１１として動作する。
【００５５】
以上で述べた様に、実施形態は、例えば電話帳などの入力情報の入力により情報が登録されたり及び編集されたりするデータベースにも適用することができる。
【００５６】
また、上記において、いくつかの実施形態を例示したが、実施形態はこれに限定されるものではない。例えば、上述の動作フローは例示であり、実施形態はこれに限定されるものではない。可能な場合には、動作フローは、処理の順番を変更して実行されてもよく、別に更なる処理を含んでもよく、又は、一部の処理が省略されてもよい。
【００５７】
また、上述の例では、アプリケーションについての情報が登録される対象として、データベースを例に説明をしたが、実施形態はこれに限定されるものではなく、単に情報であってもよい。また、上記においては、キャプチャして保存する対象として、アプリケーションの表示画面１０１を例に説明したが、実施形態はこれに限定されるものではない。例えば、情報処理装置１００のＯＳが、マルチウィンドウでアプリケーションを表示する場合、制御部４０１は、フォーカスを持つアクティブウィンドウを対象に処理を実行し、アクティブウィンドウの画像を保存してもよい。また、この場合、制御部４０１は、フォーカスが他のウィンドウに移る場合も画面遷移として検出してよい。
【００５８】
また、上記の実施形態では、画面遷移を検出した際に、アプリケーション情報の値が変化する入力情報が入力されていれば表示画面の画像データを保存する実施形態を例示している。しかしながら、別の実施形態では、例えば、所定のアプリケーションにおいて画面遷移を検出した場合に、表示画面の画像データを保存するように実施形態を実施してもよい。この場合にも、画面遷移を検出してアプリケーションの表示画面１０１の保存を行うため、保存対象の表示画面１０１に変更が生じても、入力情報が入力された表示画面１０１の画像の保存を柔軟に実行することができる。この場合、上述の図７、図８、及び図１１の動作フローにおいて、例えば、Ｓ７０７、Ｓ８０７、及びＳ１１０４の処理は実行されなくてよい。
【００５９】
図１２は、実施形態に係る情報処理装置１００を実現するためのコンピュータ１２００のハードウェア構成を例示する図である。図１２の情報処理装置１００を実現するためのハードウェア構成は、例えば、プロセッサ１２０１、ＲＯＭ１２０２、ＲＡＭ１２０３、フラッシュメモリ１２０４、音声入力装置１２０５、及び音声出力装置１２０６を備える。なお、ＲＯＭは、Read Only Memoryの略称である。また、ＲＡＭは、Random Access Memoryの略称である。また、コンピュータ１２００は、例えば、通信インタフェース１２０７、撮像装置１２０８、表示装置１２０９、及びタッチパネル１２１０を備える。なお、これらの構成は、例えば、バス１２２０を介して互いに接続されている。
【００６０】
プロセッサ１２０１は、例えば、ワーク領域として利用されるＲＡＭ１２０３に上述の動作フローの手順を記述した入力情報保存プログラムを読み出して実行する。それにより、プロセッサ１２０１は、例えば、入力情報保存ソフトウェアとして動作してよく、上述した制御部４０１の一部または全部の機能を提供する。また、記憶部４０２は、例えば、ＲＯＭ１２０２、ＲＡＭ１２０３、及びフラッシュメモリ１２０４を含んでよい。プロセッサ１２０１は、例えば、ＲＡＭ１２０３にプログラムを読み出して実行することで、処理部４１１、及び管理部４１２として動作する。
【００６１】
ＲＯＭ１２０２は、例えば、プログラムを記憶する。また、ＲＡＭ１２０３は、ワーク領域として使用される。フラッシュメモリ１２０４は、プログラムやデータを記憶する。ＲＯＭ１２０２又はフラッシュメモリ１２０４は、例えば、入力情報保存プログラムを記憶していてよい。フラッシュメモリ１２０４は、例えば、監視対象情報５００、及び保存画像管理情報６００，１０００を記憶していてよい。
【００６２】
音声入力装置１２０５は、例えば、マイクであってよく、音声を入力する。また、音声出力装置１２０６は、例えばスピーカであってよく、音声を出力する。通信インタフェース１２０７は、プロセッサ１２０１の指示に従ってネットワークを介してデータを送受信する。撮像装置１２０８は、例えば、カメラであり、映像や画像を撮影する。表示装置１２０９は、例えば、ディスプレーであり、表示画面１０１を備える。タッチパネル１２１０は、例えば、ユーザからの入力を受け付ける。
【００６３】
実施形態に係る各プログラムは、例えば、下記の形態で情報処理装置１００に提供される。
（１）ＲＯＭ１２０２又はフラッシュメモリ１２０４に予めインストールされている。
（２）プログラムサーバなどのサーバから提供される。 
【００６４】
なお、図１２を参照して述べた情報処理装置１００を実現するためのコンピュータ１２００のハードウェア構成は、例示であり、実施形態はこれに限定されるものではない。例えば、情報処理装置１００を実現するためのコンピュータ１２００のハードウェア構成は、更に別の構成を含んでもよく、また、上述の構成の一部が省略や置換されてもよい。また、例えば、上述の機能部の一部または全部の機能がＦＰＧＡ及びＳｏＣなどによるハードウェアとして実装されてもよい。なお、ＦＰＧＡは、Field Programmable Gate Arrayの略称である。ＳｏＣは、System-on-a-chipの略称である。
【００６５】
以上において、いくつかの実施形態が説明される。しかしながら、実施形態は上記の実施形態に限定されるものではなく、上述の実施形態の各種変形形態及び代替形態を包含するものとして理解されるべきである。例えば、各種実施形態は、その趣旨及び範囲を逸脱しない範囲で構成要素を変形して具体化できることが理解されよう。また、前述した実施形態に開示されている複数の構成要素を適宜組み合わせることにより、種々の実施形態が実施され得ることが理解されよう。更には、実施形態に示される全構成要素からいくつかの構成要素を削除して又は置換して、或いは実施形態に示される構成要素にいくつかの構成要素を追加して種々の実施形態が実施され得ることが当業者には理解されよう。
【符号の説明】
【００６６】
１００      情報処理装置
１０１      表示画面
４０１      制御部
４０２      記憶部
４１１      処理部
４１２      管理部
１２００    コンピュータ
１２０１    プロセッサ
１２０２    ＲＯＭ
１２０３    ＲＡＭ
１２０４    フラッシュメモリ
１２０５    音声入力装置
１２０６    音声出力装置
１２０７    通信インタフェース
１２０８    撮像装置
１２０９    表示装置
１２１０    タッチパネル
１２２０    バス
【図１】
0006680580.tif 000002
【図２】
0006680580.tif 000003
【図３】
0006680580.tif 000004
【図４】
0006680580.tif 000005
【図５】
0006680580.tif 000006
【図６】
0006680580.tif 000007
【図７】
0006680580.tif 000008
【図８】
0006680580.tif 000009
【図９】
0006680580.tif 000010
【図１０】
0006680580.tif 000011
【図１１】
0006680580.tif 000012
【図１２】
0006680580.tif 000013