(57)【要約】【課題】より正確に、より簡易にユーザのアプリケーションの利用時間を取得する。【解決手段】アプリケーションをインストールして実行可能な情報端末１が、フォアグラウンドで実行されているアプリケーションの情報を取得し、フォアグラウンドで実行されているアプリケーションが変わったときに、その時のタイムスタンプとフォアグラウンドで実行されているアプリケーションの情報をログとして記録する。これにより、ログの膨大化を抑えつつ、ユーザのアプリケーションの利用時間をより正確に取得することができる。【選択図】図１
2017167712.tif 000002
【特許請求の範囲】
【請求項１】
アプリケーションをインストールして実行可能な情報端末であって、
フォアグラウンドで実行されているアプリケーションの情報を取得するフォアグラウンドアプリ取得手段と、
フォアグラウンドで実行されているアプリケーションが変わったときに、その時のタイムスタンプとフォアグラウンドで実行されているアプリケーションの情報をログとして記録するログ記録手段と、
前記ログを保持するログ保持手段と、
を有することを特徴とする情報端末。
【請求項２】
前記ログ記録手段は、前回記録したタイムスタンプと今回のタイムスタンプからフォアグラウンドで実行されていた前記アプリケーションの利用時間を算出してログとして記録することを特徴とする請求項１に記載の情報端末。
【請求項３】
前記ログ保持手段から前記ログを読み出して送信するログ送信手段を有することを特徴とする請求項１又は２に記載の情報端末。
【請求項４】
アプリケーションをインストールして実行可能な情報端末によって実行されるログ記録方法であって、
フォアグラウンドで実行されているアプリケーションの情報を取得するステップと、
フォアグラウンドで実行されているアプリケーションが変わったときに、その時のタイムスタンプとフォアグラウンドで実行されているアプリケーションの情報をログとしてログ保持手段に記録するステップと、
を有することを特徴とするログ記録方法。
【請求項５】
前記記録するステップは、前回記録したタイムスタンプと今回のタイムスタンプからフォアグラウンドで実行されていた前記アプリケーションの利用時間を算出してログとして記録することを特徴とする請求項４に記載のログ記録方法。
【請求項６】
前記ログ保持手段から前記ログを読み出して送信するステップを有することを特徴とする請求項４又は５に記載のログ記録方法。
【請求項７】
請求項１乃至３のいずれかに記載の情報端末の各手段としてコンピュータを動作させることを特徴とするログ記録プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アプリケーションのログを取得する技術に関する。
【背景技術】
【０００２】
スマートフォン、タブレット端末、及びセットトップボックスなどの情報端末では、ユーザはアプリケーションストアからアプリケーションをダウンロードして利用することができる。アプリケーションストアを運営する事業者にとっては、ユーザに人気のアプリケーションを把握することが重要である。
【０００３】
ユーザの人気指標としてダウンロード数やユーザによる評価を用いることが一般的であるが、ダウンロード数やユーザによる評価は不正操作が簡単に実行できてしまう。そこで、特許文献１では、アプリケーションの起動及び終了に基づく利用実績から人気指標を求めている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１４−０４８７２０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１は、アプリケーションの利用実績として、アプリケーションの起動から終了までの実行時間を収集している。アプリケーションはバックグラウンドで実行されることがあり、アプリケーションの実行時間とユーザの利用時間が必ずしも一致するものではない。特許文献１のアプリケーションの利用実績は、ユーザの利用時間を正確に表すものではないという問題があった。
【０００６】
ユーザの利用時間を正確に算出するために、ＯＳ（オペレーティングシステム）が備える実行中のプロセスのログを出力する機能を用いてログを出力し、そのログを解析する方法が考えられる。しかしながら、実行中の全てのプロセスに関する情報をログとして記録すると、ログデータが莫大になり、端末負荷が高くなるという問題があった。
【０００７】
本発明は、上記に鑑みてなされたものであり、より正確に、より簡易にユーザのアプリケーションの利用時間を取得することを目的とする。
【課題を解決するための手段】
【０００８】
第１の本発明に係る情報端末は、アプリケーションをインストールして実行可能な情報端末であって、フォアグラウンドで実行されているアプリケーションの情報を取得するフォアグラウンドアプリ取得手段と、フォアグラウンドで実行されているアプリケーションが変わったときに、その時のタイムスタンプとフォアグラウンドで実行されているアプリケーションの情報をログとして記録するログ記録手段と、前記ログを保持するログ保持手段と、を有することを特徴とする。
【０００９】
第２の本発明に係るログ記録方法は、アプリケーションをインストールして実行可能な情報端末によって実行されるログ記録方法であって、フォアグラウンドで実行されているアプリケーションの情報を取得するステップと、フォアグラウンドで実行されているアプリケーションが変わったときに、その時のタイムスタンプとフォアグラウンドで実行されているアプリケーションの情報をログとしてログ保持手段に記録するステップと、を有することを特徴とする。
【００１０】
第３の本発明に係るログ記録プログラムは、上記情報端末の各手段としてコンピュータを動作させることを特徴とする。
【発明の効果】
【００１１】
本発明によれば、より正確に、より簡易にユーザのアプリケーションの利用時間を取得することができる。
【図面の簡単な説明】
【００１２】
【図１】本実施の形態における情報端末の構成を示す機能ブロック図である。
【図２】本実施の形態における情報端末がログを取得するタイミングを示す図である。
【図３】本実施の形態におけるログ収集アプリの処理の流れを示すフローチャートである。
【図４】ユーザの操作により変化したフォアグラウンドアプリを示す図である。
【図５】図４のようにフォアグラウンドアプリが変化したときに記録されるデータの例を示す図である。
【発明を実施するための形態】
【００１３】
以下、本発明の実施の形態について図面を用いて説明する。
【００１４】
図１は、本実施の形態における情報端末の構成を示す機能ブロック図である。
【００１５】
図１に示す情報端末１は、オペレーティングシステム１１と、オペレーティングシステム１１上で動作するログ収集アプリ１２を備える。情報端末１には、オペレーティングシステム１１上で動作する複数のアプリ１３Ａ，１３Ｂ，１３Ｃがインストールされて、ユーザはアプリ１３Ａ，１３Ｂ，１３Ｃを利用する。情報端末１が備える各部は、演算処理装置、記憶装置等を備えたコンピュータにより構成して、各部の処理がプログラムによって実行されるものとしてもよい。このプログラムは情報端末１が備える記憶装置に記憶されており、磁気ディスク、光ディスク、半導体メモリ等の記録媒体に記録することも、ネットワークを通して提供することも可能である。情報端末１は、例えば、スマートフォン、タブレット端末、セットトップボックス、あるいはパーソナルコンピュータを用いて構成できる。
【００１６】
オペレーティングシステム１１は、プロセス管理部１１１とアプリケーション処理部１１２を備える。プロセス管理部１１１は、オペレーティングシステム１１が実行するプロセスを管理し、ログ収集アプリ１２の問い合わせに応じてフォアグラウンドで実行中のアプリケーション（以下、「フォアグラウンドアプリ」と称する）の情報を返信する。フォアグラウンドアプリは、ユーザの操作対象となるアプリケーションであり、多くの場合、情報端末１の表示部に最前面で表示される。アプリケーション処理部１１２は、情報端末１にインストールされたアプリ１３Ａ，１３Ｂ，１３Ｃ及びログ収集アプリ１２を動作させる。
【００１７】
ログ収集アプリ１２は、ログデータ収集部１２１、ログデータ保存部１２２、及びログデータ送信部１２３を備える。ログデータ収集部１２１は、所定の間隔で、現在のフォアグラウンドアプリの情報をプロセス管理部１１１に問い合わせて、タイムスタンプとフォアグラウンドアプリの情報をログデータ保存部１２２に記録する。ログデータ保存部１２２は、タイムスタンプ及びフォアグラウンドアプリの情報を記載したログを保持する。タイムスタンプは、例えばプロセス管理部１１１からフォアグラウンドアプリの情報が得られたときの時刻である。アプリケーションがフォアグラウンドで実行され始めたときの時刻が得られるときはその時刻をタイムスタンプとしてもよい。フォアグラウンドアプリの情報は、例えばフォアグラウンドで実行中のアプリケーションの名称である。ログデータ送信部１２３は、ログデータ保存部１２２からログを読み出してログ管理サーバ２へ送信する。ログ収集アプリ１２は、他のアプリ１３Ａ，１３Ｂ，１３Ｃと同様にオペレーティングシステム１１上で動作する。あるいは、オペレーティングシステム１１にログ収集アプリ１２の機能を備えてもよい。
【００１８】
ログ管理サーバ２は、情報端末１からログを受信して格納し、ログを集計してアプリケーション毎の利用時間を求める。なお、図１では情報端末１を１つのみ図示しているが、ログ管理サーバ２は複数の情報端末１と接続し、複数の情報端末１のそれぞれからログを受信する。
【００１９】
次に、本実施の形態におけるログ収集アプリの動作について説明する。
【００２０】
スマートフォンなどのユーザが操作する情報端末では、ユーザの操作対象となるフォアグラウンドアプリはひとつだけである。そこで、ログ収集アプリ１２は、アプリケーションがフォアグラウンドで実行されている間の時間をそのアプリケーションの利用時間として、フォアグラウンドで実行中のアプリケーションのログを収集する。
【００２１】
図２は、本実施の形態における情報端末がログを取得するタイミングを示す図である。
【００２２】
ログ収集アプリ１２は、所定の間隔で、フォアグラウンドアプリの情報を取得する。図２では、時刻ｔ１〜ｔ９のそれぞれの時刻において、フォアグラウンドアプリの情報を取得している。
【００２３】
ログ収集アプリ１２は、時刻ｔ１において、アプリＡがフォアグラウンドで実行されていることを検知すると、アプリＡの利用が開始されたことをログに記録する。
【００２４】
時刻ｔ２，ｔ３ではフォアグラウンドアプリが変更されていないので、ログ収集アプリ１２はログを記録しない。
【００２５】
その後、アプリＢがフォアグラウンドで実行されると、アプリＡはバックグラウンドで実行される。
【００２６】
時刻ｔ４では、フォアグラウンドアプリがアプリＡからアプリＢに変更されたので、アプリＡの利用が終了したこと及びアプリＢの利用が開始されたことをログに記録する。
【００２７】
時刻ｔ５ではアプリＢがそのままフォアグラウンドで実行されているので、ログ収集アプリ１２はログを記録しない。
【００２８】
その後、アプリＢが終了し、アプリＡが再びフォアグラウンドで実行される。
【００２９】
時刻ｔ６では、フォアグラウンドアプリがアプリＢからアプリＡに変更されたので、アプリＢの利用が終了したこと及びアプリＡの利用が開始されたことをログに記録する。
【００３０】
時刻ｔ７，ｔ８ではフォアグラウンドで実行されているアプリケーションに変更はないので、情報端末１はログを記録しない。
【００３１】
その後、アプリＡが終了する。
【００３２】
時刻ｔ９では、フォアグラウンドで実行されていたアプリＡが終了していたので、アプリＡの利用が終了したことをログに記録する。
【００３３】
ログを収集する収集間隔を長くしてログの量を減らしたり、あるいは、収集間隔を短くし、より正確にアプリケーションの利用時間を算出することができる。
【００３４】
続いて、本実施の形態におけるログ収集アプリの処理の流れについて説明する。
【００３５】
図３は、本実施の形態におけるログ収集アプリの処理の流れを示すフローチャートである。
【００３６】
ログ収集アプリ１２が動作を開始すると、ログデータ収集部１２１は、所定のタイミングで、現在フォアグラウンドで実行しているアプリケーションの情報をプロセス管理部１１１に問い合わせる（ステップＳ１１）。この問い合わせに対して、プロセス管理部１１１は、フォアグラウンドで実行中のアプリケーションの名称を返答する。
【００３７】
ログデータ収集部１２１は、ログデータ保存部１２２から、前回記録した最新のログに記録されたフォアグラウンドアプリの名称とタイムスタンプを取得する（ステップＳ１２）。
【００３８】
ログデータ収集部１２１は、ログが取得できない、あるいはステップＳ１２で取得したログにフォアグラウンドアプリの名称が記録されているか否か判定する（ステップＳ１３）。例えば、ログデータ収集部１２１の処理が１回目であってログデータ保存部１２２にログが記録されていない場合や、前回記録時にはフォアグラウンドでアプリケーションが実行されていなかった場合、例えば、アプリ選択メニューが表示されておりフォアグラウンドで実行されているアプリケーションが無い場合は、ログにフォアグラウンドアプリの名称が記録されていない。
【００３９】
ステップＳ１２でログが取得できないか、取得したログにフォアグラウンドアプリの名称が記録されていない場合（ステップＳ１３のＮｏ）、ログデータ収集部１２１は、ステップＳ１１で得たフォアグラウンドで実行中のアプリケーションを起動したアプリとしてタイムスタンプとともにログデータ保存部１２２に記録する（ステップＳ１４）。
【００４０】
一方、ステップＳ１２で取得したログにフォアグラウンドアプリの名称が記録されている場合（ステップＳ１３のＹｅｓ）、ログデータ収集部１２１は、ステップＳ１１で得たフォアグラウンドで実行中のアプリケーションとステップＳ１２で取得したログに記録されたアプリケーションが一致するか否か判定する（ステップＳ１５）。
【００４１】
フォアグラウンドで実行中のアプリケーションとログに記録されたフォアグラウンドアプリが一致しない場合（ステップＳ１５のＮｏ）、ログデータ収集部１２１は、ステップＳ１１で得たフォアグラウンドで実行中のアプリケーションを起動したアプリとしてタイムスタンプとともにログデータ保存部１２２に記録し、ステップＳ１２で取得したログに記録されたフォアグラウンドアプリを終了したアプリとして実行時間とともにログデータ保存部１２２に記録する（ステップＳ１６）。終了したアプリの実行時間は、ステップＳ１２で取得したログに記録されたタイムスタンプから現在時刻までの経過時間により求める。
【００４２】
フォアグラウンドで実行中のアプリケーションとログに記録されたフォアグラウンドアプリが一致する場合は（ステップＳ１５のＹｅｓ）、ログ収集アプリ１２は、ログを記録しないで処理を終える。
【００４３】
ログ収集アプリ１２は、以上の処理を所定の間隔で実行する。
【００４４】
続いて、記録されるログについて説明する。
【００４５】
図４は、ユーザの操作により変化したフォアグラウンドアプリを示す図であり、図５は、図４のようにフォアグラウンドアプリが変化したときに、ログデータ保存部１２２に記録されるデータの例を示す図である。
【００４６】
最初は、ログは記録されていないものとする。
【００４７】
ユーザの操作によりアプリＡが起動してフォアグラウンドで実行されているときに、ログ収集アプリ１２が図３の処理を開始すると、ステップＳ１１において、「アプリＡ」がフォアグラウンドで実行されていることを検出する。
【００４８】
ステップＳ１２でログを取得できないので、ステップＳ１４へ進み、現在時刻をタイムスタンプに記録し、アプリ起動ログにフォアグラウンドアプリの名称「アプリＡ」を記録する（図５の通番１）。
【００４９】
その後、「アプリＡ」がログに記録されてからアプリＢがフォアグラウンドで実行されるまでの間に、ログ収集アプリ１２が図３の処理を開始した場合、ステップＳ１１では「アプリＡ」がフォアグラウンドで実行されていることを検出し、ステップＳ１２では「アプリＡ」がアプリ起動ログに記録された通番１のログを取得する。ステップＳ１１，Ｓ１２で取得したアプリケーションは共に「アプリＡ」となるので、ステップＳ１５において、フォアグラウンドで実行中のアプリケーションとログに記録されたアプリケーションが一致すると判定されて、新たなログは記録されない。
【００５０】
フォアグラウンドで実行されるアプリケーションがアプリＡからアプリＢに変更された後、ログ収集アプリ１２が図３の処理を開始すると、ステップＳ１１では「アプリＢ」がフォアグラウンドで実行されていることを検出し、ステップＳ１２では「アプリＡ」がアプリ起動ログに記録された通番１のログを取得する。
【００５１】
ステップＳ１５において、ステップＳ１１，Ｓ１２で取得したアプリケーションが異なると判定され、ステップＳ１６へ進む。ステップＳ１６では、現在時刻をタイムスタンプに記録し、アプリ起動ログに「アプリＢ」を記録するとともに、アプリ終了ログに「アプリＡ」と記録し、現在時刻と前回記録したログのタイムスタンプとの差分をとって「アプリＡ」のアプリ利用時間ログを算出し、ログに記録する（図５の通番２）。
【００５２】
以上の処理を繰り返し、フォアグラウンドアプリが変化したタイミングでのみログを記録する。このとき、アプリケーションがフォアグラウンドで実行されている間の時間をそのアプリケーションの利用時間として算出する。
【００５３】
実行中のプロセスの全てについて、プロセスネームとプロセス順を取得してログに記録した場合、実行中のプロセスは数十から数百に及ぶためにログが莫大な量となってしまう。本実施の形態では、フォアグラウンドで実行中のアプリケーションの情報を取得し、フォアグラウンドアプリが変化したときのみログに記録するため、ログの量を大幅に削減することができる。
【００５４】
ログデータ送信部１２３は、所定のタイミングでログデータ保存部１２２からログデータを読み出してログ管理サーバ２へ送信する。
【００５５】
ログ管理サーバ２は、複数の情報端末１から受信したログを集計し、アプリケーション毎の利用時間を求め、求めた利用時間を人気指標としたアプリケーションのランキングを提供する。
【００５６】
なお、本実施の形態では、情報端末１がアプリケーションの利用時間を算出しているが、情報端末１は、タイムスタンプとフォアグラウンドアプリのみを記載し、ログ管理サーバ２がログに基づいてアプリケーションの利用時間を算出してもよい。
【００５７】
以上説明したように、本実施の形態によれば、アプリケーションをインストールして実行可能な情報端末１が、フォアグラウンドで実行されているアプリケーションの情報を取得し、フォアグラウンドで実行されているアプリケーションが変わったときに、その時のタイムスタンプとフォアグラウンドで実行されているアプリケーションの情報をログとして記録することにより、ログの膨大化を抑えつつ、ユーザのアプリケーションの利用時間をより正確に取得することができる。ログの量が抑制できるので、情報端末１の負荷が軽減される。利用時間をより正確に取得できるので、信頼度の高いランキングを提供できる。
【符号の説明】
【００５８】
１…情報端末
１１…オペレーティングシステム
１１１…プロセス管理部
１１２…アプリケーション処理部
１２…ログ収集アプリ
１２１…ログデータ収集部
１２２…ログデータ保存部
１２３…ログデータ送信部
１３Ａ，１３Ｂ，１３Ｃ…アプリ
２…ログ管理サーバ
【図１】
2017167712.tif 000003
【図２】
2017167712.tif 000004
【図３】
2017167712.tif 000005
【図４】
2017167712.tif 000006
【図５】
2017167712.tif 000007
【手続補正書】
【提出日】平成29年1月31日(2017.1.31)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
アプリケーションをインストールして実行可能な情報端末であって、
フォアグラウンドで実行されているアプリケーションの情報を取得するフォアグラウンドアプリ取得手段と、
フォアグラウンドで実行されているアプリケーションが変わったとき及びフォアグラウンドで実行されているアプリケーションが終了したときに、その時のタイムスタンプと前記アプリケーションの情報、及び、前回記録したタイムスタンプと今回のタイムスタンプから算出した前記アプリケーションの利用時間をログとして記録するログ記録手段と、
前記ログを保持するログ保持手段と、
前記ログ保持手段から前記ログを読み出して送信するログ送信手段と、
を有することを特徴とする情報端末。
【請求項２】
アプリケーションをインストールして実行可能な情報端末によって実行されるログ記録方法であって、
フォアグラウンドで実行されているアプリケーションの情報を取得するステップと、
フォアグラウンドで実行されているアプリケーションが変わったとき及びフォアグラウンドで実行されているアプリケーションが終了したときに、その時のタイムスタンプと前記アプリケーションの情報、及び、前回記録したタイムスタンプと今回のタイムスタンプから算出した前記アプリケーションの利用時間をログとしてログ保持手段に記録するステップと、
前記ログ保持手段から前記ログを読み出して送信するステップと、
を有することを特徴とするログ記録方法。
【請求項３】
請求項１に記載の情報端末の各手段としてコンピュータを動作させることを特徴とするログ記録プログラム。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００８
【補正方法】変更
【補正の内容】
【０００８】
第１の本発明に係る情報端末は、アプリケーションをインストールして実行可能な情報端末であって、フォアグラウンドで実行されているアプリケーションの情報を取得するフォアグラウンドアプリ取得手段と、フォアグラウンドで実行されているアプリケーションが変わったとき及びフォアグラウンドで実行されているアプリケーションが終了したときに、その時のタイムスタンプと前記アプリケーションの情報、及び、前回記録したタイムスタンプと今回のタイムスタンプから算出した前記アプリケーションの利用時間をログとして記録するログ記録手段と、前記ログを保持するログ保持手段と、前記ログ保持手段から前記ログを読み出して送信するログ送信手段と、を有することを特徴とする。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】０００９
【補正方法】変更
【補正の内容】
【０００９】
第２の本発明に係るログ記録方法は、アプリケーションをインストールして実行可能な情報端末によって実行されるログ記録方法であって、フォアグラウンドで実行されているアプリケーションの情報を取得するステップと、フォアグラウンドで実行されているアプリケーションが変わったとき及びフォアグラウンドで実行されているアプリケーションが終了したときに、その時のタイムスタンプと前記アプリケーションの情報、及び、前回記録したタイムスタンプと今回のタイムスタンプから算出した前記アプリケーションの利用時間をログとしてログ保持手段に記録するステップと、前記ログ保持手段から前記ログを読み出して送信するステップと、を有することを特徴とする。