(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2022-12-09
(54)【発明の名称】携帯電子デバイスの状態の判断
(51)【国際特許分類】
G06F 11/36 20060101AFI20221202BHJP
【FI】
G06F11/36 164
【審査請求】未請求
【予備審査請求】有
(21)【出願番号】P 2022518974
(86)(22)【出願日】2020-09-14
(85)【翻訳文提出日】2022-05-18
(86)【国際出願番号】 EP2020075635
(87)【国際公開番号】W WO2021058310
(87)【国際公開日】2021-04-01
(32)【優先日】2019-09-24
(33)【優先権主張国・地域又は機関】GB
(81)【指定国・地域】
(71)【出願人】
【識別番号】519100952
【氏名又は名称】ブランコ テクノロジー グループ アイピー オイ
【氏名又は名称原語表記】BLANCCO TECHNOLOGY GROUP IP OY
(74)【代理人】
【識別番号】110002907
【氏名又は名称】弁理士法人イトーシン国際特許事務所
(72)【発明者】
【氏名】トルマ,マルクス
【テーマコード(参考)】
5B042
【Fターム(参考)】
5B042HH04
5B042MA08
5B042MA17
5B042MC40
(57)【要約】
携帯電子デバイスの状態を判断する際に使用するための方法は、携帯電子デバイスのリングバッファに格納されているデバッグログから情報を繰り返し読み出すことと、デバッグログから読み出した情報を繰り返し使用して携帯電子デバイスのイベント履歴を構築して維持することと、イベント履歴に基づいて携帯電子デバイスの状態を繰り返し判断することとを含む。本方法は、特に、排他的ではないが、携帯電話、スマートフォン、タブレット、および/またはラップトップの1つ以上のハードウェア要素の状態を判断する際に使用され得る。携帯電子デバイスの状態を判断する際に使用するためのシステムおよびコンピュータプログラムも開示される。
【選択図】
図1A
【特許請求の範囲】
【請求項1】
携帯電子デバイスの状態を判断する際に使用するための方法であって、
前記携帯電子デバイスのリングバッファに格納されているデバッグログから情報を繰り返し読み出すことと、
前記デバッグログから読み出した前記情報を繰り返し使用して前記携帯電子デバイスのイベント履歴を構築して維持することと、
前記イベント履歴に基づいて前記携帯電子デバイスの前記状態を繰り返し判断することとを含む方法。
【請求項2】
請求項1に記載の方法において、前記携帯電子デバイスの前記状態を繰り返し判断することは、前記携帯電子デバイスが所定の態様で動作しているか否かを繰り返し判断することを含む方法。
【請求項3】
請求項2に記載の方法において、前記所定の態様での前記携帯電子デバイスの前記動作は、前記携帯電子デバイスの正しい動作、通常の動作、期待される動作、デフォルトの動作、および所望の動作のうちの少なくとも1つ、および/または1つ以上の所定の基準に準拠した前記携帯電子デバイスの動作に対応する方法。
【請求項4】
前記請求項のいずれかに記載の方法において、前記リングバッファに格納されている前記デバッグログから複数の異なる瞬間に情報を読み出すことを含み、ここで、あらゆる2つの連続する瞬間は、前記携帯電子デバイスのオペレーティングシステムが、前記リングバッファに格納されている前記デバッグログに、情報を、前記情報を読み出せる前に上書きすることを回避するような十分に小さい時間によって分離されている方法。
【請求項5】
前記請求項のいずれかに記載の方法において、一定間隔で前記デバッグログから情報を繰り返し読み出すことを含む方法。
【請求項6】
前記請求項のいずれかに記載の方法において、前記リングバッファに格納されている前記デバッグログからある瞬間に読み出す情報であって、前の瞬間に前記デバッグログから読み出された前記情報に対して新規または追加となる情報のみを読み出すことを含む方法。
【請求項7】
前記請求項のいずれかに記載の方法において、
前記携帯電子デバイスのハードウェア要素の前記状態、前記起動および/または前記動作のうちの少なくとも1つに関連付けられた前記イベント履歴の1つ以上のエントリまたは部分を繰り返し特定することと、
前記特定された前記イベント履歴の1つ以上のエントリまたは部分に基づいて、前記ハードウェア要素の前記状態を繰り返し判断することとを含む方法。
【請求項8】
請求項7に記載の方法において、前記ハードウェア要素の前記状態、前記起動および/または前記動作のうちの少なくとも1つに関連付けられた前記イベント履歴の前記1つ以上のエントリまたは部分を繰り返し特定することは、前記ハードウェア要素の前記状態、前記起動および/または前記動作のうちの少なくとも1つに関連付けられた1つ以上の文字、1つ以上の記号、1つ以上のキーワード、および1つ以上のコマンドのうちの少なくとも1つを求めて、前記イベント履歴を繰り返し検索することを含む方法。
【請求項9】
請求項7または8に記載の方法において、
前記特定された前記イベント履歴の1つ以上のエントリまたは部分を繰り返し解析することと、
前記解析された前記イベント履歴の1つ以上のエントリまたは部分に基づいて、前記ハードウェア要素の前記状態を繰り返し判断することとを含む方法。
【請求項10】
請求項7から9のいずれか一項に記載の方法において、前記ハードウェア要素の前記状態を判断することは、前記ハードウェア要素が所定の態様で動作しているか否かを判断することを含む方法。
【請求項11】
請求項10に記載の方法において、前記所定の態様での前記ハードウェア要素の前記動作は、前記ハードウェア要素の正しい動作、通常の動作、期待される動作、デフォルトの動作、および所望の動作のうちの少なくとも1つ、および/または1つ以上の所定の基準に準拠した前記ハードウェア要素の動作に対応する方法。
【請求項12】
請求項7から11のいずれか一項に記載の方法において、前記ハードウェア要素は、トランスデューサ、コンポーネント、デバイス、入力要素、出力要素、コントロール、押しボタン、ノブ、スイッチ、キー、キーボード、キーパッド、センサ、加速度計、画像センサ、マイクロフォン、近接センサ、運動センサ、ユーザインタフェース、タッチスクリーン、インジケータ、ディスプレイ、およびスピーカのうちの少なくとも1つを含む方法。
【請求項13】
前記請求項のいずれかに記載の方法において、前記携帯電子デバイスのオペレーティングシステムが、前記携帯電子デバイスの前記動作に関する情報を、前記携帯電子デバイスの前記リングバッファに格納されている前記デバッグログに書き込むように、前記携帯電子デバイスを設定、制御または有効化することを含む方法。
【請求項14】
前記請求項のいずれかに記載の方法において、
前記携帯電子デバイスの前記オペレーティングシステムが前記携帯電子デバイスの前記リングバッファに格納されている前記デバッグログに書き込む、前記携帯電子デバイスの前記動作に関連する前記情報の詳細度を高めるように、前記携帯電子デバイスを設定、制御または有効化すること、および/または、
前記携帯電子デバイスの前記オペレーティングシステムに冗長ロギングを行わせるように、前記携帯電子デバイスを設定、制御または有効化することを含む方法。
【請求項15】
前記請求項のいずれかに記載の方法において、前記携帯電子デバイスはiOS(登録商標)デバイスまたはiOS(登録商標)オペレーティングシステムを含み、前記方法は、前記携帯電子デバイスが通常モードであるときにsyslogリレーサービスを使用することを含む方法。
【請求項16】
前記請求項のいずれかに記載の方法において、前記携帯電子デバイスはAndroid(登録商標)デバイスまたはAndroid(登録商標)オペレーティングシステムを含み、前記方法は、USBデバッグを有効化することを含む方法。
【請求項17】
前記請求項のいずれかに記載の方法において、前記携帯電子デバイスの外部にある外部処理リソースを使用して、前記携帯電子デバイスの前記リングバッファに格納されている前記デバッグログから情報を繰り返し読み出すことを含む方法。
【請求項18】
請求項17に記載の方法において、前記外部処理リソースを使用して、前記携帯電子デバイスの外部にある外部ディスプレイに、前記携帯電子デバイスの前記判断された状態を表現する情報を繰り返し表示させることを含む方法。
【請求項19】
請求項18に記載の方法において、前記外部処理リソースを使用して、前記外部ディスプレイに、前記携帯電子デバイスに関連して1つ以上のアクションを行うように前記携帯電子デバイスのユーザを案内または促すための情報を表示させることを含む方法であって、例えば、前記携帯電子デバイスに関連して行われるべき1つ以上のアクションは、前記携帯電子デバイスの入力要素を起動または操作することを含む方法。
【請求項20】
請求項18または19に記載の方法において、
前記携帯電子デバイスに関連して1つ以上のアクションを行うように前記ユーザを案内または促すための前記情報を前記外部ディスプレイが表示した後に、前記携帯電子デバイスの前記リングバッファに格納されている前記デバッグログから情報を繰り返し読み出すことと、
前記デバッグログから読み出した前記情報を繰り返し使用して、前記携帯電子デバイスのイベント履歴を構築して維持することと、
前記携帯電子デバイスに関連して前記1つ以上のアクションが行われたかどうかを前記イベント履歴に基づいて繰り返し判断することとを含む方法。
【請求項21】
請求項18から20のいずれか一項に記載の方法において、前記外部処理リソースを使用して、前記外部ディスプレイに、前記携帯電子デバイスに関連して複数のアクションを順次行うように前記携帯電子デバイスのユーザを案内または促す情報を前記外部ディスプレイ上に順次表示させることを含む方法。
【請求項22】
請求項21に記載の方法において、
前記携帯電子デバイスに関連して前記複数のアクションのそれぞれ1つを行うように前記ユーザを案内または促すための前記情報を前記外部ディスプレイが表示した後に、前記携帯電子デバイスの前記リングバッファに格納されている前記デバッグログから情報を繰り返し読み出すことと、
前記デバッグログから読み出した前記情報を繰り返し使用して、前記携帯電子デバイスのイベント履歴を構築して維持することと、
前記携帯電子デバイスに関連して前記複数のアクションのそれぞれ1つが行われたかどうかを、前記デバッグログから読み出した前記情報に基づいて繰り返し判断することとを含む方法。
【請求項23】
前記請求項のいずれかに記載の方法において、前記携帯電子デバイスは、携帯電話、スマートフォン、タブレット、またはラップトップを含む方法。
【請求項24】
携帯電子デバイスの状態を判断する際に使用するためのシステムであって、前記システムは、前記携帯電子デバイスの外部にある外部処理リソースを備え、前記外部処理リソースは、前記携帯電子デバイスと通信するように構成されており、且つ前記いずれかの請求項の方法を行うように構成されているシステム。
【請求項25】
携帯電子デバイスの状態を判断する際に使用するためのコンピュータプログラムであって、前記コンピュータプログラムは、前記携帯電子デバイスの外部にある外部処理リソースによって実行されると、前記外部処理リソースが請求項1から23のいずれか一項の方法を行うように構成されているコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、携帯電子デバイスの状態を判断する際に使用するためのシステム、方法、およびコンピュータプログラムに関し、特に、排他的ではないが、携帯電話、スマートフォン、タブレット、および/またはラップトップの1つ以上のハードウェア要素の状態を判断する際に使用するためのシステム、方法、およびコンピュータプログラムに関する。
【背景技術】
【0002】
携帯電子デバイス上に診断アプリケーションをインストールし、これを携帯電子デバイスのプロセッサによる実行時に使用して、携帯電子デバイスが期待された態様または所望の態様で動作しているかどうかを検証できることが知られている。このような診断アプリケーションは、携帯電子デバイスの1つ以上のハードウェア入力の状態、起動および/または動作のうちの少なくとも1つに関する情報を、携帯電子デバイスのOSからOSのアプリケーションプログラミングインターフェース(API)を介して間接的に受信することができる。例えば、このような診断アプリケーションは、携帯電子デバイスの1つ以上のコントロール、1つ以上の押しボタン、タッチスクリーン、1つ以上のセンサなどの状態、起動および/または動作のうちの少なくとも1つに関する情報を、携帯電子デバイスのOSからOSのAPIを介して間接的に受信することができる。
【0003】
しかしながら、状況によっては、例えば携帯電子デバイス上で利用可能なメモリの不足の結果として、携帯電子デバイス上での診断アプリケーションのインストールおよび/または実行が技術的に可能でない場合がある。加えて、または代替として、携帯電子デバイス上でのサードパーティ診断アプリケーションのインストールおよび/または実行が、携帯電子デバイスの製造業者および/または携帯電子デバイスのOSの製造業者によって禁止されている場合がある。また、状況によっては、携帯電子デバイスが、1つ以上の壊れたコントロール、1つ以上の壊れた押しボタン、壊れたタッチスクリーン、および/または1つ以上の壊れたセンサを有している場合があり、このことによって、携帯電子デバイスのユーザが診断アプリケーションにナビゲートすることまたは診断アプリケーションを実行することができなかったり、および/または携帯電子デバイスのユーザが携帯電子デバイスからの指示を入力および/または受信することができない場合がある。
【発明の概要】
【課題を解決するための手段】
【0004】
本開示の一態様によれば、携帯電子デバイスの状態を判断する際に使用するための方法であって、
携帯電子デバイスのリングバッファに格納されているデバッグログから情報を繰り返し読み出すことと、
デバッグログから読み出した情報を繰り返し使用して携帯電子デバイスのイベント履歴を構築して維持することと、
イベント履歴に基づいて携帯電子デバイスの状態を繰り返し判断することとを含む方法が提供される。
【0005】
携帯電子デバイスの状態を判断する際に使用するためのこの方法は、携帯電子デバイスに診断アプリケーションをインストールおよび/または実行する必要がなく、したがって、例えば携帯電子デバイスで利用できるメモリが不足している結果として、携帯電子デバイス上での診断アプリケーションのインストールおよび/または実行が技術的に不可能な場合でも使用することができる。携帯電子デバイスの状態を判断する際に使用するためのこの方法は、携帯電子デバイスのOSからOSのAPIを介して間接的に情報を受信するいかなる必要性も回避し得る。加えて、または代替として、携帯電子デバイスの状態を判断する際に使用するためのこの方法によって、携帯電子デバイスの製造業者および/または携帯電子デバイスのOSの製造業者によって課されるあらゆる制限であって、携帯電子デバイス上でのサードパーティ診断アプリケーショのインストールおよび/または実行を禁止する場合がある制限を回避し得る。さらに、この方法は、携帯電子デバイスが1つ以上の壊れたコントロール、1つ以上の壊れた押しボタン、壊れたタッチスクリーンおよび/または1つ以上の壊れたセンサを有していることによって、携帯電子デバイスのユーザが診断アプリケーションにナビゲートすることまたは診断アプリケーションを実行することができなかったり、および/または携帯電子デバイスのユーザが携帯電子デバイスからの指示を入力および/または受信することができない場合でも、依然として適用することができる。
【0006】
携帯電子デバイスの状態を繰り返し判断することは、携帯電子デバイスが所定の態様で動作しているか否かを繰り返し判断することを含んでもよい。
【0007】
所定の態様での携帯電子デバイスの動作は、携帯電子デバイスの正しい動作、通常の動作、期待される動作、デフォルトの動作、および所望の動作のうちの少なくとも1つ、および/または1つ以上の所定の基準に準拠した携帯電子デバイスの動作に対応してもよい。
【0008】
本方法は、リングバッファに格納されているデバッグログから複数の異なる瞬間に情報を読み出すことを含み、ここで、あらゆる2つの連続する瞬間は、携帯電子デバイスのオペレーティングシステムが、リングバッファに格納されているデバッグログに、情報を、情報を読み出せる前に上書きすることを回避するような十分に小さい時間によって分離されていることを含んでもよい。
【0009】
本方法は、一定間隔でデバッグログから情報を繰り返し読み出すことを含んでもよい。
【0010】
本方法は、リングバッファに格納されているデバッグログから任意のある瞬間に読み出す情報であって、前の瞬間にデバッグログから読み出された情報に対して新規または追加となるような情報のみを読み出すことを含んでもよい。本方法は、新規または追加となるそのような情報を、デバッグログ内の対応するエントリのタイムスタンプに基づいて、特定することを含んでもよい。本方法は、リングバッファに格納されているデバッグログに新しい情報が追加されるような瞬間にのみ、リングバッファに格納されているデバッグログから情報を読み出すことを含んでよい。本方法は、リングバッファに格納されているデバッグログに新しい情報が追加される瞬間を、携帯電子デバイスのOSによって維持されるデバッグログのメタデータに基づいて特定することを含んでよい。
【0011】
本方法は、携帯電子デバイスのハードウェア要素の状態、起動および/または動作のうちの少なくとも1つに関連付けられたイベント履歴の1つ以上のエントリまたは部分を繰り返し特定することを含んでもよい。
【0012】
本方法は、特定されたイベント履歴の1つ以上のエントリまたは部分に基づいて、ハードウェア要素の状態を繰り返し判断することを含んでもよい。
【0013】
本方法は、ハードウェア要素の状態、起動および/または動作のうちの少なくとも1つに関連付けられたイベント履歴の1つ以上のエントリまたは部分を繰り返し特定することは、ハードウェア要素の状態、起動および/または動作のうちの少なくとも1つに関連付けられた1つ以上の文字、1つ以上の記号、1つ以上のキーワード、および1つ以上のコマンドのうちの少なくとも1つを求めて、イベント履歴を繰り返し検索することを含んでもよい。
【0014】
本方法は、特定されたイベント履歴の1つ以上のエントリまたは部分を繰り返し解析することを含んでもよい。本方法は、解析されたイベント履歴の1つ以上のエントリまたは部分に基づいて、ハードウェア要素の状態を繰り返し判断することを含んでもよい。
【0015】
ハードウェア要素の状態を判断することは、ハードウェア要素が所定の態様で動作しているか否かを判断することを含んでもよい。
【0016】
所定の態様でのハードウェア要素の動作は、ハードウェア要素の正しい動作、通常の動作、期待される動作、デフォルトの動作、および所望の動作のうちの少なくとも1つ、および/または1つ以上の所定の基準に準拠したハードウェア要素の動作に対応してもよい。
【0017】
ハードウェア要素は、トランスデューサ、コンポーネント、およびデバイスのうちの少なくとも1つを含んでもよい。
【0018】
ハードウェア要素は、入力要素を含んでもよい。ハードウェア要素は、出力要素を含んでもよい。
【0019】
ハードウェア要素は、コントロール、押しボタン、ノブ、スイッチ、キー、キーボード、キーパッド、センサ、加速度計、画像センサ、マイクロフォン、近接センサ、運動センサ、ユーザインタフェース、およびタッチスクリーンのうちの少なくとも1つを含んでもよい。
【0020】
ハードウェア要素は、インジケータ、ディスプレイ、スピーカ、ユーザインタフェース、およびタッチスクリーンのうちの少なくとも1つを含んでもよい。
【0021】
本方法は、携帯電子デバイスのオペレーティングシステムが、携帯電子デバイスの動作に関する情報を、携帯電子デバイスのリングバッファに格納されているデバッグログに書き込むように、携帯電子デバイスを設定、制御または有効化することを含んでもよい。
【0022】
本方法は、携帯電子デバイスのオペレーティングシステムが携帯電子デバイスのリングバッファに格納されているデバッグログに書き込む、携帯電子デバイスの動作に関連する情報の詳細度を高めるように、携帯電子デバイスを設定、制御または有効化することを含んでもよい。
【0023】
本方法は、携帯電子デバイスのオペレーティングシステムに冗長ロギングを行わせるように、携帯電子デバイスを設定、制御または有効化することを含んでもよい。
【0024】
携帯電子デバイスはiOS(登録商標)デバイスまたはiOS(登録商標)オペレーティングシステムを含んでもよい。本方法は、携帯電子デバイスが通常モードであるときにsyslogリレーサービスを使用することを含んでもよい。
【0025】
携帯電子デバイスはAndroid(登録商標)デバイスまたはAndroid(登録商標)オペレーティングシステムを含んでもよい。本方法は、USBデバッグを有効化することを含んでもよい。
【0026】
本方法は、携帯電子デバイスの外部にある外部処理リソースを使用して、携帯電子デバイスのリングバッファに格納されているデバッグログから情報を繰り返し読み出すことを含んでもよい。
【0027】
本方法は、外部処理リソースを使用して、携帯電子デバイスの外部にある外部ディスプレイに、携帯電子デバイスの判断された状態を表現する情報を繰り返し表示させることを含んでもよい。
【0028】
本方法は、外部処理リソースを使用して、外部ディスプレイに、携帯電子デバイスに関連して1つ以上のアクションを行うように携帯電子デバイスのユーザを案内または促すための情報を表示させることを含んでもよい。携帯電子デバイスに関連して行われるべき1つ以上のアクションは、携帯電子デバイスを設定、制御もしくは有効化すること、または携帯電子デバイスの入力要素を起動もしくは操作することを含んでもよい。さらに、携帯電子デバイスに関連して行われるべき1つ以上のアクションは、携帯電子デバイスの動作に関する情報の詳細度を高めるように、携帯電子デバイスを設定、制御もしくは有効化すること、または携帯電子デバイスの入力要素を起動もしくは操作することを含んでもよい。
【0029】
本方法は、携帯電子デバイスに関連して1つ以上のアクションを行うようにユーザを案内または促すための情報を外部ディスプレイが表示した後に、携帯電子デバイスのリングバッファに格納されているデバッグログから情報を繰り返し読み出すことを含んでもよい。本方法は、デバッグログから読み出した情報を繰り返し使用して、携帯電子デバイスのイベント履歴を構築して維持することを含んでもよい。本方法は、携帯電子デバイスに関連して1つ以上のアクションが行われたかどうかをイベント履歴に基づいて繰り返し判断することを含んでもよい。
【0030】
本方法は、外部処理リソースを使用して、外部ディスプレイに、携帯電子デバイスに関連して複数のアクションを順次行うように携帯電子デバイスのユーザを案内または促す情報を外部ディスプレイ上に順次表示させることを含んでもよい。
【0031】
本方法は、携帯電子デバイスに関連して複数のアクションのそれぞれ1つを行うようにユーザを案内または促すための情報を外部ディスプレイが表示した後に、携帯電子デバイスのリングバッファに格納されているデバッグログから情報を繰り返し読み出すことを含んでもよい。本方法は、デバッグログから読み出した情報を繰り返し使用して、携帯電子デバイスのイベント履歴を構築して維持することを含んでもよい。本方法は、携帯電子デバイスに関連して複数のアクションのそれぞれ1つが行われたかどうかを、デバッグログから読み出した情報に基づいて繰り返し判断することを含んでもよい。
【0032】
外部処理リソースおよび/または外部ディスプレイは、携帯電子デバイスの外部にあるPCであって、携帯電子デバイスと通信するように構成されたPCなどの外部コンピューティングリソースの一部であってもよい。
【0033】
外部コンピューティングリソースは、外部コンピューティングリソースと携帯電子デバイスとの間に接続された、1つ以上のワイヤまたはUSBケーブルなどのケーブルを介して、携帯電子デバイスと通信するように構成されてもよい。
【0034】
携帯電子デバイスは、携帯電話、スマートフォン、タブレット、またはラップトップを含んでもよい。
【0035】
本開示の一態様によれば、携帯電子デバイスの状態を判断する際に使用するための方法が提供される。
【0036】
本方法は、携帯電子デバイスのリングバッファに格納されているデバッグログから情報を繰り返し読み出すことを含んでもよい。
【0037】
本方法は、デバッグログから読み出した情報を繰り返し使用して、携帯電子デバイスのイベント履歴を構築して維持することを含んでもよい。
【0038】
本方法は、携帯電子デバイスの状態をイベント履歴に基づいて繰り返し判断することを含んでもよい。
【0039】
本開示の一態様によれば、携帯電子デバイスの状態を判断する際に使用するためのシステムであって、システムは、携帯電子デバイスの外部にある外部処理リソースを備え、外部処理リソースは、携帯電子デバイスと通信するように構成されており、且つ前述したいずれかの方法を行うように構成されているシステムが提供される。
【0040】
本開示の一態様によれば、携帯電子デバイスの状態を判断する際に使用するためのコンピュータプログラムであって、コンピュータプログラムは、携帯電子デバイスの外部にある外部処理リソースによって実行されると、外部処理リソースが前述したいずれかの方法を行うように構成されているコンピュータプログラムが提供される。
【0041】
本開示の上記のいずれか1つの態様のいずれか1つ以上の特徴は、本開示の上記のいずれか1つの他の態様のいずれか1つ以上の特徴と組み合わせてもよいことが理解されるべきである。
【0042】
次に、以下の図面を参照して、携帯電子デバイスの状態を判断する際に使用するためのシステム、方法、およびコンピュータプログラムを、非限定的な例のみを目的として説明する。
【図面の簡単な説明】
【0043】
【
図1A】
図1Aは、携帯電子デバイスと、携帯電子デバイスの状態を判断する際に使用するためのシステムとの概略図である。
【
図1B】
図1Bは、
図1Aの携帯電子デバイスとシステムとの内部コンポーネントを示す、
図1Aの携帯電子デバイスとシステムとの概略図である。
【
図2A】
図2Aは、携帯電子デバイスの電源キーの起動前の瞬間に、携帯電子デバイスのグラフィカル表現を表示しているPCのディスプレイの前に保持された
図1Aの携帯電子デバイスを示している。
【
図2B】
図2Bは、携帯電子デバイスの電源キーの起動後の瞬間に、携帯電子デバイスのグラフィカル表現を表示しているPCのディスプレイの前に保持された
図1Aの携帯電子デバイスを示している。
【
図3A】
図3Aは、携帯電子デバイスの近接センサの起動前の瞬間に、携帯電子デバイスのグラフィカル表現を表示しているPCのディスプレイの前に保持された
図1Aの携帯電子デバイスを示している。
【
図3B】
図3Bは、携帯電子デバイスの近接センサの起動後の瞬間に、携帯電子デバイスのグラフィカル表現を表示しているPCのディスプレイの前に保持された
図1Aの携帯電子デバイスを示している。
【
図4A】
図4Aは、携帯電子デバイスのタッチスクリーンの起動前の瞬間に、携帯電子デバイスのグラフィカル表現を表示しているPCのディスプレイの前に保持された
図1Aの携帯電子デバイスを示している。
【
図4B】
図4Bは、携帯電子デバイスのタッチスクリーンの1つの領域の起動後の瞬間に、携帯電子デバイスのグラフィカル表現を表示しているPCのディスプレイの前に保持された
図1Aの携帯電子デバイスを示している。
【
図4C】
図4Cは、携帯電子デバイスのタッチスクリーンの5つの異なる領域の起動後の瞬間に、携帯電子デバイスのグラフィカル表現を表示しているPCのディスプレイの前に保持された
図1Aの携帯電子デバイスを示している。
【
図5A】
図5Aは、携帯電子デバイスの縦向きから横向きへの回転前の瞬間に、携帯電子デバイスのグラフィカル表現を表示しているPCのディスプレイの前に保持された
図1Aの携帯電子デバイスを示している。
【
図5B】
図5Bは、携帯電子デバイスの縦向きから横向きへの回転直後の瞬間に、携帯電子デバイスのグラフィカル表現を表示しているPCのディスプレイの前に保持された
図1Aの携帯電子デバイスを示している。
【
図5C】
図5Cは、
図5Bに対応する瞬間の直後だが、携帯電子デバイスのタッチスクリーン上に表示されている画像の縦から横への向きの変更が完了する前の瞬間に、携帯電子デバイスのグラフィカル表現を表示しているPCのディスプレイの前に保持された
図1Aの携帯電子デバイスを示している。
【発明を実施するための形態】
【0044】
まず
図1Aを参照すると、iPhone(登録商標)4という形態の携帯電子デバイスの状態を判断する際に使用するための、全体が2と示されたシステムが示されている。システム2は、PC6と、PC6をiPhone(登録商標)4に接続するケーブル8とを含む。iPhone(登録商標)4は、複数の入力要素および複数の出力要素という形態の複数のハードウェア要素を含む。具体的には、iPhone(登録商標)4は、ON/OFFボタンつまり電源キー10、ホーム/タッチIDボタン12、加速度計13、音量ダウンボタン14、音量アップボタン16、サイレントモードスイッチ18、近接センサ22、およびタッチスクリーン24という形態の幾つかの入力要素を含む。スマートフォン4は、タッチスクリーン24という形態の出力要素を含む。
【0045】
図1Bに示すように、iPhone(登録商標)4は、プロセッサ30という形態の処理リソースをさらに含む。iPhone(登録商標)4は、デバッグログ34を格納するリングバッファ32をさらに含む。当業者は、使用時に、プロセッサ30がiOS(登録商標)オペレーティングシステム(OS)を走らせることを理解するであろう。
【0046】
PC6は、プロセッサ40という形態の処理リソースと、メモリ42と、ディスプレイ44とを含む。メモリ42は、コンピュータプログラム46を格納しており、これがプロセッサ40によって実行されると、プロセッサ40に以下に説明するような方法を行わせる。
【0047】
使用時には、iPhone(登録商標)4が通常モードで構成されている状態で、iPhone(登録商標)4のOSは、ハードウェア要素10,12,13,14,16,18,22,24の状態、起動および/または動作に関する情報を繰り返し受信し、受信した情報を、リングバッファ32に格納されているデバッグログ34にsyslogリレーサービスを介して書き込む。以下により詳細に説明するように、iPhone(登録商標)4がケーブル8を介してPC6に接続され、PC6のプロセッサ40がコンピュータプログラム46を実行すると、PC6のプロセッサ40はiPhone(登録商標)4のリングバッファ32に格納されているデバッグログ34から情報を繰り返し読み出し、プロセッサ40はデバッグログ34から読み出した情報を繰り返し使用してiPhone(登録商標)4のイベント履歴を構築して維持し、プロセッサ40はスマートフォン4の状態をイベント履歴に基づいて繰り返し判断する。
【0048】
例えば、
図2Aは、ホーム/タッチIDボタン12の起動後だが、iPhone(登録商標)4のハードウェア要素10,13,14,16,18,22,24の起動前に、PC6のディスプレイ44の前に保持されたiPhone(登録商標)4を示しているのに対し、
図2Bは、ホーム/タッチIDボタン12の起動後であって、且つiPhone(登録商標)4の電源キー10の起動後だが、ハードウェア要素13,14,16,18,22,24の起動前に、PC6のディスプレイ44の前に保持されたiPhone(登録商標)4を示す。PC6のプロセッサ40がコンピュータプログラム46を実行すると、プロセッサ40は、PC6のディスプレイ44にiPhone(登録商標)4のグラフィカル表現50を表示させる。このグラフィカル表現50は、各ハードウェア要素10,12,14,16,18,22,24の対応する色のドットまたは円によるグラフィカル表現を含む。例えば、
図2Aに示すように、ホーム/タッチIDボタン12は、緑色のドットまたは円51によってグラフィカルに表現されて、ホーム/タッチIDボタン12が既に起動されていることおよび/または正しく動作していることを表わし、他のハードウェア要素10,14,16,18,22,24のそれぞれは、1つ以上の黄色のドットまたは円52によってグラフィカルに表現されて、対応するハードウェア要素10,14,16,18,22,24がまだ起動されていないことを表わす。
図2Aに示すように、ディスプレイ44のカーソル54が電源キー10に対応する黄色のドットまたは円52の上に置かれると、ディスプレイ44は、iPhone(登録商標)4の電源キー10の機能性を特定するふきだし56を「電源キー」という言葉と共に表示する。同様に、ディスプレイ44のカーソル54が、他のハードウェア要素のいずれかに対応する他の色のドットまたは円51,52のいずれかの上に置かれると、ディスプレイ44は、対応するハードウェア要素の機能を特定するふきだしを表示する。
【0049】
以下により詳細に説明するように、PC6のプロセッサ40がコンピュータプログラム46を実行すると、プロセッサ40は、iPhone(登録商標)4のリングバッファ32に格納されているデバッグログ34から情報を繰り返し読み出し、デバッグログ34から読み出した情報に基づいてハードウェア要素10,12,13,14,16,18,22,24の状態を判断して、PC6のディスプレイ44上に表示されているiPhone(登録商標)4のグラフィカル表現50を、判断に応じて更新する。例えば、プロセッサ40は、iPhone(登録商標)4の電源キー10が起動されたと判断した場合、プロセッサ40は、PC6のディスプレイ44に、電源キー10のグラフィカル表現を、
図2Aに示す黄色のドットまたは円52から
図2Bに示すような緑色のドットまたは円51に更新させて、iPhone(登録商標)4のOSが電源キー10の起動を検出したことと、したがって電源キー10が正しく機能していることとを表わさせる。
【0050】
より具体的には、PC6のプロセッサ40がコンピュータプログラム46を実行すると、プロセッサ40は、iPhone(登録商標)4のリングバッファ32に格納されているデバッグログ34から情報を複数の異なる瞬間に繰り返し読み出すが、ここで、あらゆる2つの連続する瞬間は、iPhone(登録商標)4のOSが、リングバッファ32に格納されているデバッグログ34に、情報を、プロセッサ40がこの情報を読み出すことができる前に上書きすることを防ぐような十分に小さい時間によって分離されている。具体的には、PC6のプロセッサ40がコンピュータプログラム46を実行すると、プロセッサ40は、「idevicesyslog」コマンドを実行することにより、iPhone(登録商標)4のリングバッファ32に格納されているデバッグログ34の内容を取得する。プロセッサ40は、リングバッファ32に格納されているデバッグログ34からある瞬間に読み出す情報であって、前の瞬間にプロセッサ40がデバッグログ34から読み出す情報に対して新規または追加となる情報のみを読み出す。このように進めることにより、プロセッサ40がデバッグログ34全体を各瞬間に繰り返し読み出す必要がなくなる。プロセッサ40は、デバッグログ34から繰り返し読み出される情報を使用して、ハードウェア要素10,12,13,14,16,18,22,24のそれぞれのイベント履歴を含むiPhone(登録商標)4のイベント履歴を構築して維持する。iPhone(登録商標)4のイベント履歴は、コンピュータプログラム46の実行中にiPhone(登録商標)4のOSが遭遇または発生したいかなるエラーまたは警告も含んでいてもよい。
【0051】
プロセッサ40は、イベント履歴を繰り返し検索して、各ハードウェア要素10,12,13,14,16,18,22,24の状態、起動および/または動作のうちの少なくとも1つに関連付けられた1つ以上の文字、1つ以上の記号、1つ以上のキーワード、または1つ以上のコマンドを含むイベント履歴のあらゆるエントリ、部分、またはコードの行を特定する。例えば、プロセッサ40は、iPhone(登録商標)4のハードウェア要素10,12,13,14,16,18,22,24のそれぞれに対して「grep」コマンドを繰り返し実行し、イベント履歴を繰り返し検索して、各ハードウェア要素10,12,13,14,16,18,22,24の状態、起動および/または動作のうちの少なくとも1つに関連付けられた1つ以上の文字、1つ以上の記号、1つ以上のキーワード、または1つ以上のコマンドを含むイベント履歴のあらゆるエントリ、部分、またはコードの行を特定する。プロセッサ40は、各ハードウェア要素10,12,13,14,16,18,22,24の状態を、検索中に特定されたイベント履歴の対応するエントリ、部分、またはコードの行から、繰り返し判断する。例えば、プロセッサ40は、各ハードウェア要素10,12,13,14,16,18,22,24の状態を、検索中に特定されたイベント履歴の対応するコードの行を繰り返し解析することによって、繰り返し判断する。プロセッサ40は、各ハードウェア要素10,12,13,14,16,18,22,24の判断された状態に応じて、PC6のディスプレイ44に、各ハードウェア要素10,12,13,14,16,18,22,24のグラフィカル表現を含むiPhone(登録商標)4のグラフィカル表現50を繰り返し更新させる。
図2Bに対応する瞬間において、
図2Aに対応する瞬間に対して状態が変化した唯一のハードウェア要素10,12,13,14,16,18,22,24は電源キー10であり、プロセッサ40は、PC6のディスプレイ44に、電源キー10のグラフィカル表現を、
図2Aに示す黄色のドットまたは円52から
図2Bに示す緑色のドットまたは円51に更新させて、iPhone(登録商標)4のOSが電源キー10の起動を検出したことと、したがって電源キー10が正しく機能していることとを表わさせる。
【0052】
次に
図3Aを参照すると、iPhone(登録商標)4のホーム/タッチIDボタン12、電源キー10、音量ダウンボタン14、音量アップボタン16、およびサイレントモードスイッチ18の起動後だが、近接センサ22およびタッチスクリーン24の起動前に、PC6のディスプレイ44の前に保持されたiPhone(登録商標)4を示しているのに対し、
図3Bは、ホーム/タッチIDボタン12、電源キー10、音量ダウンボタン14、音量アップボタン16、サイレントモードスイッチ18および近接センサ22の起動後だが、タッチスクリーン24の起動前に、PC6のディスプレイ44の前に保持されたiPhone(登録商標)4を示している。
図3Aに示すように、ホーム/タッチIDボタン12、電源キー10、音量ダウンボタン14、音量アップボタン16、およびサイレントモードスイッチ18のそれぞれは、対応する緑色のドットまたは円51によってグラフィカルに表現されて、これらのハードウェア要素が既に起動されていることを表わすのに対し、近接センサ22は、黄色のドットまたは円52によってグラフィカルに表現されて、近接センサ22がまだ起動されていないことを表わす。同様に、タッチスクリーン24は、黄色のドットまたは円52のグループによってグラフィカルに表現されて、タッチスクリーン24の対応する領域がまだ起動されていないことを表わす。
【0053】
PC6のプロセッサ40がコンピュータプログラム46を実行すると、プロセッサ40は、iPhone(登録商標)4のリングバッファ32に格納されているデバッグログ34から情報を繰り返し読み出す。プロセッサ40は、デバッグログ34から読み出した情報を使用して、iPhone(登録商標)4のイベント履歴を構築して維持する。プロセッサ40は、ハードウェア要素10,12,13,14,16,18,22,24の状態をイベント履歴に基づいて判断し、PC6のディスプレイ44上に表示されているiPhone(登録商標)4のグラフィカル表現50を、判断に応じて更新する。例えば、プロセッサ40は、iPhone(登録商標)4の近接センサ22が起動されたと判断した場合、プロセッサ40は、PC6のディスプレイ44に、近接センサ22のグラフィカル表現を、
図3Aに示す黄色のドットまたは円52から、
図3Bに示すような緑の色のドットまたは円51に更新させて、iPhone(登録商標)4のOSが近接センサ22の起動を検出したことと、ひいては、近接センサ22が正常に機能していることとを表わさせる。当業者は、
図2Aおよび
図2Bを参照して前述したような、プロセッサ40がiPhone(登録商標)4の電源キー10が起動されたとイベント履歴に基づいて判断するのと同じ方法で、プロセッサ40はiPhone(登録商標)4の近接センサ22が起動されたとイベント履歴に基づいて判断することを理解するであろう。
【0054】
同様に、
図4A、
図4Bおよび
図4Cは、iPhone(登録商標)4のタッチスクリーン24の異なる領域の順次起動と、PC6のプロセッサ40によるタッチスクリーン24の異なる領域の起動の検出と、プロセッサ40がPC6のディスプレイ44上のiPhone(登録商標)4のグラフィカル表現50を更新して、PC6のディスプレイ44上のiPhone(登録商標)4のハードウェア要素10,12,13,14,16,18,22,24のライブ状態を示している様子とを図示している。当業者は、
図2Aおよび
図2Bを参照して前述したような、プロセッサ40がiPhone(登録商標)4の電源キー10が起動されたとイベント履歴に基づいて判断するのと同じ方法で、プロセッサ40はiPhone(登録商標)4のタッチスクリーン24の異なる領域が起動されたと判断することを理解するであろう。
【0055】
図5A、
図5Bおよび
図5Cは、iPhone(登録商標)4を「縦向き」から「横向き」に約90゜回転させることによるiPhone(登録商標)4の加速度計13の起動と、PC6のプロセッサ40による加速度計13の起動の検出と、プロセッサ40がPC6のディスプレイ44上のiPhone(登録商標)4のグラフィカル表現50を更新して、PC6のディスプレイ44上のiPhone(登録商標)4のハードウェア要素10,12,14,16,18,22,24のライブ状態を、PC6のディスプレイ44上のiPhone(登録商標)4のライブの向きと共に示している様子と、を図示している。
図5Aは、iPhone(登録商標)4が「縦向き」の状態でiPhone(登録商標)4のハードウェア要素10,12,14,16,18,22,24が起動された後の、iPhone(登録商標)4とPC6のディスプレイ44上のiPhone(登録商標)4のグラフィカル表現50とを示す。
図5Bは、iPhone(登録商標)4のハードウェア要素10,12,14,16,18,22,24が起動された後だがiPhone(登録商標)4の向きが「横向き」にされた直後の、iPhone(登録商標)4とPC6のディスプレイ44上のiPhone(登録商標)4のグラフィカル表現50とを示す。
図5Bに対応する瞬間では、PC6のプロセッサ40は、PC6のディスプレイ44上のiPhone(登録商標)4のグラフィカル表現50を更新するための十分な時間をまだ有していない。
図5Cは、
図5Bに対応する瞬間の直後の瞬間であって、iPhone(登録商標)4のハードウェア要素10,12,14,16,18,22,24が起動された後であって、iPhone(登録商標)4の向きが「横向き」にされた後であって、且つPC6のディスプレイ44上のiPhone(登録商標)4のグラフィカル表現50が更新された後だが、iPhone(登録商標)4のタッチスクリーン24上に表示されている画像の「縦向き」から「横向き」への向きの変更が完了する前の瞬間における、iPhone(登録商標)4とPC6のディスプレイ44上のiPhone(登録商標)4のグラフィカル表現50とを示す。当業者は、
図2Aおよび
図2Bを参照して前述したような、プロセッサ40がiPhone(登録商標)4の電源キー10が起動されたとイベント履歴に基づいて判断するのと本質的に同じ方法で、プロセッサ40は、iPhone(登録商標)4の「縦向き」から「横向き」への向きの変更をiPhone(登録商標)4の加速度計13が検出したと、デバッグログ34から読み出した情報に基づいて判断することを理解するであろう。さらに、
図5Cから理解され得るように、プロセッサ40は、iPhone(登録商標)4の「縦向き」から「横向き」への向きの変更をiPhone(登録商標)4の加速度計13が検出したと判断すると、iPhone(登録商標)4のタッチスクリーン24上に表示されている画像の「縦」から「横」への向きの変更を完了する時間さえないほど速く、PC6のディスプレイ44上のiPhone(登録商標)4のグラフィカル表現50を更新する。こうして、iPhone(登録商標)4の状態を判断する方法のリアルタイム性を図示している。
【0056】
前述していないが、当業者は、プログラム46がプロセッサ40によって実行されると、プロセッサ40は、ハードウェア要素10,12,13,14,16,18,22,24のいずれかの状態、起動および/または動作を検出し、
図2A-
図5Cを参照して前述した方法と本質的に同一の方法を使用してPC6のディスプレイ44上のiPhone(登録商標)4のグラフィカル表現50を適宜更新してもよいと理解するであろう。
【0057】
このようにして、プロセッサ40は、ハードウェア要素10,12,13,14,16,18,22,24のいずれかが所定の態様で動作しているか否かを判断し得る。例えば、プロセッサ40は、ハードウェア要素10,12,13,14,16,18,22,24のいずれかが、ハードウェア要素の正しい動作、通常の動作、期待される動作、デフォルトの動作、および所望の動作のうちの少なくとも1つ、および/または1つ以上の所定の基準に準拠したハードウェア要素の動作に対応する所定の態様で動作しているか否かを判断してもよい。これらの方法は、ハードウェア要素10,12,13,14,16,18,22,24のいずれかの故障または問題を診断するために有用であり得る。
【0058】
プロセッサ40は、iPhone(登録商標)4が所定の態様で動作しているか否かを判断してもよい。例えば、プロセッサ40は、iPhone(登録商標)4が、iPhone(登録商標)4の正しい動作、通常の動作、期待される動作、デフォルトの動作、および所望の動作のうちの少なくとも1つ、および/または1つ以上の所定の基準に準拠したiPhone(登録商標)4の動作に対応する所定の態様で動作しているか否かを判断してもよい。これらの方法は、iPhone(登録商標)4の故障または問題を診断するために有用であり得る。
【0059】
図2A-
図5Cを参照して前述したiPhone(登録商標)4の状態を判断する際に使用するための方法は、iPhone(登録商標)4上での診断アプリケーションのインストールおよび/または実行の必要がなく、したがって、例えばiPhone(登録商標)4上で利用可能なメモリの不足の結果として、iPhone(登録商標)4上での診断アプリケーションのインストールおよび/または実行が技術的に可能ではない場合でも使用することができると理解されるべきである。前述した方法によって、携帯電子デバイスのOSからOSのAPIを介して間接的に情報を受信するあらゆる必要性を回避し得る。加えて、または代替として、前述した方法によって、iPhone(登録商標)4の製造業者および/またはiPhone(登録商標)4のOSの製造業者によって課されるあらゆる制限であって、iPhone(登録商標)4上でのサードパーティ診断アプリケーションのインストールおよび/または実行を禁止し得る制限を回避し得る。さらに、前述した方法は、iPhone(登録商標)4が、1つ以上の壊れたコントロール、1つ以上の壊れた押しボタン、壊れたタッチスクリーン、および/または1つ以上の壊れたセンサを有していることによって、iPhone(登録商標)4のユーザが診断アプリケーションにナビゲートすることまたは診断アプリケーションを実行することができなかったり、および/またはiPhone(登録商標)4のユーザがiPhone(登録商標)4からの指示を入力および/または受信することができない場合でも、依然として適用することができる。
【0060】
図2A-
図5Cを参照して前述したiPhone(登録商標)4の状態を判断する際に使用するための方法の変形例では、プロセッサ40は、PC6のディスプレイ44に、iPhone(登録商標)4に関連して1つ以上のアクションを行うようにiPhone(登録商標)4のユーザを案内または促すための情報を表示させてもよい。例えば、プロセッサ40は、PC6のディスプレイ44に、iPhone(登録商標)4の入力要素を起動または操作するようにiPhone(登録商標)4のユーザを案内または促すための情報を表示させてもよい。本方法は、PC6のディスプレイ44が、iPhone(登録商標)4に関連して1つ以上のアクションを行うようにユーザを案内または促すための情報を表示した後に、iPhone(登録商標)4のリングバッファ32に格納されているデバッグログ34から情報を繰り返し読み出すことを含んでいてもよい。本方法は、デバッグログ34から読み出した情報を使用して、iPhone(登録商標)4のイベント履歴を構築して維持することを含んでいてもよい。本方法は、iPhone(登録商標)4に関連して1つ以上のアクションが行われたかどうかをイベント履歴に基づいて判断することを含んでもよい。
【0061】
プロセッサ40は、PC6のディスプレイ44に、iPhone(登録商標)4に関連して複数のアクションを順次行うようにiPhone(登録商標)4のユーザを案内または促す情報を順次表示させてもよい。本方法は、PC6のディスプレイ44がiPhone(登録商標)4に関連して複数のアクションのそれぞれ1つを行うようにユーザを案内または促すための情報を表示した後に、iPhone(登録商標)4のリングバッファ32に格納されているデバッグログ34から情報を繰り返し読み出すことを含んでいてもよい。本方法は、iPhone(登録商標)4に関連して複数のアクションのそれぞれ1つが行われたかどうかをイベント履歴に基づいて判断することを含んでもよい。
【0062】
当業者は、前述したシステムおよび方法の様々な変形形態が可能であることを理解するであろう。例えば、前述した方法はiPhone(登録商標)に照らして説明したが、同じ方法は、あらゆる種類の携帯電子デバイスに、例えば、他の型、種類またはメーカーの携帯電話またはスマートフォンに、タブレットに、および/またはラップトップに適用されてもよいと理解されるべきである。特に、同じ方法は、iOS(登録商標)オペレーティングシステム以外のオペレーティングシステムを走らせる携帯電子デバイスに適用されてもよいと理解されるべきである。例えば、同じ方法は、Android(登録商標)オペレーティングシステムを走らせる携帯電子デバイスに適用されてもよい。
【0063】
本方法は、携帯電子デバイスのオペレーティングシステムが携帯電子デバイスのリングバッファに格納されているデバッグログに書き込む、携帯電子デバイスの動作に関する情報の詳細度を高めるように、携帯電子デバイスを設定、制御または有効化することを含んでもよい。
【0064】
本方法は、携帯電子デバイスのオペレーティングシステムに冗長ロギングを行わせるように、携帯電子デバイスを設定、制御または有効化することを含んでもよい。
【0065】
携帯電子デバイスは、iOS(登録商標)デバイスまたはiOS(登録商標)オペレーティングシステムを含んでもよい。本方法は、携帯電子デバイスが通常モードであるときにsyslogリレーサービスを使用することを含んでもよい。
【0066】
携帯電子デバイスは、Android(登録商標)デバイスまたはAndroid(登録商標)オペレーティングシステムを含んでもよい。本方法は、USBデバッグを有効化することを含んでもよい。
【0067】
携帯電子デバイスは、前述したハードウェア要素よりも多いまたは少ないハードウェア要素を含んでもよい。例えば、携帯電子デバイスは、マイクロフォン、画像センサ、およびスピーカのうちの少なくとも1つを含んでもよい。
【0068】
当業者は、図面を参照して前述した本開示の諸実施形態の特徴の1つ以上が、本開示の諸実施形態の他の特徴の1つ以上から分離して使用される場合に効果を生じたり、または利点を提供し得ることと、前述した本開示の諸実施形態の特定の特徴の組み合わせ以外の異なる特徴の組み合わせが可能であることとを理解するであろう。
【手続補正書】
【提出日】2021-11-03
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
携帯電子デバイスの状態を判断する際に使用するための方法であって、
前記携帯電子デバイスのリングバッファに格納されているデバッグログから情報を繰り返し読み出すことと、
前記デバッグログから読み出した前記情報を繰り返し使用して前記携帯電子デバイスのイベント履歴を構築して維持することと、
前記イベント履歴に基づいて前記携帯電子デバイスの前記状態を繰り返し判断することとを含
み、
前記方法の諸ステップが、前記携帯電子デバイス上に診断アプリケーションを最初にインストールせずに実行される方法。
【請求項2】
請求項1に記載の方法において、前記携帯電子デバイスの前記状態を繰り返し判断することは、前記携帯電子デバイスが所定の態様で動作しているか否かを繰り返し判断することを含む方法。
【請求項3】
請求項2に記載の方法において、前記所定の態様での前記携帯電子デバイスの前記動作は、前記携帯電子デバイスの正しい動作、通常の動作、期待される動作、デフォルトの動作、および所望の動作のうちの
1つ、および/または1つ以上の所定の基準に準拠した前記携帯電子デバイスの動作に対応する方法。
【請求項4】
前記請求項のいずれかに記載の方法において、前記リングバッファに格納されている前記デバッグログから複数の異なる瞬間に情報を読み出すことを含み、ここで、あらゆる2つの連続する瞬間は、前記携帯電子デバイスのオペレーティングシステムが、前記リングバッファに格納されている前記デバッグログに、情報を、前記情報を読み出せる前に上書きすることを回避するような十分に小さい時間によって分離されている方法。
【請求項5】
前記請求項のいずれかに記載の方法において、一定間隔で前記デバッグログから情報を繰り返し読み出すことを含む方法。
【請求項6】
前記請求項のいずれかに記載の方法において、前記リングバッファに格納されている前記デバッグログからある瞬間に読み出す情報であって、前の瞬間に前記デバッグログから読み出された前記情報に対して新規または追加となる情報のみを読み出すことを含む方法。
【請求項7】
前記請求項のいずれかに記載の方法において、
前記携帯電子デバイスのハードウェア要素の前記状態、前記起動および/または前記動作のうちの少なくとも1つに関連付けられた前記イベント履歴の1つ以上のエントリまたは部分を繰り返し特定することと、
前記特定された前記イベント履歴の1つ以上のエントリまたは部分に基づいて、前記ハードウェア要素の前記状態を繰り返し判断することとを含む方法。
【請求項8】
請求項7に記載の方法において、前記ハードウェア要素の前記状態、前記起動および/または前記動作のうちの少なくとも1つに関連付けられた前記イベント履歴の前記1つ以上のエントリまたは部分を繰り返し特定することは、前記ハードウェア要素の前記状態、前記起動および/または前記動作のうちの少なくとも1つに関連付けられた1つ以上の文字、1つ以上の記号、1つ以上のキーワード、および1つ以上のコマンドのうちの少なくとも1つを求めて、前記イベント履歴を繰り返し検索することを含む方法。
【請求項9】
請求項7または8に記載の方法において、
前記特定された前記イベント履歴の1つ以上のエントリまたは部分を繰り返し解析することと、
前記解析された前記イベント履歴の1つ以上のエントリまたは部分に基づいて、前記ハードウェア要素の前記状態を繰り返し判断することとを含む方法。
【請求項10】
請求項7から9のいずれか一項に記載の方法において、前記ハードウェア要素の前記状態を判断することは、前記ハードウェア要素が所定の態様で動作しているか否かを判断することを含む方法。
【請求項11】
請求項10に記載の方法において、前記所定の態様での前記ハードウェア要素の前記動作は、前記ハードウェア要素の正しい動作、通常の動作、期待される動作、デフォルトの動作、および所望の動作のうちの少なくとも1つ、および/または1つ以上の所定の基準に準拠した前記ハードウェア要素の動作に対応する方法。
【請求項12】
請求項7から11のいずれか一項に記載の方法において、前記ハードウェア要素は、トランスデューサ、コンポーネント、デバイス、入力要素、出力要素、コントロール、押しボタン、ノブ、スイッチ、キー、キーボード、キーパッド、センサ、加速度計、画像センサ、マイクロフォン、近接センサ、運動センサ、ユーザインタフェース、タッチスクリーン、インジケータ、ディスプレイ、およびスピーカのうちの少なくとも1つを含む方法。
【請求項13】
前記請求項のいずれかに記載の方法において、前記携帯電子デバイスのオペレーティングシステムが、前記携帯電子デバイスの前記動作に関する情報を、前記携帯電子デバイスの前記リングバッファに格納されている前記デバッグログに書き込むように、前記携帯電子デバイスを設定、制御または有効化することを含む方法。
【請求項14】
前記請求項のいずれかに記載の方法において、
前記携帯電子デバイスの前記オペレーティングシステムが前記携帯電子デバイスの前記リングバッファに格納されている前記デバッグログに書き込む、前記携帯電子デバイスの前記動作に関連する前記情報の詳細度を高めるように、前記携帯電子デバイスを設定、制御または有効化すること、および/または、
前記携帯電子デバイスの前記オペレーティングシステムに冗長ロギングを行わせるように、前記携帯電子デバイスを設定、制御または有効化することを含む方法。
【請求項15】
前記請求項のいずれかに記載の方法において、前記携帯電子デバイスはiOSデバイスまたはiOSオペレーティングシステムを含み、前記方法は、前記携帯電子デバイスが通常モードであるときにsyslogリレーサービスを使用することを含む方法。
【請求項16】
前記請求項のいずれかに記載の方法において、前記携帯電子デバイスはAndroidデバイスまたはAndroidオペレーティングシステムを含み、前記方法は、USBデバッグを有効化することを含む方法。
【請求項17】
前記請求項のいずれかに記載の方法において、前記携帯電子デバイスの外部にある外部処理リソースを使用して、前記携帯電子デバイスの前記リングバッファに格納されている前記デバッグログから情報を繰り返し読み出すことを含む方法。
【請求項18】
請求項17に記載の方法において、前記外部処理リソースを使用して、前記携帯電子デバイスの外部にある外部ディスプレイに、前記携帯電子デバイスの前記判断された状態を表現する情報を繰り返し表示させることを含む方法。
【請求項19】
請求項18に記載の方法において、前記外部処理リソースを使用して、前記外部ディスプレイに、前記携帯電子デバイスに関連して1つ以上のアクションを行うように前記携帯電子デバイスのユーザを案内または促すための情報を表示させることを含む方法であって、例えば、前記携帯電子デバイスに関連して行われるべき1つ以上のアクションは、前記携帯電子デバイスの入力要素を起動または操作することを含む方法。
【請求項20】
請求項18または19に記載の方法において、
前記携帯電子デバイスに関連して1つ以上のアクションを行うように前記ユーザを案内または促すための前記情報を前記外部ディスプレイが表示した後に、前記携帯電子デバイスの前記リングバッファに格納されている前記デバッグログから情報を繰り返し読み出すことと、
前記デバッグログから読み出した前記情報を繰り返し使用して、前記携帯電子デバイスのイベント履歴を構築して維持することと、
前記携帯電子デバイスに関連して前記1つ以上のアクションが行われたかどうかを前記イベント履歴に基づいて繰り返し判断することとを含む方法。
【請求項21】
請求項18から20のいずれか一項に記載の方法において、前記外部処理リソースを使用して、前記外部ディスプレイに、前記携帯電子デバイスに関連して複数のアクションを順次行うように前記携帯電子デバイスのユーザを案内または促す情報を前記外部ディスプレイ上に順次表示させることを含む方法。
【請求項22】
請求項21に記載の方法において、
前記携帯電子デバイスに関連して前記複数のアクションのそれぞれ1つを行うように前記ユーザを案内または促すための前記情報を前記外部ディスプレイが表示した後に、前記携帯電子デバイスの前記リングバッファに格納されている前記デバッグログから情報を繰り返し読み出すことと、
前記デバッグログから読み出した前記情報を繰り返し使用して、前記携帯電子デバイスのイベント履歴を構築して維持することと、
前記携帯電子デバイスに関連して前記複数のアクションのそれぞれ1つが行われたかどうかを、前記デバッグログから読み出した前記情報に基づいて繰り返し判断することとを含む方法。
【請求項23】
前記請求項のいずれかに記載の方法において、前記携帯電子デバイスは、携帯電話、スマートフォン、タブレット、またはラップトップを含む方法。
【請求項24】
携帯電子デバイスの状態を判断する際に使用するためのシステムであって、前記システムは、前記携帯電子デバイスの外部にある外部処理リソースを備え、前記外部処理リソースは、前記携帯電子デバイスと通信するように構成されており、且つ前記いずれかの請求項の方法を行うように構成されているシステム。
【請求項25】
携帯電子デバイスの状態を判断する際に使用するためのコンピュータプログラムであって、前記コンピュータプログラムは、前記携帯電子デバイスの外部にある外部処理リソースによって実行されると、前記外部処理リソースが請求項1から23のいずれか一項の方法を行うように構成されているコンピュータプログラム。
【国際調査報告】