本願は、バックグラウンドアプリケーションプログラムによって引き起こされる端末の比較的高い電力消費の問題を解消するべく、端末の電力消費を低減するための方法、および端末を提供する。
上記の目的を達成するために、以下の技術的解決手段が本願において用いられる。
第1態様によれば、本願は、端末の電力消費を低減するための方法を提供し、当該方法は、端末のバックグラウンド電力消費電流値が予め設定された電流値より大きいとき、端末が、バックグラウンド電力消費電流値を低減するようターゲットアプリケーションプログラムを制御する段階を備え、ここで、バックグラウンド電力消費電流値は、端末上のバックグラウンドアプリケーションプログラム全部の電力消費電流値の和である。ターゲットアプリケーションプログラムは、以下のアプリケーションプログラム、すなわち、使用頻度が予め設定された頻度閾値より低いバックグラウンドアプリケーションプログラム、電力消費が予め設定された電力消費閾値より大きいバックグラウンドアプリケーションプログラム、異常な電力消費を有するバックグラウンドアプリケーションプログラムのうち少なくとも1つまたは複数を含む。
バックグラウンド電力消費電流値は、端末上のバックグラウンドアプリケーションプログラム全部の電力消費の和を反映できるので、端末は、バックグラウンド電力消費電流値を予め設定された電流値と比較することによって、バックグラウンドアプリケーションプログラム全部の電力消費の和が期待値を超えるかどうかを決定できる。このように、バックグラウンド電力消費電流値が予め設定された電流値より大きい(すなわち、バックグラウンドアプリケーションプログラム全部の電力消費の和が期待値を超える)とき、端末は、適時にこの状況を知り、バックグラウンド電力消費電流値を低減するようターゲットアプリケーションプログラム制御することができる。したがって、バックグラウンドアプリケーションプログラム全部の電力消費の和が期待値を超える状況の時間長が非常に短く、その結果、バックグラウンドアプリケーションプログラム全部の電力消費の和は通常、期待値より低いままである。通常、バックグラウンドアプリケーションプログラムの電力消費は、端末の不要な電力消費である。本願の解決手段によれば、バックグラウンドアプリケーションプログラム全部の電力消費の和は通常、期待値より低いままであり、すなわち、端末の不要な電力消費は低減される。
使用頻度が予め設定された頻度閾値より低いバックグラウンドアプリケーションプログラムは、ユーザによって頻繁に使用されないアプリケーションプログラムであると理解できる。通常、そのようなアプリケーションプログラムは、ユーザがバックグラウンドで動作させ続けたいアプリケーションプログラムではない。したがって、端末によってそのようなアプリケーションプログラムを制御することは、通常、ユーザエクスペリエンスに対して悪影響を与えない。
電力消費が予め設定された電力消費閾値より大きいバックグラウンドアプリケーションプログラムは、比較的高い電力消費を有するアプリケーションプログラムであると理解できる。したがって、そのようなアプリケーションプログラムを制御することによって、端末は、短い時間で端末の電力消費を低減できる。
任意選択で、異常な電力消費を有するバックグラウンドアプリケーションプログラムは、電力消費電流値が対応する最大電力消費電流値より大きいバックグラウンドアプリケーションプログラムである。
第1態様の可能な実装において、端末がターゲットアプリケーションプログラムを制御する前に、方法は更に、端末が、クラウドサーバによってプッシュされた、または、ローカル統計から生成された予め設定された規則を取得する段階であって、予め設定された規則は、各アプリケーションプログラムに対応する最大電力消費電流値を含む、段階と、端末が、予め設定された規則に従って、少なくとも1つのバックグラウンドアプリケーションプログラムから、異常な電力消費を有するバックグラウンドアプリケーションプログラムを識別する段階とを備える。
任意選択で、ターゲットアプリケーションプログラムは更に、ユーザ感知タスクを動作させないバックグラウンドアプリケーションプログラムを含む。
任意選択で、ユーザ感知タスクは、以下のタスク、すなわち、健全性試験タスク、ファイルダウンロードタスク、モーション検出タスク、音声再生タスクのうち少なくともいずれか1つを含む。
バックグラウンドアプリケーションプログラムがユーザ感知タスクを動作させないとき、ユーザは、バックグラウンドアプリケーションプログラムがクリーニングされるかどうかを認識できない。したがって、ユーザ感知タスクを動作させないバックグラウンドアプリケーションプログラムをクリーニングすることは、ユーザエクスペリエンスに影響を与えない。したがって、実際の適用において、端末は、ユーザ感知タスクを動作させるバックグラウンドアプリケーションプログラムを維持し、ユーザ感知タスクを動作させないバックグラウンドアプリケーションプログラムをクリーニングし、それにより、ユーザエクスペリエンスに影響を与えることなく端末の電力消費を低減する。
第1態様の可能な実装において、端末は、予め設定された時間間隔でバックグラウンド電力消費電流値を検出する。
第1態様の可能な実装において、端末は、画面上にバックグラウンド電力消費電流値を表示し、その結果、ユーザは、適時にバックグラウンドアプリケーションプログラムをクリーニングするために、バックグラウンド電力消費電流値を知ることができる。
第1態様の可能な実装において、端末が、ターゲットアプリケーションプログラムを制御する段階の後に、方法は、バックグラウンド電力消費電流値が予め設定された電流値より大きい場合、端末が、予め設定された時間間隔を短縮する段階を更に備える。これにより、端末がバックグラウンドアプリケーションプログラムを制御する頻度が増加し、その結果、バックグラウンド電力消費電流値を短い時間で低減させることができ、それにより、端末の電力消費を低減する。
第1態様の可能な実装において、端末が、ターゲットアプリケーションプログラムを制御する段階は、具体的には、端末がターゲットアプリケーションプログラムをクリーニングする段階、または、端末が、ターゲットアプリケーションプログラムを制限する段階を備える。具体的には、端末がターゲットアプリケーションプログラムを制限する任意選択の実装は、ターゲットアプリケーションプログラムがネットワーク接続を使用すること、ターゲットアプリケーションプログラムのwakelockをブロックすること、または、ターゲットアプリケーションプログラムのタスクを一時停止することを禁止することを含む。
第1態様の可能な実装において、端末が、予め設定された時間間隔でバックグラウンド電力消費電流値を検出する前に、方法は、端末が、現在の電池残量に基づいて予め設定された電流値を決定する段階を更に備える。本願のいくつかの実施形態において、現在の電池残量は、予め設定された電流値と正の相関がある。言い換えれば、現在の電池残量が低いことは、予め設定された電流値が小さいことを示す。このように、現在の電池残量が比較的低いとき、端末は、バックグラウンドアプリケーションプログラムに対する制御を強化し、その結果、バックグラウンド電流値は比較的小さく、それにより、端末の電力消費を低減する。
任意選択で、端末がactive状態にあるとき、予め設定された電流値は第1電流値であり、端末がidle状態にあるとき、予め設定された電流値は第2電流値であり、ここで、第1電流値は第2電流値より大きい。
第1態様の可能な実装において、端末のバックグラウンド電力消費電流値が予め設定された電流値より大きいとき、端末は、画面上にプロンプト情報を表示し、ここで、プロンプト情報は、少なくとも1つのターゲットアプリケーションプログラムを制御するためのプロンプトを表示するために使用され、プロンプト情報に従ってユーザによって実行される操作の検出に応答して、端末は、1つのターゲットアプリケーションプログラムを制御する。
第2態様によれば、本願は、処理モジュールを含む端末を提供し、当該処理モジュールは、端末のバックグラウンド電力消費電流値が予め設定された電流値より大きいとき、バックグラウンド電力消費電流値を低減するようターゲットアプリケーションプログラムを制御するよう構成され、ここで、バックグラウンド電力消費電流値は、端末上のバックグラウンドアプリケーションプログラム全部の電力消費電流値の和である。ターゲットアプリケーションプログラムは、以下のアプリケーションプログラム、すなわち、使用頻度が予め設定された頻度閾値より低いバックグラウンドアプリケーションプログラム、電力消費が予め設定された電力消費閾値より大きいバックグラウンドアプリケーションプログラム、異常な電力消費を有するバックグラウンドアプリケーションプログラムのうち少なくとも1つまたは複数を含む。
任意選択で、異常な電力消費を有するバックグラウンドアプリケーションプログラムは、電力消費電流値が対応する最大電力消費電流値より大きいバックグラウンドアプリケーションプログラムである。
第2態様の可能な実装において、通信モジュールは、クラウドサーバによってプッシュされた、または、ローカル統計から生成された、予め設定された規則を取得するよう構成され、ここで、予め設定された規則は、各アプリケーションプログラムに対応する最大電力消費電流値を含む。処理モジュールは更に、予め設定された規則に従って、少なくとも1つのバックグラウンドアプリケーションプログラムから、異常な電力消費を有するバックグラウンドアプリケーションプログラムを識別するよう構成される。
任意選択で、ターゲットアプリケーションプログラムは更に、ユーザ感知タスクを動作させないバックグラウンドアプリケーションプログラムを含む。
任意選択で、ユーザ感知タスクは、以下のタスク、すなわち、健全性試験タスク、ファイルダウンロードタスク、モーション検出タスク、音声再生タスクのうち少なくともいずれか1つを含む。
第2態様の可能な実装において、処理モジュールは更に、予め設定された時間間隔でバックグラウンド電力消費電流値を検出するよう構成される。
第2態様の可能な実装において、端末は表示モジュールを更に含む。表示モジュールは、画面上にバックグラウンド電力消費電流値を表示するよう構成される。
第2態様の可能な実装において、処理モジュールは更に、バックグラウンド電力消費電流値が予め設定された電流値より大きいとき、予め設定された時間間隔を短縮するよう構成される。
第2態様の可能な実装において、処理モジュールは具体的には、ターゲットアプリケーションプログラムをクリーニングする、または、ターゲットアプリケーションプログラムを制限するよう構成される。
第2態様の可能な実装において、処理モジュールは更に、現在の電池残量に基づいて、予め設定された電流値を決定するよう構成される。
任意選択で、端末がactive状態にあるとき、予め設定された電流値は第1電流値であり、端末がidle状態にあるとき、予め設定された電流値は第2電流値であり、ここで、第1電流値は第2電流値より大きい。
第2態様の可能な実装において、表示モジュールは更に、端末のバックグラウンド電力消費電流値が予め設定された電流値より大きいとき、画面上にプロンプト情報を表示するよう構成され、プロンプト情報は、少なくとも1つのターゲットアプリケーションプログラムを制御するためのプロンプトを表示するために使用される。処理モジュールは更に、プロンプト情報に従ってユーザによって実行される操作の検出に応答して、少なくとも1つのターゲットアプリケーションプログラムを制御するよう構成される。
第3態様によれば、本願は、ディスプレイ、プロセッサ、メモリ、バスおよび通信インタフェースを含む端末を提供する。メモリは、コンピュータ実行可能命令を格納するよう構成される。ディスプレイ、プロセッサ、メモリはバスを使用することによって接続される。端末が動作するとき、プロセッサは、メモリに格納されたコンピュータ実行可能命令を実行し、その結果、端末は、以下の段階を実行する。プロセッサは、端末のバックグラウンド電力消費電流値が予め設定された電流値より大きいとき、バックグラウンド電力消費電流値を低減するようターゲットアプリケーションプログラムを制御するよう構成され、ここで、バックグラウンド電力消費電流値は、端末上のバックグラウンドアプリケーションプログラム全部の電力消費電流値の和である。ターゲットアプリケーションプログラムは、以下のアプリケーションプログラム、すなわち、使用頻度が予め設定された頻度閾値より低いバックグラウンドアプリケーションプログラム、電力消費が予め設定された電力消費閾値より大きいバックグラウンドアプリケーションプログラム、異常な電力消費を有するバックグラウンドアプリケーションプログラムのうち少なくとも1つまたは複数を含む。
任意選択で、異常な電力消費を有するバックグラウンドアプリケーションプログラムは、電力消費電流値が対応する最大電力消費電流値より大きいバックグラウンドアプリケーションプログラムである。
第3態様の可能な実装において、通信インタフェースは、クラウドサーバによってプッシュされた、または、ローカル統計から生成された予め設定された規則を取得するよう構成され、ここで、予め設定された規則は、各アプリケーションプログラムに対応する最大電力消費電流値を含む。プロセッサは、予め設定された規則に従って、少なくとも1つのバックグラウンドアプリケーションプログラムから、異常な電力消費を有するバックグラウンドアプリケーションプログラムを識別するよう構成される。
任意選択で、ターゲットアプリケーションプログラムは更に、ユーザ感知タスクを動作させないバックグラウンドアプリケーションプログラムを含む。
任意選択で、ユーザ感知タスクは、以下のタスク、すなわち、健全性試験タスク、ファイルダウンロードタスク、モーション検出タスク、音声再生タスクのうち少なくともいずれか1つを含む。
第3態様の可能な実装において、プロセッサは更に、予め設定された時間間隔でバックグラウンド電力消費電流値を検出するよう構成される。
第3態様の可能な実装において、ディスプレイは、画面上にバックグラウンド電力消費電流値を表示するよう構成される。
第3態様の可能な実装において、プロセッサは更に、バックグラウンド電力消費電流値が予め設定された電流値より大きいとき、予め設定された時間間隔を短縮するよう構成される。
第3態様の可能な実装において、プロセッサは具体的には、ターゲットアプリケーションプログラムをクリーニングする、または、ターゲットアプリケーションプログラムを制限するよう構成される。
第3態様の可能な実装において、プロセッサは更に、現在の電池残量に基づいて予め設定された電流値を決定するよう構成される。
任意選択で、端末がactive状態にあるとき、予め設定された電流値は第1電流値であり、端末がidle状態にあるとき、予め設定された電流値は第2電流値であり、ここで、第1電流値は第2電流値より大きい。
第3態様の可能な実装において、ディスプレイは更に、端末のバックグラウンド電力消費電流値が予め設定された電流値より大きいとき、画面上にプロンプト情報を表示するよう構成され、プロンプト情報は、少なくとも1つのターゲットアプリケーションプログラムを制御するためのプロンプトを表示するために使用される。プロセッサは更に、プロンプト情報に従ってユーザによって実行される操作の検出に応答して、少なくとも1つのターゲットアプリケーションプログラムを制御するよう構成される。
第4態様において、本願は、上記の端末によって使用されるコンピュータソフトウェア命令を格納するよう構成されるコンピュータ可読記憶媒体を提供する。コンピュータソフトウェア命令がコンピュータ上で動作するとき、コンピュータは、第1態様の可能な実装のいずれか1つによる、端末の電力消費を低減する方法を実行することが可能になる。
第5態様によれば、本願は、命令を含むコンピュータプログラムプロダクトを提供する。コンピュータプログラムプロダクトがコンピュータ上で動作するとき、コンピュータは、第1態様の可能な実装のいずれか1つによる、端末の電力消費を低減するための方法を実行することが可能になる。
第2態様から第5態様に対応する、有利な効果については、第1態様の関連する説明を参照されたい。
以下の用語、すなわち「第1」および「第2」は、説明を意図したものに過ぎず、相対的重要性の指示もしくは示唆、または、指示された技術的機能の数の黙示的な指示として理解されるべきではない。したがって、「第1」または「第2」によって修飾される機能は、1または複数の機能を明示的または黙示的に含み得る。本願の実施形態の説明において、別段の定めがない限り、「複数」とは、2または2より大きいことを意味する。
現在、端末の電力消費を低減するべくバックグラウンドアプリケーションプログラムを制御するために使用されるDoze機構(すなわち、Android(登録商標)6.0低電力消費モード)がある。Doze機構において、active、inactive、idle_pending、idle、およびidle_maintenanceという、端末の5つの状態がある。以下では具体的には、5つの状態の間で端末がどのように切り替わるかを説明する。
図1に示されるように、端末が使用されているとき、または、充電のために電源に接続されているとき、端末はactive状態にある。端末の画面がオフになり、端末が充電されていないとき、端末はactive状態からinactive状態に切り替わる。端末が時間T1にわたってアクティブでない場合、端末は、inactive状態からidle_pending状態に切り替わる。端末が時間T2にわたって静止状態であり続けた後に、端末は、idle_pending状態からidle状態に切り替わる。
端末がidle状態にあるとき、端末は、バックグラウンドアプリケーションプログラムを制御し、例えば、非ホワイトリストにおけるバックグラウンドアプリケーションをクリーニングし、バックグラウンドアプリケーションプログラムがネットワークに接続することを禁止し、バックグラウンドアプリケーションプログラムのウェイクロック(Wake Lock)をブロックし、または、バックグラウンドアプリケーションプログラムのタスクを一時停止し、それにより、端末の電力消費を低減する。
加えて、端末が時間T3より長くidle状態であった後に、端末は、idle_maintenance状態に切り替わり得、その結果、端末は、バックグラウンドアプリケーションプログラムに対して通常処理を実行でき、例えば、バックグラウンドアプリケーションプログラムがネットワークを使用することを可能にする、または、一時中断されたタスクを処理する。このプロセスは通常、時間T4にわたって持続し、時間T4の後、端末は、idle_maintenance状態からidle状態に再び切り替わる。
当然、端末の画面が再びオンになるとき、端末がinactive状態、idle_pending状態、idle状態、またはidle_maintenance状態にあるかに関係なく、端末はactive状態に切り替わる。
通常、T1は30分であり、T2は1分であり、T3は30分であり、T4は30秒である。
上記のDoze機構において、端末は、端末の電力消費を低減するために、端末がidle状態にあるときのみ、バックグラウンドアプリケーションプログラムを制御できる。しかしながら、active状態からidle状態に切り替えるために、端末は、inactive状態およびidle_pending状態を順次に通過する必要があり、このプロセスは、一定期間(すなわち、T1+T2、通常は31分)を必要とする。この期間において、バックグラウンドアプリケーションプログラムは、電力の消費を継続し、その結果、端末の電力消費は依然として、比較的高い。バックグラウンドアプリケーションプログラムを制御するためにDoze機構が使用されるとき、適時性が低いという問題があることが分かる。
加えて、端末がidle状態に入る条件は比較的厳格である。すなわち、端末は、idle_pending状態において、1分間にわたって静止状態のままである必要がある。したがって、Doze機構のアプリケーションシナリオは限定される。例えば、ユーザが端末を携帯しながらランニングなどの運動をするとき、端末は、静止状態のままであることができず、結果として、端末は、idle_pending状態からidle状態に入ることができず、したがって、効果的にバックグラウンドアプリケーションプログラムを制御できない。
上記の問題を解消するべく、本願の実施形態は、端末の電力消費を低減するための方法を提供する。方法は、任意の端末、例えば、携帯電話、ウェアラブル装置、拡張現実(augmented reality、AR)装置/仮想現実(virtual reality、VR)装置、タブレットコンピュータ、ノートブックコンピュータ、ウルトラモバイルパーソナルコンピュータ(ultra-mobile personal computer、UMPC)、ネットブック、またはパーソナルデジタルアシスタント(personal digital assistant、PDA)に適用され得る。当然、端末の具体的な形式は、以下の実施形態に限定されるものではない。
図2に示されるように、本願の実施形態における端末は、携帯電話100であり得る。以下では、携帯電話100を例として使用することによって、実施形態を具体的に説明する。図に示される携帯電話100は、上記の端末の例に過ぎないことが理解できる。加えて、携帯電話100は、図に示されるものより多くの、または、少ないコンポーネントを有し得る、2以上のコンポーネントを組み合わせ得る、または、異なる方式で配置されるコンポーネントを有し得る。
図2に示されるように、携帯電話100は、具体的には、プロセッサ101、無線周波数(radio frequency、RF)回路102、メモリ103、タッチスクリーン104、Bluetooth(登録商標)機器105、1または複数のセンサ106、ワイヤレスフィディリティ(wireless fidelity、Wi-Fi(登録商標))機器107、測位機器108、音声回路109、周辺インタフェース110、および電源システム111などのコンポーネントを含み得る。これらのコンポーネントは、1または複数の通信バスまたは信号線(図2には不図示)を使用することによって通信し得る。当業者であれば、図2に示されるハードウェア構造は、携帯電話に対して制限を課さず、携帯電話100は、図に示されるものより多くの、または、少ないコンポーネントを含み、いくつかのコンポーネントを組み合わせる、または、異なる方式で配置されるコンポーネントを有し得ることを理解し得る。
以下では具体的には、図2を参照して、携帯電話100の各コンポーネントを説明する。
プロセッサ101は、携帯電話100の制御中心であり、様々なインタフェースおよび回線を使用することによって、携帯電話100のコンポーネントに接続し、携帯電話100の様々な機能を実行し、メモリ103に格納されたアプリケーションを動作させる、または、実行することによって、および、メモリ103に格納されたデータを呼び出すことによって、データを処理する。いくつかの実施形態において、プロセッサ101は、1または複数の処理ユニットを含み得、例えば、プロセッサ101は、Huawei Technologies Co.、Ltd.によって製造されたKirin 960チップであり得、本願のいくつかの実施形態において、プロセッサ101は、取得された指紋を検証するよう構成される指紋検証チップを更に含み得る。
無線周波数回路102は、情報の受信および送信の間、または、通話の間に無線信号を受信および送信するよう構成され得る。具体的には、無線周波数回路102は、ダウンリンクデータを基地局から受信した後に、処理のためにダウンリンクデータをプロセッサ101へ送信し、アップリンクデータを基地局へ送信し得る。一般に、無線周波数回路は、アンテナ、少なくとも1つの増幅器、送受信機、カプラ、低ノイズ増幅器、デュプレクサなどを含むが、それらに限定されるものではない。加えて、無線周波数回路102は、無線通信を通じて別の装置と通信し得る。無線通信は、Global System for Mobile Communications、汎用パケット無線サービス、符号分割多元接続、広帯域符号分割多元接続、ロングタームエボリューション、電子メール、ショートメッセージサービスなどを含むが、これらに限定されるものではない任意の通信規格またはプロトコルを使用することによって実行され得る。
メモリ103は、アプリケーションおよびデータを格納するよう構成される。プロセッサ101は、メモリ103に格納されたアプリケーションおよびデータを動作させることによって、携帯電話100の様々な機能を実行し、データを処理する。メモリ103は、主にプログラム格納領域およびデータ格納領域を含む。プログラム格納領域は、オペレーティングシステム、および、少なくとも1つの機能(音声再生機能および画像再生機能など)によって要求されるアプリケーションを格納し得、データ格納領域は、携帯電話100の使用に基づいて生成されるデータ(音声データおよび電話帳など)を格納し得る。加えて、メモリ103は、高速ランダムアクセスメモリ(random access memory、RAM)を含み得、不揮発性メモリ、例えば、磁気ディスクストレージデバイス、フラッシュメモリデバイスまたは別の半導体記憶媒体を更に含み得る。メモリ103は、様々なオペレーティングシステム、例えば、Appleによって開発されたiOS(登録商標)オペレーティングシステム、および、Googleによって開発されたAndroid(登録商標)オペレーティングシステムを格納し得る。メモリ103は独立したものであり得、通信バスを使用することによってプロセッサ101に接続され得る。代替的に、メモリ103は、プロセッサ101に統合され得る。
タッチスクリーン104は具体的には、タッチパッド104-1およびディスプレイ104-2を含み得る。
タッチパッド104-1は、タッチパッド104-1上、またはその近くにおける、携帯電話100のユーザのタッチイベント(例えば、タッチパッド104-1上で、または、タッチパッド104-1の近くにおいて、ユーザが指またはスタイラスなどの任意の適切なオブジェクトを使用することによって実行する操作)を収集し、収集されたタッチ情報を別の装置(例えば、プロセッサ101)へ送信し得る。タッチパッド104-1の近くのユーザのタッチイベントは、フローティングタッチ制御と称され得る。フローティングタッチ制御とは、オブジェクト(例えばウィジェット)を選択、移動、またはドラッグするために、ユーザがタッチパッドを直接タッチする必要がなく、所望の機能を実行するためには端末の近くに留まるだけでよいことを意味し得る。加えて、タッチパッド104-1は、例えば、抵抗型、容量型、赤外線型、および弾性表面波型など、様々なタイプで実装され得る。
ディスプレイ(表示画面とも称される)104-2は、ユーザによって入力された情報、または、ユーザのために提供される情報、および、携帯電話100の様々なメニューを表示するよう構成され得る。ディスプレイ104-2は、液晶ディスプレイ、または有機発光ダイオードなどの形式で構成され得る。タッチパッド104-1は、ディスプレイ104-2を覆い得る。タッチパッド104-1は、タッチパッド104-1上、またはその近くのタッチイベントを検出した後に、タッチイベントのタイプを決定するために、タッチイベントについての情報をプロセッサ101へ送信する。次いで、プロセッサ101は、タッチイベントのタイプに基づいて、対応する視覚的出力をディスプレイ104-2上に提供してよい。タッチパッド104-1および表示画面104-2は、図2において、携帯電話100の入出力機能を実装するために2つの独立したコンポーネントとして機能するが、いくつかの実施形態において、タッチパッド104-1および表示画面104-2は、統合され得、携帯電話100の入出力機能を実装する。タッチスクリーン104は、複数の層の材料を重ねることによって作られることが理解できる。本願の本実施形態は、タッチパッド(層)および表示画面(層)のみを示し、別の層は、本願の本実施形態において説明されない。加えて、タッチパッド104-1は、フルボードの形式で、携帯電話100の前面に配置され得、表示画面104-2も、フルボードの形式で、携帯電話100の前面にも配置され得る。このように、携帯電話の前面について、ベゼルなしの構造を実装できる。
加えて、携帯電話100は、指紋認識機能を更に有し得る。例えば、指紋センサ112は、携帯電話100の裏面(例えば、背面カメラの下)に配置され得る、または、携帯電話100の前面(例えば、タッチスクリーン104の下)に配置され得る。別の例として、指紋認識機能を実装するために、指紋取得装置112がタッチスクリーン104に配置され得る。言い換えれば、携帯電話100の指紋認識機能を実装するために、指紋取得装置112は、タッチスクリーン104に統合され得る。この場合、指紋取得装置112はタッチスクリーン104中に配置される。具体的には、指紋取得装置112は、タッチスクリーン104の一部であり得る、または、別の方式でタッチスクリーン104中に配置され得る。本願の本実施形態において、指紋取得装置112の主なコンポーネントは、指紋センサであり、指紋センサは、光学検知技術、容量検知技術、圧電検知技術、または超音波検知技術などを含むがこれらに限定されるものではない任意のタイプの検知技術を使用し得る。
携帯電話100は、携帯電話100と別の短距離端末(例えば、携帯電話またはスマートウォッチ)との間でデータ交換を実装するよう構成されるBluetooth(登録商標)機器105を更に含み得る。本願の本実施形態において、Bluetooth(登録商標)機器は集積回路、またはBluetooth(登録商標)チップなどであり得る。
携帯電話100は更に、少なくとも1つのセンサ106、例えば、光センサ、モーションセンサ、及び別のセンサを含んでよい。具体的には、光センサは、周辺光センサおよび近接センサを含み得る。周辺光センサは、周辺光の明るさに基づいて、タッチスクリーン104のディスプレイの輝度を調節し得る。携帯電話100が耳に移動するとき、近接センサは、ディスプレイ電力をオフにし得る。モーションセンサの一種として、加速度計センサは、様々な方向(通常は3軸)の加速を検出し、静止状態において、重力の値および方向を検出し得、携帯電話の姿勢(例えば、ランドスケープモードとポートレートモードとの間の画面切り替え、関連するゲーム、および、磁気計姿勢校正)を識別するアプリケーション、振動識別関連機能(例えば、歩数計またはタップ)などに適用され得る。携帯電話100のために更に構成され得るジャイロスコープ、気圧計、湿度計、温度計、赤外線センサなどの他のセンサについては、ここでは詳細を説明しない。
Wi-Fi(登録商標)機器107は、Wi-Fi(登録商標)関連規格プロトコルに従うネットワークアクセスを携帯電話100に提供するよう構成される。携帯電話100は、Wi-Fi(登録商標)機器107を使用することによってWi-Fi(登録商標)アクセスポイントにアクセスし得、ユーザが電子メールを送信または受信する、ウェブページを閲覧し、ストリーミング媒体などにアクセスすることを助ける。Wi-Fi(登録商標)機器107は、無線ブロードバンドインターネットアクセスをユーザに提供する。いくつかの他の実施形態において、Wi-Fi(登録商標)機器107は、Wi-Fi(登録商標)アクセスポイントとしても使用され得、別の端末にWi-Fi(登録商標)ネットワークアクセスを提供できる。
測位機器108は、携帯電話100に地理的位置を提供するよう構成される。測位機器108は具体的には、測位システム、例えば、全地球測位システム(global positioning system、GPS)、北斗衛星導航系統、およびロシアのGLONASSにおける受信機であり得ることを理解できる。測位機器108は、上記の測位システムによって送信された地理的位置を受信した後に、処理のために情報をプロセッサ101へ送信する、または、格納のためにメモリ103へ情報を送信する。いくつかの他の実施形態において、測位機器108は、代替的に、補助全地球測位システム(assisted global positioning system、AGPS)における受信機であり得る。AGPSは、測位機器108が測距および測位サービスを完了することを支援するアシスタントサーバとして機能する。この場合、測位アシスタントサーバは、無線通信ネットワークを通じて携帯電話100などの端末の測位機器108(すなわち、GPS受信機)と通信することによって測位支援を提供する。いくつかの他の実施形態において、測位機器108は代替的に、Wi-Fi(登録商標)アクセスポイントに基づく測位技術であり得る。各Wi-Fi(登録商標)アクセスポイントは、グローバル一意媒体アクセス制御(media access control、MAC)アドレスを有するので、端末は、Wi-Fi(登録商標)がオンになるとき、近くのWi-Fi(登録商標)アクセスポイントからブロードキャスト信号をスキャンおよび収集し得、それにより、Wi-Fi(登録商標)アクセスポイントによってブロードキャストされるMACアドレスを取得する。端末は、無線通信ネットワークを通じて、Wi-Fi(登録商標)アクセスポイント(MACアドレスなど)を識別できるそのようなデータをロケーションサーバへ送信する。ロケーションサーバは、各Wi-Fiアクセスポイントの地理的位置を検索し、Wi-Fi(登録商標)ブロードキャスト信号の強度を参照して端末の地理的位置を計算し、地理的位置を端末の測位機器108へ送信する。
音声回路109、ラウドスピーカ113、およびマイク114は、ユーザと携帯電話100との間の音声インタフェースを提供し得る。音声回路109は、受信した音声データから変換された電気信号をラウドスピーカ113へ送信し得、ラウドスピーカ113は、電気信号を音声信号に変換して出力する。加えて、マイク114は、収集された音声信号を電気信号に変換し、音声回路109は、電気信号を受信し、電気信号を音声データに変換し、音声データを無線周波数回路102へ出力することで、音声データを例えば別の携帯電話へ送信する、または、更なる処理のために音声データをメモリ103に出力する。
周辺インタフェース110は、外部入出力装置(例えば、キーボード、マウス、外部ディスプレイ、外部メモリ、および加入者識別モジュールカード)のための様々なインタフェースを提供するよう構成される。例えば、周辺インタフェース110は、ユニバーサルシリアルバス(Universal Serial Bus、USB)インタフェースを使用することによってマウスに接続され、加入者識別モジュールカードスロット上の金属コンタクトを使用することによって、遠隔通信事業者によって提供される加入者識別モジュール(subscriber identification module、SIM)カードに接続される。周辺インタフェース110は、上記外部入出力周辺装置をプロセッサ101およびメモリ103に結合するよう構成され得る。
携帯電話100は、電力を各コンポーネントに供給する電源機器111(例えば、電池または電力管理チップ)を更に含み得る。電源機器111を用いて充電管理、放電管理および電力消費管理などの機能を実装すべく、電池は、電力管理チップを用いて、プロセッサ101に論理的に接続され得る。
図2では不図示であるが、携帯電話100は、カメラ(前面カメラおよび/または背面カメラ)、フラッシュ、マイクロプロジェクション機器、近距離通信(near field communication、NFC)機器などを更に含み得る。詳細は、ここで説明しない。
以下では、特定の実施形態を参照して、本願の実施形態において提供される端末の電力消費を低減するための方法を詳細に説明する。図3に示すように、当該方法は以下の段階を備える。
S101:端末はバックグラウンド電力消費電流値を検出する。
バックグラウンド電力消費電流値は、バックグラウンドアプリケーションプログラム全部の電力消費電流値の和である。バックグラウンドアプリケーションプログラムの電力消費電流値は、バックグラウンドアプリケーションプログラムによって使用される様々な端末リソースの電力消費電流値についての統計を収集することによって取得される。端末リソースは、CPU、メモリ、センサ、ネットワーク、音声回路などを含む。
バックグラウンドアプリケーションプログラムは、インタフェースが端末によって表示されないアプリケーションプログラムであることに注意すべきである。フォアグラウンドアプリケーションプログラムは、インタフェースが現在、端末によって表示されるアプリケーションプログラムである。
図2を参照して説明を提供する。端末は、バックグラウンド電力消費電流値を取得するために、電源機器111における電力管理チップを使用することによって、各バックグラウンドアプリケーションプログラムの電力消費電流値を取得し得る。
任意選択で、端末は、バックグラウンド電力消費電流値を画面に表示する。図4を参照すると、端末は、バックグラウンド電力消費電流値をステータスバーに表示し、その結果、ユーザは、適時にバックグラウンドアプリケーションプログラムをクリーニングするために、バックグラウンド電力消費電流値を知る。
S102:バックグラウンド電力消費電流値が予め設定された電流値より大きい場合、端末はバックグラウンド電力消費電流値を低減するようにターゲットアプリケーションプログラムを制御する。
バックグラウンド電力消費電流値は、端末上のバックグラウンドアプリケーションプログラム全部の電力消費の和を反映できることに注意すべきである。したがって、バックグラウンド電力消費電流値を検出し、バックグラウンド電力消費電流値を予め設定された電流値と比較することによって、端末は、バックグラウンドアプリケーションプログラム全部の電力消費の和が期待値を超えるかどうかを決定できる。このように、バックグラウンド電力消費電流値が予め設定された電流値より大きい(すなわち、バックグラウンドアプリケーションプログラム全部の電力消費の和が期待値を超える)とき、端末は、適時にこの状況を知り、バックグラウンド電力消費電流値を低減するようターゲットアプリケーションプログラム制御することができる。したがって、バックグラウンドアプリケーションプログラム全部の電力消費の和が期待値を超える状況の時間長が非常に短く、その結果、バックグラウンドアプリケーションプログラム全部の電力消費の和は通常、期待値より低いままである。通常、バックグラウンドアプリケーションプログラム全部の電力消費の和は、端末の不要な電力消費である。本願の解決手段によれば、バックグラウンドアプリケーションプログラム全部の電力消費の和は通常、期待値より低いままであり、すなわち、端末の不要な電力消費は低減される。
加えて、予め設定された電流値は、端末がバックグラウンドアプリケーションプログラムを制御する強度に関連する。予め設定された電流値が小さいことは、バックグラウンド電力消費電流値が予め設定された電流値より大きい確率が高いことを示すことを理解できる。この場合、端末の制御強度は、それに応じて強化される必要があり、その結果、バックグラウンド電力消費電流値は、予め設定された電流値より小さい。
実際の適用において、端末がactive状態にあるとき、ユーザが端末を使用していることを示す。この場合、端末上の大部分のバックグラウンドアプリケーションプログラムは、ユーザが使用する必要があるアプリケーションプログラムであり得る。したがって、端末がactive状態にあるとき、端末は、比較的低い制御強度でバックグラウンドアプリケーションプログラムを制御する必要があり、それにより、ユーザが維持したいアプリケーションプログラムをクリーニングすることを回避し、それにより、ユーザエクスペリエンスに対する悪影響を低減する。
端末がidle状態にあるとき、ユーザは端末を使用していないことを示す。この場合、大部分のバックグラウンドアプリケーションプログラムがクリーニングされる場合でも、ユーザエクスペリエンスは影響されない。したがって、端末がidle状態にあるとき、端末は、比較的高い制御強度でバックグラウンドアプリケーションプログラムを制御する必要があり、その結果、端末上では、少数のバックグラウンドアプリケーションプログラムのみが維持される、または、維持されるバックグラウンドアプリケーションプログラムが無く、それにより、端末の電力消費をより低減する。
任意選択で、上記の目的を達成するべく、端末がactive状態にあるとき、予め設定された電流値は第1電流値であり、端末が第2状態にあるとき、予め設定された電流値は第2電流値である。第1電流値は第2電流値より大きい。例えば、端末がactive状態にあるとき、第1電流値は30mAであり、端末がidle状態にあるとき、第2電流値は20mAである。
任意選択の実装において、端末は、予め設定された電流値を固定値に設定し得、例えば、予め設定された電流値を20mAに設定する。
別の任意選択の実装において、端末は、現在の電池残量に基づいて予め設定された電流値を決定し得る。現在の電池残量は、合計電池電力における残りの電池電力の割合によって表され得ることに注意すべきである。例えば、現在の電池残量は50%である。図2を参照して説明を提供する。端末は、電源機器111における電力管理チップを使用することによって、電池残量を決定し得る。当然、電池残量は、代替的に、別の方法を使用することによって決定され得る。例えば、電池残量は、電圧試験方法を使用することによって決定され得る。具体的には、電池残量は、電池電圧をモニタリングし、次に、電圧変化に基づいて電力変化を決定することによって決定される。代替的に、電池残量は、クーロンカウンタ(coulomb counter)を使用することによって決定され得る。クーロンカウンタは、電池電力変化を正確に追跡するよう構成される機器である。これは、本願の本実施形態において限定されるものではない。
任意選択で、現在の電池残量は、予め設定された電流値と正の相関がある。言い換えれば、現在の電池残量が低いことは、予め設定された電流値が小さいことを示す。このように、現在の電池残量が比較的低いとき、端末は、バックグラウンドアプリケーションプログラムに対する制御を強化し、その結果、バックグラウンド電流値は比較的小さく、それにより、端末の電力消費を低減する。
例えば、テーブル1は、予め設定された電流値と現在の電池残量との間の対応関係の任意選択の実装を示す。
[テーブル1]
当然、予め設定された電流値と現在の電池残量との間の対応関係は、代替的に、数式の形式で表され得る。これは、本願の本実施形態において限定されるものではない。
端末によるターゲットアプリケーションプログラムの制御の任意選択の実装は、ターゲットアプリケーションプログラムのクリーニング、またはターゲットアプリケーションプログラムの制限を含むことに注意すべきである。ターゲットアプリケーションプログラムのクリーニングとは、ターゲットアプリケーションプログラムによって占有されるメモリリソースを解放し、それにより、ターゲットアプリケーションプログラムを閉じることを意味する。加えて、ターゲットアプリケーションプログラムを制限する任意選択の実装は、ターゲットアプリケーションプログラムがネットワーク接続を使用すること、ターゲットアプリケーションプログラムのwakelockをブロックすること、またはターゲットアプリケーションプログラムのタスクを一時停止することを禁止にすることを含む。
本願の本実施形態において、ターゲットアプリケーションプログラムは、以下の規則に従って決定され得る。
規則1:各バックグラウンドアプリケーションプログラムの使用頻度についての統計を収集し、使用頻度が予め設定された頻度閾値より低いバックグラウンドアプリケーションプログラムをターゲットアプリケーションプログラムとして設定する。
使用頻度とは、単位時間当たりにアプリケーションプログラムが起動される回数である。時間の単位は通常、1日または1か月である。これは、本願の本実施形態において限定されるものではない。
本願の本実施形態において、端末は、起動データベースから、各バックグラウンドアプリケーションプログラムの使用頻度についての統計を収集する。起動データベースは、各アプリケーションプログラムの起動データを記録するために使用される。起動データは、アプリケーションプログラムの各起動の時間および位置などの情報を含む。例えば、テーブル2は、端末上での各バックグラウンドアプリケーションプログラムの使用頻度を示す。
[テーブル2]
加えて、予め設定された頻度閾値は、端末によって予め設定された固定値であり得る、または、バックグラウンド電力消費電流値に基づいて決定される動的価値であり得る。後者の実装において、バックグラウンド電力消費電流値は、予め設定された頻度閾値と正の相関にあり、言い換えれば、バックグラウンド電力消費電流値が大きいことは、予め設定された頻度閾値が大きいことを示す。このように、より多くのバックグラウンドアプリケーションプログラムは、ターゲットアプリケーションプログラムを決定する規則を満たし、その結果、端末は、より多くのバックグラウンドアプリケーションプログラムを制御し、それにより、より広い範囲の端末の電力消費を低減する。
テーブル2を参照して、説明のために例を使用する。予め設定された電流値が20mAであり、かつ、バックグラウンド電力消費電流値が30mAであるとき、予め設定された頻度閾値が5回/日である、または、バックグラウンド電力消費電流値が35mAであるとき、予め設定された頻度閾値が7回/日であると想定する。この場合、バックグラウンド電力消費電流値が30mAであることを端末が検出したとき、端末は、2つのアプリケーションプログラム、ZhihuおよびTopBuzzを制御する。バックグラウンド電力消費電流値が35mAであることを端末が検出したとき、端末は3つのアプリケーションプログラム、Zhihu、TopBuzz、およびBaidu Mapを制御する。
当然、バックグラウンドアプリケーションプログラム全部の使用頻度についての統計が収集された後に、ターゲットアプリケーションプログラムは、別の実装を使用することによって決定され得る。例えば、バックグラウンドアプリケーションプログラム全部は、使用頻度の昇順でランク付けされ、より上位にランク付けされるバックグラウンドアプリケーションプログラムの予め設定された数は、ターゲットアプリケーションプログラムとして設定される。これは、本願の本実施形態において限定されるものではない。
規則2:各バックグラウンドアプリケーションプログラムの電力消費を取得し、電力消費が予め設定された電力消費閾値より大きいバックグラウンドアプリケーションプログラムをターゲットアプリケーションプログラムとして設定する。
上記の電力消費は、合計電力消費、または平均電力消費であり得る。ここでの合計電力消費は、アプリケーションプログラムがバックグラウンドに入ってからアプリケーションプログラムによって消費された電力量である。合計電力消費は、アプリケーションプログラムの平均電力消費電流に関連するだけでなく、バックグラウンドにおけるアプリケーションプログラムの動作時間長にも関連し、異なるアプリケーションプログラムは、異なる時間にバックグラウンドに入る。したがって、いくつかの場合、各バックグラウンドアプリケーションプログラムの合計電力消費を使用することによって、バックグラウンドアプリケーションプログラム全部の電力消費を正確に比較することができない。この場合、平均電力消費が比較のために使用され得る。ここでの平均電力消費は、アプリケーションプログラムがバックグラウンドに入った後に単位時間当たりにアプリケーションプログラムによって消費される電力量であり、そのような電力消費は、アプリケーションプログラムがバックグラウンドに入った後にアプリケーションプログラムによって消費された合計電力量を、バックグラウンドにおけるアプリケーションプログラムの動作時間長で除算することによって取得され得る。
本願の本実施形態において端末は、システムにおける対応するサービスプログラムを呼び出し得、各バックグラウンドアプリケーションプログラムの合計電力消費および平均電力消費を取得する。Android(登録商標)システムを例として使用すると、端末は、BatteryStatsServiceを呼び出し得、各バックグラウンドアプリケーションプログラムの合計電力消費および平均電力消費を取得する。例えば、テーブル3は、各バックグラウンドアプリケーションプログラムの平均電力消費を端末に示す。
[テーブル3]
加えて、予め設定された電力消費閾値は、端末によって予め設定された固定値であり得る、または、バックグラウンド電力消費電流値に基づいて決定される動的価値であり得る。後者の実装において、予め設定された電力消費閾値は、バックグラウンド電力消費電流値と負の相関にあり、言い換えれば、バックグラウンド電力消費電流値が大きいことは、予め設定された電力消費閾値が小さいことを示す。このように、より多くのバックグラウンドアプリケーションプログラムは、ターゲットアプリケーションプログラムを決定する規則を満たし、その結果、端末は、より多くのバックグラウンドアプリケーションプログラムを制御し、それにより、より広い範囲の端末の電力消費を低減する。
テーブル3を参照して説明のために例を使用する。予め設定された電流値が20mAであり、かつ、バックグラウンド電力消費電流値が30mAであるとき、予め設定された電力消費閾値が45mAhである、または、バックグラウンド電力消費電流値が35mAであるとき、予め設定された電力消費閾値は40mAhであると想定する。この場合、バックグラウンド電力消費電流値が30mAであることを端末が検出したとき、端末は、2つのアプリケーションプログラム、WeChat(登録商標)およびZhihuを制御する。バックグラウンド電力消費電流値が35mAであることを端末が検出したとき、端末は3つのアプリケーションプログラム、WeChat(登録商標)、Zhihu、およびWeiboを制御する。
当然、バックグラウンドアプリケーションプログラム全部の電力消費が取得された後に、ターゲットアプリケーションプログラムは、別の実装を使用することによって決定され得る。例えば、バックグラウンドアプリケーションプログラム全部は、電力消費の降順でランク付けされ、より上位にランク付けされるバックグラウンドアプリケーションプログラムの予め設定された数は、ターゲットアプリケーションプログラムとして設定される。これは、本願の本実施形態において限定されるものではない。
規則3:異常な電力消費を有するバックグラウンドアプリケーションプログラムをターゲットアプリケーションプログラムとして設定する。
任意選択で、アプリケーションプログラムの電力消費電流値が、アプリケーションプログラムに対応する最大電力消費電流値より大きい場合、端末は、アプリケーションプログラムが異常な電力消費を有すると決定し得る。
端末は、各アプリケーションプログラムに対応する最大電力消費電流値を予め設定し得る、または、端末は、予め設定された規則をクラウドサーバから取得し得る。ここで、予め設定された規則は、各アプリケーションプログラムに対応する最大電力消費電流値を含む。
以下では、具体的には、特定のアプリケーションシナリオを参照して、本願の本実施形態による、端末が予め設定された規則をクラウドサーバから取得するプロセスを説明する。
図5に示されるシナリオにおいて、クラウドサーバは、複数の端末によって報告されるデータを収集し、ビッグデータ分析方法を使用することによって収集されたデータを分析および処理することによって、予め設定された規則を生成する。次に、クラウドサーバは、予め設定された規則を端末にプッシュし、その結果、端末は、予め設定された規則に従って、異常な電力消費を有するバックグラウンドアプリケーションプログラムを識別できる。
例えば、図6を参照すると、プロセス201に示されるように、端末は、各アプリケーションプログラムの電力消費電流値データを収集し、ここで、電力消費電流値データは、動作プロセスにおけるアプリケーションプログラムの電力消費電流値を含む。
プロセス202に示されるように、端末は、収集されたデータをクラウドサーバへ送信する。同様に、クラウドサーバは、別の端末によって報告されたデータを更に受信し得る。説明を容易にするために、本願の本実施形態において、各端末によって報告されるデータは生データとして説明される。
プロセス203に示されるように、クラウドサーバは、生データに対してビッグデータ分析を実行し、予め設定された規則を生成する。以下では、例を使用することによって、クラウドサーバがアプリケーションプログラムに対応する最大電力消費電流値をどのように決定するかを説明する。クラウドサーバは、全部の端末によって報告されるWeChat(登録商標)アプリケーションの電力消費電流値レコードから最大値を取得する。クラウドサーバは、各値の確率を計算し、最大の確率を有する値を、WeChat(登録商標)アプリケーションに対応する最大電力消費電流値として選択する。例えば、大部分の端末におけるWeChat(登録商標)アプリケーションの最大電力消費電流値は5mAであり、この場合、クラウドサーバは、WeChat(登録商標)アプリケーションに対応する最大電力消費電流値が5mAであると決定する。当然、クラウドサーバは代替的に、アプリケーションプログラムに対応する最大電力消費電流値を決定するために別の方法を使用し得る。これは、本願の本実施形態において限定されるものではない。
例えば、テーブル4は、予め設定された規則の任意選択の実装を示す。
[テーブル4]
更に、異なるモデルの端末の間にはハードウェアおよび/またはソフトウェアの差があるので、異なるモデルの端末上のアプリケーションプログラムの電力消費電流値の間に差がある。アプリケーションプログラムに対応する最大電力消費電流値をより正確にするために、クラウドサーバは、生データに対してビッグデータ分析を実行するとき、端末モデルを考慮し得る。具体的には、クラウドサーバは、生データを分類し、同一モデルの端末上のデータを同一タイプにグループ化し、各タイプのデータを分析することによって、各端末モデルに対応する予め設定された規則を取得する。テーブル5は、予め設定された規則の任意選択の実装を示す。
[テーブル5]
プロセス204に示されるように、クラウドサーバは、予め設定された規則を端末にプッシュする。任意選択で、モデルの端末に対して、クラウドサーバは、この端末モデルのみに対応する予め設定された規則をプッシュする。例えば、モデルがHuawei P9である端末については、クラウドサーバは、Huawei P9のみに対応する予め設定された規則を端末にプッシュする。このように、端末は、予め設定された規則に従って、異常な電力消費を有するバックグラウンドアプリケーションプログラムを識別する。例えば、テーブル4に示されるように、予め設定された規則において、WeChat(登録商標)アプリケーションに対応する最大電力消費電流値は5mAであり、バックグラウンドで動作しているWeChat(登録商標)アプリケーションの電力消費電流値が6mAであることを端末が検出した場合、端末は、WeChat(登録商標)アプリケーションが異常な電力消費を有すると決定する。
加えて、クラウドサーバは、予め設定された規則を端末に定期的にプッシュし得る、または、予め設定された規則が更新されるときのみ、新しい予め設定された規則を端末にプッシュし得る。
当然、アプリケーションプログラムが異常な電力消費を有するどうかは、別の実装を使用することによって決定され得る。例えば、各アプリケーションプログラムに呼び出し権が設定され、ここで、呼び出し権は、アプリケーションプログラムによって呼び出すことができるハードウェアコンポーネントおよびAPIを含み得る。アプリケーションプログラムが、アプリケーションプログラムの呼び出し権に含まれないハードウェアコンポーネント/APIを呼び出す場合、アプリケーションプログラムは異常な電力消費を有する。
端末は、上記の規則のいずれか1つまたは任意の組み合わせに従ってターゲットアプリケーションプログラムを決定し得ると理解できる。
加えて、別の実装において、ターゲットアプリケーションプログラムは、ユーザ感知タスクを動作させないバックグラウンドアプリケーションプログラムを更に含む。ユーザ感知タスクは、健全性試験タスク、ファイルダウンロードタスク、モーション検出タスクおよび音声再生タスクを含む。
バックグラウンドアプリケーションプログラムがユーザ感知タスクを動作させないとき、ユーザは、バックグラウンドアプリケーションプログラムがクリーニングされるかどうかを認識できない。したがって、ユーザ感知タスクを動作させないバックグラウンドアプリケーションプログラムをクリーニングすることは、ユーザエクスペリエンスに影響を与えない。したがって、実際の適用において、端末は、ユーザ感知タスクを動作させるバックグラウンドアプリケーションプログラムを維持し、ユーザ感知タスクを動作させないバックグラウンドアプリケーションプログラムをクリーニングし、それにより、ユーザエクスペリエンスに影響を与えることなく端末の電力消費を低減する。
例えば、端末のバックグラウンドにおいて動作するアプリケーションプログラムは、WeChat(登録商標)、NetEase Cloud Music、Thunder、Hupu Running、Snail Sleepなどを含む。ユーザが走っているとき、Hupu Runningのみが、走る速度および時間などのパラメータを記録するために使用される。すなわち、アプリケーションプログラムHupu Runningのみがモーション検出タスクを動作させ、ユーザ感知タスクを動作させる他のアプリケーションプログラムは無い。したがって、バックグラウンド電力消費電流値が予め設定された電流値より大きいとき、端末は、アプリケーションプログラムHupu Runningのみを維持し、WeChat(登録商標)、NetEase Cloud Music、Thunder、Snail Sleepなどのアプリケーションプログラムをクリーニングし、それにより、モーションステータス検出のための、ユーザによる端末の正常な使用に影響することなく、端末上でバックグラウンドアプリケーションプログラムを効果的に制御し、端末の電力消費を低減する。当然、ユーザが走りながらNetEase Cloud Musicを使用して音声を再生する場合、バックグラウンド電力消費電流値が予め設定された電流値より大きいとき、端末は、NetEase Cloud Musicをクリーニングしないが、NetEase Cloud Musicをバックグラウンドで動作させ続け、その結果、ユーザは、走りながら音楽を聴くことができる。
別の例として、端末のバックグラウンドにおいて動作するアプリケーションプログラムは、WeChat(登録商標)、NetEase Cloud Music、Thunder、Hupu Running、Snail Sleepなどを含む。ユーザが休憩しているとき、Snail Sleepのみが、心拍数を検出し睡眠時間を記録するために使用される。すなわち、アプリケーションプログラムSnail Sleepのみが健全性試験タスクを動作させ、ユーザ感知タスクを動作させる他のアプリケーションプログラムは無い。したがって、バックグラウンド電力消費電流値が予め設定された電流値より大きいとき、端末は、アプリケーションプログラムSnail Sleepのみを維持し、WeChat(登録商標)、NetEase Cloud Music、Thunder、およびHupu Runningなどのアプリケーションプログラムをクリーニングし、それにより、睡眠ステータス検出のための、ユーザによる端末の正常な使用に影響することなく、端末上で効果的にバックグラウンドアプリケーションプログラムを制御し、端末の電力消費を低減する。
加えて、ターゲットアプリケーションプログラムが制御されているとき、ユーザがバックグラウンドで動作させ続けたいアプリケーションプログラムが制御される場合を回避するべく、端末のバックグラウンド電力消費電流値が予め設定された電流値より大きいとき、端末は、画面上にプロンプト情報を表示し、プロンプト情報は少なくとも1つのターゲットアプリケーションプログラムを制御するためのプロンプトを表示するために使用される。プロンプト情報に従ってユーザによって実行される操作の検出に応答して、端末は、少なくとも1つのターゲットアプリケーションプログラムを制御する。図7を参照すると、WeChat(登録商標)アプリケーションは、異常な電力消費を有する。携帯電話がWeChat(登録商標)アプリケーションをクリーニングする前に、プロンプト情報701が表示される。プロンプト情報は、WeChat(登録商標)アプリケーションをクリーニングするかどうかをユーザに尋ねるために使用される。ユーザは、WeChat(登録商標)アプリケーションをクリーニングするよう携帯電話をトリガするためにボタン702をタップし得る。代替的に、ユーザは、ボタン703をタップし得、その結果、携帯電話はWeChat(登録商標)アプリケーションを維持する。
特定の実装において、端末によるバックグラウンド電力消費電流値の検出も、端末の電力を消費する必要があることを理解されたい。したがって、端末の電力消費を更に低減するべく、図8に示されるように、段階S101は具体的には、段階S1011として実装され得る。
S1011:端末は、予め設定された時間間隔でバックグラウンド電力消費電流値を検出する。
任意選択で、予め設定された時間間隔は、デフォルトで設定され得る、または、ユーザによって設定され得る。
図9Aおよび図9Bを参照すると、ユーザは、携帯電話の設定インタフェース901を開く。インタフェースは、例えば、飛行機モード、デュアルSIM管理、または電力消費管理をオンにするかどうかなど、携帯電話上でユーザによって実行され得る設定操作を表示する。ユーザが設定インタフェース901上で電力消費管理のオプションを選択した後に、携帯電話はインタフェース902をロードする。インタフェース902上で選択可能なオプションは、「ターゲットアプリケーションプログラムの設定」、「予め設定された電流値の設定」、「予め設定された時間間隔の設定」、「予め設定された規則の設定」を含む。ユーザがインタフェース902上でオプション「予め設定された時間間隔の設定」を選択した後に、携帯電話はインタフェース903をロードする。インタフェース903上には調節ボタン904およびクローズボタン905がある。ユーザは、調節ボタン904を左にスライドし、それにより、予め設定された時間間隔を短縮するよう携帯電話をトリガする。ユーザは、調節ボタン904を右にスライドし、それにより、予め設定された時間間隔を長くするよう携帯電話をトリガする。加えて、ユーザは、クローズボタン905をタップし、それにより、携帯電話がインタフェース903を出て、インタフェース902に戻るようトリガする。
加えて、段階S102の後に、バックグラウンド電力消費電流値はなお、予め設定された電流値より大きいことがあり得る。この場合、元々設定されていた、予め設定された時間間隔が比較的長い場合、端末は、バックグラウンドアプリケーションプログラムを再び制御するために、比較的長い時間にわたって待機する必要がる。その結果、比較的長い時間にわたって、端末の電力消費が比較的高い。したがって、この問題を解消するために、図8に示されるように、方法は、段階S103を更に含む。
S103:バックグラウンド電力消費電流値が予め設定された電流値より大きい場合、端末は予め設定された時間間隔を短縮する。
本願の本実施形態において、バックグラウンド電力消費電流値は、予め設定された時間間隔と負の相関があり、言い換えれば、バックグラウンド電力消費電流値が大きいことは、予め設定された時間間隔が短いことを示す。例えば、予め設定された電流値は30mAであり、予め設定された時間間隔は10秒である。バックグラウンド電力消費電流値が40mAであることを端末が検出した場合、端末は、予め設定された時間間隔を5秒に調節し得、その結果、端末は、5秒後にバックグラウンド電力消費電流値を再び検出する。このように、バックグラウンド電力消費電流値が予め設定された電流値より大きいとき、予め設定された時間間隔が短縮される。これにより、端末がバックグラウンドアプリケーションプログラムを制御する頻度が増加し、その結果、バックグラウンド電力消費電流値を短い時間で低減させることができ、それにより、端末の電力消費を低減する。
本願の本実施形態において、端末は、バックグラウンド電力消費電流値と予め設定された時間間隔との間の対応関係に基づいて、予め設定された時間間隔を決定し得る、または、端末は、バックグラウンド電力消費電流値を予め設定された数式に代入して、予め設定された時間間隔を計算する。これは、本願の本実施形態において限定されるものではない。
図10を参照すると、バックグラウンドアプリケーションプログラムを制御するために、スマートパワーロボットが端末において設定される。スマートパワーロボットは、システムのサービスプロセスまたはアプリケーションプログラムである。スマートパワーロボットは端末のバックグラウンド電力消費電流値を定期的に検出し、バックグラウンド電力消費電流値を予め設定された電流値と比較する。バックグラウンド電力消費電流値が予め設定された電流値より大きいとき、スマートパワーロボットは、低電力消費動作を実行する。低電力消費動作は、バックグラウンドアプリケーションプログラムを制御し、例えば、いくつかのアプリケーションプログラムをクリーニングし、アプリケーションプログラムがネットワークに接続することを制限する、または、アプリケーションプログラムがメモリリソースを使用することを禁止する。任意選択で、スマートパワーロボットは、ユーザの使用習慣(例えば、ユーザがアプリケーションプログラムを使用する頻度)などの要素に基づいて、制御される必要があるバックグラウンドアプリケーションプログラムを決定し得る。代替的に、スマートパワーロボットは、各バックグラウンドアプリケーションプログラムの電力消費ステータス(例えば、バックグラウンドアプリケーションプログラムの電力消費電流値、または、バックグラウンドアプリケーションプログラムの電力消費)を追跡することによって、制御される必要があるバックグラウンドアプリケーションプログラムを決定し得る。代替的に、スマートパワーロボットは、ローカル統計から生成された、または、クラウドサーバによってプッシュされた規則に従って、異常な電力消費を有するバックグラウンドアプリケーションプログラムを識別し、ここで、異常な電力消費を有するバックグラウンドアプリケーションプログラムは、制御される必要があるバックグラウンドアプリケーションプログラムである。加えて、スマートパワーロボットは更に、ユーザ感知タスクを動作させないバックグラウンドアプリケーションプログラムを制御し、端末の電力消費を低減する。
スマートパワーロボットが低電力消費動作を実行した後に、バックグラウンドアプリケーションプログラムの電力消費は正常に戻り、バックグラウンド電力消費電流値は低減する。しかしながら、実際の適用において、端末上で、いくつかの異常な攪乱があり得る。例えば、ユーザによって実行される操作により、新しいアプリケーションプログラムが、端末のバックグラウンドにおいて動作する。異常な攪乱は、バックグラウンド電力消費電流値を増加させる。バックグラウンド電力消費電流値が特定の程度まで増加したとき(すなわち、バックグラウンド電力消費電流値は、予め設定された電流値より大きい)、スマートパワーロボットは、バックグラウンド電力消費電流値を低減するために、低電力消費動作を再び実行する。このように、スマートパワーロボットは、バックグラウンド電力消費電流値に対してネガティブフィードバック調節を実装し、その結果、バックグラウンド電力消費電流値を、予め設定された電流値より下に維持することができ、それにより、端末の電力消費を低減する。
加えて、βサブシステムが端末において更に設定される。βサブシステムは、システムのサービスプロセスであり、スマートパワーロボットの制御周波数を調節するために使用される。任意選択で、バックグラウンド電力消費電流値が比較的大きいとき、βサブシステムは、スマートパワーロボットの制御周波数を増加させる。すなわち、βサブシステムは、より短い時間間隔でバックグラウンド電力消費電流値を検出し、その結果、スマートパワーロボットは、短い時間で複数の低電力消費動作を実行する。このように、バックグラウンド電力消費電流値は、予め設定された電流値に迅速に接近し、それにより、端末の電力消費を迅速に低減する。
上記の機能を実装するために、端末装置は、各機能を実行するために、対応するハードウェア構造および/またはソフトウェアモジュールを含むことを理解されたい。当業者であれば、本明細書において開示される実施形態において説明される例のアルゴリズムのステップを参照することで、本願は、ハードウェア、または、ハードウェアおよびコンピュータソフトウェアの組み合わせの形式で実装できることを容易に理解するはずである。機能がハードウェアによって実行されるか、または、ハードウェアを駆動するコンピュータソフトウェアによって実行されるかは、特定の受信機、および、技術的解決手段の設計上の制限に依存する。当業者であれば、各特定の受信機について、説明された機能を実装するために、異なる方法を使用し得るが、実装は本願の範囲を超えるものとみなされるべきでない。
本願の実施形態において、機能モジュール分割は、上記の方法の例に従って端末上で実行され得る。例えば、機能モジュールは、機能と一対一の対応関係で分割され得る、または、2つもしくはより多くの機能が1つの処理モジュールに統合され得る。統合されたモジュールは、ハードウェアの形式で実装され得るか、または、ソフトウェア機能モジュールの形式で実装され得る。本願の実施形態におけるモジュール分割は、例であり、論理的機能分割に過ぎないことに注意すべきである。実際の実装において、別の分割方式が使用され得る。
機能モジュールが機能と一対一の対応関係に分割されるとき、図11は、上記の実施形態における端末の可能な概略構成図である。図11に示されるように、端末1000は、表示モジュール1001、処理モジュール1002、通信モジュール1003を含み得る。
処理モジュール1002は、端末のバックグラウンド電力消費電流値が予め設定された電流値より大きいとき、バックグラウンド電力消費電流値を低減するようターゲットアプリケーションプログラムを制御するよう構成され、バックグラウンド電力消費電流値は、端末上のバックグラウンドアプリケーションプログラム全部の電力消費電流値の和である。ターゲットアプリケーションプログラムは、以下のアプリケーションプログラム、すなわち、使用頻度が予め設定された頻度閾値より低いバックグラウンドアプリケーションプログラム、電力消費が予め設定された電力消費閾値より大きいバックグラウンドアプリケーションプログラム、異常な電力消費を有するバックグラウンドアプリケーションプログラムのうち少なくとも1つまたは複数を含む。
任意選択で、通信モジュール1003は、クラウドサーバによってプッシュされた予め設定された規則を受信するよう構成され、ここで、予め設定された規則は、各アプリケーションプログラムに対応する最大電力消費電流値を含む。
任意選択で、表示モジュール1001は、画面上にバックグラウンド電力消費電流値を表示するよう構成される。
上記方法の実施形態における段階の全部の関連内容は、対応する機能モジュールの機能説明において引用され得る。ここで詳細について再度説明はしない。
統合されたユニットが使用されるとき、図12は、上記の実施形態における端末の可能な概略構造図である。端末1100は、処理ユニット1101および通信ユニット1102を備える。処理ユニット1101は、バックグラウンド電力消費電流値を検出するよう構成され、バックグラウンド電力消費電流値は、端末上のバックグラウンドアプリケーションプログラム全部の電力消費電流値の和である。また、バックグラウンド電力消費電流値が予め設定された電流値より大きいとき、バックグラウンド電力消費電流値を低減するように、ターゲットアプリケーションプログラムを制御するよう構成される。ターゲットアプリケーションプログラムは、以下のアプリケーションプログラム、すなわち、使用頻度が予め設定された頻度閾値より低いバックグラウンドアプリケーションプログラム、電力消費が予め設定された電力消費閾値より大きいバックグラウンドアプリケーションプログラム、異常な電力消費を有するバックグラウンドアプリケーションプログラムのうち少なくとも1つまたは複数を含む。処理ユニット1101は更に、本明細書において説明される技術の別のプロセスに使用される。通信ユニット1102は、端末と別のネットワークエンティティとの間の通信、例えば、図5に示される端末とクラウドサーバとの間の通信をサポートするよう構成される。端末1100は更に、端末のプログラムコードおよびデータを格納するよう構成されるストレージユニット1103を備え得る。端末1100は更にディスプレイユニット1104を含み得る。
図13を参照すると、本願の実施形態は更に、1つまたは複数のプロセッサ1202、ディスプレイ1203、通信インタフェース1204、メモリ1201およびバス1205を含む端末1200を提供する。1つまたは複数のプロセッサ1202、ディスプレイ1203、通信インタフェース1204、およびメモリ1201は、バス1205を使用することによって相互接続される。
1つまたは複数のプロセッサ1202は、バックグラウンド電力消費電流値が予め設定された電流値より大きいとき、バックグラウンド電力消費電流値を低減するようターゲットアプリケーションプログラムを制御するよう構成され、バックグラウンド電力消費電流値は、端末上のバックグラウンドアプリケーションプログラム全部の電力消費電流値の和である。ターゲットアプリケーションプログラムは、以下のアプリケーションプログラム、すなわち、使用頻度が予め設定された頻度閾値より低いバックグラウンドアプリケーションプログラム、電力消費が予め設定された電力消費閾値より大きいバックグラウンドアプリケーションプログラム、および、異常な電力消費を有するバックグラウンドアプリケーションプログラムのうち少なくとも1つまたは複数を含む。
上記方法の実施形態における段階の全部の関連内容は、対応する機能モジュールの機能説明において引用され得る。ここで詳細について再度説明はしない。
1または複数のプログラムは、メモリ1201に格納される。メモリ1201は主に、プログラム格納領域およびデータ格納領域を含み得る。プログラム格納領域は、オペレーティングシステム、および、少なくとも1つの機能によって要求されるアプリケーションプログラム(Application、APP)などを格納し得る。データ格納領域は、端末1200などの使用に基づいて生成されるデータを格納し得る。加えて、メモリ1201は、高速ランダムアクセスメモリを含み得、不揮発性メモリ、例えば、少なくとも1つの磁気ディスクストレージデバイス、フラッシュメモリデバイス、または別の半導体記憶媒体を更に含み得る。
1つまたは複数のプロセッサ1202は、中央演算処理装置(Central Processing Unit、CPU)、汎用プロセッサ、デジタル信号プロセッサ(Digital Signal Processor、DSP)、特定用途向け集積回路(Application-Specific Integrated Circuit、ASIC)、フィールドプログラマブルゲートアレイ(Field Programmable Gate Array、FPGA)、または、別のプログラム可能論理デバイス、トランジスタ論理デバイス、ハードウェアコンポーネント、またはそれらの任意の組み合わせであり得る。プロセッサは、本願に開示される内容に関連して説明される様々な例の論理ブロック、モジュール、回路を実装または実行し得る。代替的に、プロセッサは、計算機能を実装するための組み合わせ、例えば、1または複数のマイクロプロセッサを含む組み合わせ、または、DSPおよびマイクロプロセッサの組み合わせであり得る。
ディスプレイ1203は、具体的には、液晶ディスプレイ、または有機発光ダイオードなどの形式で構成され得る。加えて、タッチパッドは、ディスプレイ1203上に統合され得、タッチパッド上、またはその付近のタッチイベントを収集し、収集されたタッチ情報を別のコンポーネント(例えばプロセッサ1202)へ送信する。
通信インタフェース1204は、端末1200と別の装置との間の相互通信に使用される。
バス1205は、ペリフェラルコンポーネントインターコネクト(Peripheral Component Interconnect、PCI)バス、又は拡張型業界標準アーキテクチャ(Extended Industry Standard Architecture、EISA)バスなどであってよい。バスは、アドレスバス、データバス、および制御バス等に分類され得る。表現を容易に行うために、図13においてはバスを表すのに1つの太線のみが用いられているが、このことは、1つのバスのみ、または1つのタイプのバスのみがあることを意味しない。
本願で開示される内容を参照し説明されている方法またはアルゴリズムのステップはハードウェアにより実装されてよく、または、プロセッサによってソフトウェア命令を実行することにより実装されてよい。ソフトウェア命令は対応するソフトウェアモジュールを含み得る。ソフトウェアモジュールは、ランダムアクセスメモリ(Random Access Memory、RAM)、フラッシュメモリ、リードオンリメモリ(Read Only Memory、ROM)、消去可能プログラム可能リードオンリメモリ(Erasable Programmable ROM、EPROM)、電気的消去可能プログラム可能リードオンリメモリ(Electrically EPROM、EEPROM)、レジスタ、ハードディスク、リムーバブルハードディスク、コンパクトディスクリードオンリメモリ(CD-ROM)、または、当技術分野において知られている任意の他の形式の記憶媒体に格納され得る。例としての記憶媒体がプロセッサに結合され、その結果、プロセッサは、情報を記憶媒体から読み込み、情報を記憶媒体に書き込むことができる。当然、記憶媒体は代替的に、プロセッサのコンポーネントであり得る。プロセッサおよび記憶媒体はASICに位置し得る。加えて、そのASICは、コアネットワークインタフェースデバイス内に配置され得る。当然、それらプロセッサおよび記憶媒体は、ディスクリートコンポーネントとしてそのコアネットワークインタフェースデバイス内に存在し得る。
当業者であれば、上記の1または複数の例において、本願において説明される機能は、ハードウェア、ソフトウェア、ファームウェア、または任意の組み合わせによって実装され得ることを理解するはずである。ソフトウェアが実装に使用されるとき、機能は、コンピュータ可読媒体に格納され得る、または、コンピュータ可読媒体において1または複数の命令または符号として伝送され得る。コンピュータ可読媒体は、コンピュータ記憶媒体および通信媒体を含み、ここで、通信媒体は、コンピュータプログラムを1つの場所から別の場所へ伝送させることを容易にする任意の媒体を含む。記憶媒体は、汎用または専用コンピュータによってアクセスできる任意の利用可能な媒体であり得る。
上記の説明は、本願の特定の実装に過ぎず、本願の保護範囲を限定する意図はない。本願で開示した技術的範囲内において、当業者が容易に想起する任意の変形例または置換例は、本願の保護範囲に属するものとする。従って、本願の保護範囲は、特許請求の範囲の保護範囲の対象になるものとする。
[項目1]
端末の電力消費を低減するための方法であって、
上記端末のバックグラウンド電力消費電流値が、予め設定された電流値より大きいとき、上記端末が、上記バックグラウンド電力消費電流値を低減するようターゲットアプリケーションプログラムを制御する段階であって、上記バックグラウンド電力消費電流値は、上記端末における全部のバックグラウンドアプリケーションプログラムの電力消費電流値の和である、段階を備え、
上記ターゲットアプリケーションプログラムは、以下のアプリケーションプログラム、すなわち、使用頻度が予め設定された頻度閾値より低いバックグラウンドアプリケーションプログラム、電力消費が予め設定された電力消費閾値より大きいバックグラウンドアプリケーションプログラム、および、異常な電力消費を有するバックグラウンドアプリケーションプログラムのうち少なくとも1つまたは複数を含む、方法。
[項目2]
異常な電力消費を有する上記バックグラウンドアプリケーションプログラムは、電力消費電流値が対応する最大電力消費電流値より大きいバックグラウンドアプリケーションプログラムであり、
上記端末がターゲットアプリケーションプログラムを制御する上記段階の前に、上記方法は、
上記端末が、クラウドサーバによってプッシュされた、または、ローカル統計から生成された、予め設定された規則を取得する段階であって、上記予め設定された規則は、少なくとも1つのアプリケーションプログラムに対応する最大電力消費電流値を含む、段階と、
上記端末が、上記予め設定された規則に従って、異常な電力消費を有する上記バックグラウンドアプリケーションプログラムを少なくとも1つのバックグラウンドアプリケーションプログラムから識別する段階と
を更に備える、項目1に記載の方法。
[項目3]
上記ターゲットアプリケーションプログラムは、ユーザ感知タスクを動作させないバックグラウンドアプリケーションプログラムを更に含み、
上記ユーザ感知タスクは、以下のタスク、すなわち、健全性試験タスク、ファイルダウンロードタスク、モーション検出タスク、および音声再生タスクのうち少なくともいずれか1つを含む、項目1に記載の方法。
[項目4]
上記方法は、
上記端末が、予め設定された時間間隔で上記バックグラウンド電力消費電流値を検出する段階を更に備える、項目1に記載の方法。
[項目5]
上記方法は、
上記端末が、画面上に上記バックグラウンド電力消費電流値を表示する段階を更に備える、項目4に記載の方法。
[項目6]
上記端末が、ターゲットアプリケーションプログラムを制御する上記段階の後に、上記方法は、
上記バックグラウンド電力消費電流値が上記予め設定された電流値より大きい場合、上記端末が、上記予め設定された時間間隔を短縮する段階
を更に備える、項目5に記載の方法。
[項目7]
上記端末が、ターゲットアプリケーションプログラムを制御する上記段階は、具体的には、
上記端末が上記ターゲットアプリケーションプログラムをクリーニングする段階、または、
上記端末が、上記ターゲットアプリケーションプログラムを制限する段階
を備える、項目1から6のいずれか一項に記載の方法。
[項目8]
上記端末が、予め設定された時間間隔で上記バックグラウンド電力消費電流値を検出する上記段階の前に、上記方法は、
上記端末が、電池残量に基づいて、上記予め設定された電流値を決定する段階
を更に備える、項目1から7のいずれか一項に記載の方法。
[項目9]
上記端末がアクティブ状態にあるとき、上記予め設定された電流値は第1電流値であり、上記端末がアイドル状態にあるとき、上記予め設定された電流値は第2電流値であり、上記第1電流値は上記第2電流値より大きい、項目8に記載の方法。
[項目10]
上記方法は、
上記端末の上記バックグラウンド電力消費電流値が上記予め設定された電流値より大きいとき、上記端末が、上記画面上でプロンプト情報を表示する段階であって、上記プロンプト情報は、少なくとも1つのターゲットアプリケーションプログラムを制御するためのプロンプトを表示するために使用される、段階と、
上記プロンプト情報に従ってユーザによって実行される操作の検出に応答して、上記端末が、上記少なくとも1つのターゲットアプリケーションプログラムを制御する段階と
を更に備える、項目1から9のいずれか一項に記載の方法。
[項目11]
端末であって、
上記端末のバックグラウンド電力消費電流値が、予め設定された電流値より大きいとき、上記バックグラウンド電力消費電流値を低減するようターゲットアプリケーションプログラムを制御するよう構成される処理モジュールを含み、上記バックグラウンド電力消費電流値は、上記端末における全部のバックグラウンドアプリケーションプログラムの電力消費電流値の和であり、
上記ターゲットアプリケーションプログラムは、以下のアプリケーションプログラム、すなわち、使用頻度が予め設定された頻度閾値より低いバックグラウンドアプリケーションプログラム、電力消費が予め設定された電力消費閾値より大きいバックグラウンドアプリケーションプログラム、および、異常な電力消費を有するバックグラウンドアプリケーションプログラムのうち少なくとも1つまたは複数を含む、端末。
[項目12]
異常な電力消費を有する上記バックグラウンドアプリケーションプログラムは、電力消費電流値が対応する最大電力消費電流値より大きいバックグラウンドアプリケーションプログラムであり、
上記端末は、通信モジュールを更に備え、
上記通信モジュールは、クラウドサーバによってプッシュされる、または、ローカル統計から生成される、予め設定された規則を取得するよう構成され、上記予め設定された規則は、各アプリケーションプログラムに対応する最大電力消費電流値を含み、
上記処理モジュールは更に、上記予め設定された規則に従って、少なくとも1つのバックグラウンドアプリケーションプログラムから、異常な電力消費を有する上記バックグラウンドアプリケーションプログラムを識別するよう構成される、
項目11に記載の端末。
[項目13]
上記ターゲットアプリケーションプログラムは、
ユーザ感知タスクを動作させないバックグラウンドアプリケーションプログラムを更に含み、
上記ユーザ感知タスクは、以下のタスク、すなわち、健全性試験タスク、ファイルダウンロードタスク、モーション検出タスクおよび音声再生タスクのうち少なくともいずれか1つを含む、
項目11に記載の端末。
[項目14]
上記処理モジュールは更に、予め設定された時間間隔で上記バックグラウンド電力消費電流値を検出するよう構成される、項目11に記載の端末。
[項目15]
上記端末は表示モジュールを更に備え、
上記表示モジュールは、画面上に上記バックグラウンド電力消費電流値を表示するよう構成される、項目14に記載の端末。
[項目16]
上記処理モジュールは更に、上記バックグラウンド電力消費電流値が上記予め設定された電流値より大きいとき、上記予め設定された時間間隔を短縮するよう構成される、項目15に記載の端末。
[項目17]
上記処理モジュールは具体的には、上記ターゲットアプリケーションプログラムをクリーニングする、または、上記ターゲットアプリケーションプログラムを制限するよう構成される、項目11から16のいずれか一項に記載の端末。
[項目18]
上記処理モジュールは更に、電池残量に基づいて上記予め設定された電流値を決定するよう構成される、項目11から18のいずれか一項に記載の端末。
[項目19]
上記端末がアクティブ状態にあるとき、上記予め設定された電流値は第1電流値であり、上記端末がアイドル状態にあるとき、上記予め設定された電流値は第2電流値であり、上記第1電流値は上記第2電流値より大きい、項目18に記載の端末。
[項目20]
上記表示モジュールは更に、上記端末の上記バックグラウンド電力消費電流値が、上記予め設定された電流値より大きいとき、上記画面上にプロンプト情報を表示するよう構成され、上記プロンプト情報は、少なくとも1つのターゲットアプリケーションプログラムを制御するためのプロンプトを表示するために使用され、
上記処理モジュールは更に、上記プロンプト情報に従ってユーザによって実行される操作の検出に応答して、上記少なくとも1つのターゲットアプリケーションプログラムを制御するよう構成される、
項目11から19のいずれか一項に記載の端末。
[項目21]
ディスプレイ、プロセッサ、メモリ、バスおよび通信インタフェースを備える端末であって、
上記メモリは、コンピュータ実行可能命令を格納するよう構成され、上記ディスプレイ、上記プロセッサ、および上記メモリは、上記バスを使用することによって接続され、上記端末が動作するとき、上記プロセッサは、上記メモリに格納された上記コンピュータ実行可能命令を実行し、その結果、上記端末は、以下の段階を実行する、すなわち、
上記プロセッサは、上記端末のバックグラウンド電力消費電流値が予め設定された電流値より大きいとき、上記バックグラウンド電力消費電流値を低減するようターゲットアプリケーションプログラムを制御するよう構成され、上記バックグラウンド電力消費電流値は、上記端末における全部のバックグラウンドアプリケーションプログラムの電力消費電流値の和であり、
上記ターゲットアプリケーションプログラムは、以下のアプリケーションプログラム、すなわち、
使用頻度が予め設定された頻度閾値より低いバックグラウンドアプリケーションプログラム、電力消費が予め設定された電力消費閾値より大きいバックグラウンドアプリケーションプログラム、異常な電力消費を有するバックグラウンドアプリケーションプログラムのうち少なくとも1つまたは複数を含む、
端末。
[項目22]
異常な電力消費を有する上記バックグラウンドアプリケーションプログラムは、電力消費電流値が対応する最大電力消費電流値より大きいバックグラウンドアプリケーションプログラムであり、
上記通信インタフェースは、クラウドサーバによってプッシュされた、または、ローカル統計から生成された、予め設定された規則を取得するよう構成され、上記予め設定された規則は、各アプリケーションプログラムに対応する最大電力消費電流値を含み、
上記プロセッサは、上記予め設定された規則に従って、少なくとも1つのバックグラウンドアプリケーションプログラムから、異常な電力消費を有する上記バックグラウンドアプリケーションプログラムを識別するよう構成される、項目21に記載の端末。
[項目23]
上記ターゲットアプリケーションプログラムは、
ユーザ感知タスクを動作させないバックグラウンドアプリケーションプログラムを更に含み、
上記ユーザ感知タスクは、以下のタスク、すなわち、健全性試験タスク、ファイルダウンロードタスク、モーション検出タスクおよび音声再生タスクのうち少なくともいずれか1つを含む、
項目21に記載の端末。
[項目24]
上記プロセッサは更に、予め設定された時間間隔で上記バックグラウンド電力消費電流値を検出するよう構成される、項目21に記載の端末。
[項目25]
上記ディスプレイは、画面上に上記バックグラウンド電力消費電流値を表示するよう構成される、項目24に記載の端末。
[項目26]
上記プロセッサは更に、上記バックグラウンド電力消費電流値が上記予め設定された電流値より大きいとき、上記予め設定された時間間隔を短縮するよう構成される、項目25に記載の端末。
[項目27]
上記プロセッサは具体的には、上記ターゲットアプリケーションプログラムをクリーニングする、または、上記ターゲットアプリケーションプログラムを制限するよう構成される、項目21から26のいずれか一項に記載の端末。
[項目28]
上記プロセッサは更に、電池残量に基づいて、上記予め設定された電流値を決定するよう構成される、項目21から27のいずれか一項に記載の端末。
[項目29]
上記端末がアクティブ状態にあるとき、上記予め設定された電流値は、第1電流値にあり、上記端末がidle状態にあるとき、上記予め設定された電流値は第2電流値であり、上記第1電流値は、上記第2電流値より大きい、項目28に記載の端末。
[項目30]
上記ディスプレイは更に、上記端末の上記バックグラウンド電力消費電流値が、上記予め設定された電流値より大きいとき、上記画面上にプロンプト情報を表示するよう構成され、上記プロンプト情報は、少なくとも1つのターゲットアプリケーションプログラムを制御するためのプロンプトを表示するために使用され、
上記プロセッサは更に、上記プロンプト情報に従ってユーザによって実行される操作の検出に応答して、上記少なくとも1つのターゲットアプリケーションプログラムを制御するよう構成される、
項目21から29のいずれか一項に記載の端末。
[項目31]
命令を含むコンピュータ可読記憶媒体であって、上記命令がコンピュータ上で動作するとき、上記コンピュータは、端末の電力消費を低減するための、項目1から10のいずれか一項に記載の方法を実行することが可能になる、コンピュータ可読記憶媒体。
[項目32]
命令を含むコンピュータプログラムプロダクトであって、上記コンピュータプログラムプロダクトがコンピュータ上で動作するとき、上記コンピュータは、端末の電力消費を低減するための、項目1から10のいずれか一項に記載の方法を実行することが可能になる、コンピュータプログラムプロダクト。