JP2020537211A - アプリケーション管理方法および端末 - Google Patents

アプリケーション管理方法および端末 Download PDF

Info

Publication number
JP2020537211A
JP2020537211A JP2020513847A JP2020513847A JP2020537211A JP 2020537211 A JP2020537211 A JP 2020537211A JP 2020513847 A JP2020513847 A JP 2020513847A JP 2020513847 A JP2020513847 A JP 2020513847A JP 2020537211 A JP2020537211 A JP 2020537211A
Authority
JP
Japan
Prior art keywords
terminal
background application
preset
application
task
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2020513847A
Other languages
English (en)
Inventor
グオ、ユファ
ツァオ、ジン
ファン、ウェン
Original Assignee
ホアウェイ・テクノロジーズ・カンパニー・リミテッド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ホアウェイ・テクノロジーズ・カンパニー・リミテッド filed Critical ホアウェイ・テクノロジーズ・カンパニー・リミテッド
Publication of JP2020537211A publication Critical patent/JP2020537211A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5022Mechanisms to release resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/461Saving or restoring of program or task context
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/485Task life-cycle, e.g. stopping, restarting, resuming execution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • G06F9/5088Techniques for rebalancing the load in a distributed system involving task migration

Abstract

命令を含むアプリケーション管理方法、端末、コンピュータ可読記憶媒体、およびコンピュータプログラムプロダクトが開示される。方法は、バックグラウンドアプリケーションが予め設定された条件を満たしたとき、バックグラウンドアプリケーションを中断する段階(301)と、バックグラウンドアプリケーションを中断したとき、バックグラウンドアプリケーションと通信モジュールとの間の通信リンクを切断する段階(302)と、を含む。端末上のバックグラウンドアプリケーションの管理に適用可能であり、本方法は、大量のアプリケーションがバックグラウンドで動作するときに端末のバッテリ寿命が減少するという、従来技術に見られる問題を解消する意図である。

Description

本願は、端末技術の分野に関し、特に、アプリケーション管理方法および端末に関する。
現在、ますます多くの携帯電話およびタブレットコンピュータなどの端末が、マルチタスキングオペレーティングシステムをサポートしている。マルチタスキングオペレーティングシステムが適用された後、端末は複数の異なるアプリケーションプログラム(Application、APP)を同時に動作させることができる。アプリケーションプログラムは、また、簡潔にはアプリケーションと呼ばれることがある。端末が同時に動作させるアプリケーションは、フォアグラウンドアプリケーションおよびバックグラウンドアプリケーションを含み得る。フォアグラウンドアプリケーションは、端末がユーザインタフェースを表示するアプリケーションのことを指し、ユーザがアプリケーションを用いていることを示す。バックグラウンドアプリケーションは、端末がユーザインタフェースを全く表示しないアプリケーションのことを指す。
バックグラウンドアプリケーションは、表示されるユーザインタフェースを有しないが、依然として端末のリソースを占め、端末の電力を消費する。したがって、端末上に大量のバックグラウンドアプリケーションがあるとき、端末はフリーズしがちであり、電力消費は比較的高く、端末のバッテリ寿命の短縮をもたらす。
本願の複数の実施形態は、大量のアプリケーションがバックグラウンドで動作するときに端末のバッテリ寿命が減少するという、従来技術に見られる問題を解消する、アプリケーション管理方法および端末を提供する。
上述の目的を達成するように、本願の複数の実施形態は、以下の技術的解決法をサポートする。
第1の態様によると、アプリケーション管理方法が提供される。方法は端末に適用され、ここで、端末は通信モジュールを含む。方法は、バックグラウンドアプリケーションが、予め設定された中断条件を満たしたとき、端末が、バックグラウンドアプリケーションを中断する段階と、バックグラウンドアプリケーションを中断するとき、バックグラウンドアプリケーションと通信モジュールとの間の通信リンクを、端末が切断する段階と、を含む。
本願のこの一実施形態において提供されるアプリケーション管理方法において、バックグラウンドアプリケーションは、予め設定された中断条件を満たしたときに中断されることができ、中断されたバックグラウンドアプリケーションと通信モジュールとの間の通信リンクは、同時に無効とすることができる。これにより、中断されたバックグラウンドアプリケーションを、アプリケーションサーバがネットワークを介して再アクティブ化することを回避し、バックグラウンドにおけるアプリケーションの実行を保持し、それにより、端末の電力消費を低減させて、端末のバッテリ寿命を長くさせる。加えて、中断されたバックグラウンドアプリケーションと通信モジュールとの間の通信リンクを無効にすることは、中断されたバックグラウンドアプリケーションをネットワークから単に切断することにすぎない。このことは、中断されていないアプリケーションによるネットワークの使用への影響をなくし、したがって、中断されていないアプリケーションをユーザが用いることを妨げない。
可能な設計方法において、バックグラウンドアプリケーションが、予め設定された中断条件を満たしたとき、端末が、バックグラウンドアプリケーションを中断する段階は、バックグラウンドアプリケーションが、処理中のいかなるタスクも有さないとき、端末が、バックグラウンドアプリケーションを中断することを含む。
バックグラウンドアプリケーションが、処理中のいかなるタスクも有さないことは、バックグラウンドアプリケーションの全てのタスクが処理されたこと、または、バックグラウンドアプリケーションが処理すべきタスクを有し、処理すべきタスクがスタートアップ条件を満たしていないことを含む。
この実装において、スタートアップ条件は、予め設定されたスタート時刻を含む。同様に、処理すべきタスクがスタートアップ条件を満たしていないことは、時刻が予め設定されたスタート時刻に達していないことを含む。
この実装において、スタートアップ条件は、予め設定された速度を含み得る。同様に、処理すべきタスクがスタートアップ条件を満たしていないことは、端末の速度が予め設定された速度に達していないことを含む。
スタートアップ条件を有するバックグラウンドアプリケーションに関して、バックグラウンドアプリケーションが中断された後、方法はさらに、処理すべきタスクがスタートアップ条件を満たしたとき、端末が、バックグラウンドアプリケーションをアクティブ化することを含むことが理解され得る。
可能な設計方法において、バックグラウンドアプリケーションが予め設定された中断条件を満たすことは、バックグラウンドアプリケーションがいかなる予め設定されたタスクも有さないことを含み、ここで、予め設定されたタスクは、バックグラウンドアプリケーションがバックグラウンドに入る前に端末が設定するタスクであり、バックグラウンドアプリケーションがバックグラウンドに入った後に、実行を続けるように端末がバックグラウンドアプリケーションに指示するタスクであり、予め設定されたタスクは、以下のタスク、すなわち、スポーツデータを取得すること、位置決定すること、および音声を再生すること、のうち任意の1つを含む。
可能な設計方法において、バックグラウンドアプリケーションと通信モジュールとの間の通信リンクを切断することは、バックグラウンドアプリケーションの予め設定されたネットワークポートを無効にすることを含み、ここで、予め設定されたネットワークポートは、バックグラウンドアプリケーションと通信モジュールとの間の通信リンクを確立するように用いられる。オプションで、予め設定されたネットワークポートは、端末が伝送制御プロトコル(Transmission Control Protocol,TCP)/インターネットプロトコル(Internet Protocol,IP)をサポートするとき、端末によってバックグラウンドアプリケーションに関して割り当てられたソケット(Socket)ポートであり得る。
第2の態様によると、端末が提供される。端末は、処理モジュールおよび通信モジュールを含む。
処理モジュールは、バックグラウンドアプリケーションが予め設定された中断条件を満たすかどうか判断することと、バックグラウンドアプリケーションが予め設定された中断条件を満たす場合、バックグラウンドアプリケーションを中断することと、バックグラウンドアプリケーションを中断したとき、バックグラウンドアプリケーションと通信モジュールとの間の通信リンクを切断することと、を行うように構成される。
可能な設計方法において、処理モジュールはさらに、バックグラウンドアプリケーションが処理中のタスクを有するかどうか判断するように構成される。
処理モジュールはさらに、バックグラウンドアプリケーションの全てのタスクが処理されたかどうか判断するように構成される。代わりに、処理モジュールはさらに、バックグラウンドアプリケーションが処理すべきタスクを有するかどうか、および、処理すべきタスクがスタートアップ条件を満たすかどうか判断するように構成される。
この実装において、スタートアップ条件は、予め設定されたスタート時刻を含む。同様に、処理モジュールはさらに、時間が予め設定されたスタート時刻に達したかどうか判断するように構成される。
代わりに、スタートアップ条件は、予め設定された速度を含む。同様に、処理モジュールはさらに、端末の速度が予め設定された速度に達したかどうか判断するように構成される。
処理すべきタスクを有するバックグラウンドアプリケーションに関して、処理モジュールはさらに、処理すべきタスクがスタートアップ条件を満たしたときにバックグラウンドアプリケーションをアクティブ化するように構成されることが理解され得る。
可能な設計方法において、処理モジュールはさらに、バックグラウンドアプリケーションが予め設定されたタスクを有するかどうか判断するように構成される。例えば、予め設定されたタスクは、バックグラウンドアプリケーションがバックグラウンドに入る前に端末が設定するタスクであり、バックグラウンドアプリケーションがバックグラウンドに入った後に、実行を続けるように端末がバックグラウンドアプリケーションに指示するタスクであり、予め設定されたタスクは、以下のタスク、すなわち、スポーツデータを取得すること、位置決定すること、および音声を再生すること、のうち任意の1つを含む。
可能な設計方法において、処理モジュールはさらに、バックグラウンドアプリケーションの予め設定されたネットワークポートを無効にするように構成され、ここで、予め設定されたネットワークポートは、バックグラウンドアプリケーションと通信モジュールとの間の通信リンクを確立するように構成される。予め設定されたネットワークポートは、端末がTCP/IPプロトコルをサポートするときにバックグラウンドアプリケーションに関して端末によって割り当てられるソケットポートであり得る。
第3の態様によると、端末が提供される。端末は、プロセッサ、通信インタフェース、およびメモリを含み、ここで、メモリはコンピュータ実行可能命令を格納するように構成され、プロセッサおよびメモリはバスを介して接続され、端末が動作するとき、プロセッサはメモリに格納されたコンピュータ実行可能命令を実行して、端末に、
バックグラウンドアプリケーションが予め設定された中断条件を満たすかどうか判断することと、
バックグラウンドアプリケーションが予め設定された中断条件を満たす場合、バックグラウンドアプリケーションを中断することと、
バックグラウンドアプリケーションを中断したとき、バックグラウンドアプリケーションと通信インタフェースとの間の通信リンクを切断することと、
の実行を可能にする。
可能な設計方法において、プロセッサはさらに、バックグラウンドアプリケーションが処理中のタスクを有するかどうか判断するように構成される。
プロセッサはさらに、バックグラウンドアプリケーションの全てのタスクが処理されたかどうか判断するように構成される。代わりに、プロセッサはさらに、バックグラウンドアプリケーションが処理すべきタスクを有するかどうか、および、処理すべきタスクがスタートアップ条件を満たすかどうか、判断するように構成される。
この実装において、スタートアップ条件は、予め設定されたスタート時刻を含む。同様に、プロセッサはさらに、時刻が予め設定されたスタート時刻に達したかどうか判断するように構成される。
代わりに、スタートアップ条件は、予め設定された速度を含む。同様に、プロセッサはさらに、端末の速度が予め設定された速度に達したかどうか判断するように構成される。
処理すべきタスクを有するバックグラウンドアプリケーションに関して、プロセッサがさらに、処理すべきタスクがスタートアップ条件を満たしたときに、バックグラウンドアプリケーションをアクティブ化するように構成されることが理解され得る。
可能な設計方法において、プロセッサはさらに、バックグラウンドアプリケーションが予め設定されたタスクを有するかどうか判断するように構成される。例えば、予め設定されたタスクは、バックグラウンドアプリケーションがバックグラウンドに入る前に端末が設定するタスクであり、バックグラウンドアプリケーションがバックグラウンドに入った後に、実行を続けるように端末がバックグラウンドアプリケーションに指示するタスクであり、予め設定されたタスクは、以下のタスク、すなわち、スポーツデータを取得すること、位置決定すること、音声を再生すること、のうち任意の1つを含む。
可能な設計方法において、プロセッサはさらに、バックグラウンドアプリケーションの予め設定されたネットワークポートを無効にするように構成される。予め設定されたネットワークポートは、端末がTCP/IPプロトコルをサポートするときに、バックグラウンドアプリケーションに関して端末によって割り当てられるソケットポートであり得る。
第4の態様によると、コンピュータ可読記憶媒体が提供され、ここで、コンピュータ可読記憶媒体は命令を格納する。命令が端末上で動作するとき、端末は第1の態様によるアプリケーション管理方法を実行することを可能にされる。
第5の態様によると、本願の一実施形態は、命令を含むコンピュータプログラムプロダクトを提供する。コンピュータプログラムプロダクトが端末上で動作するとき、端末は第1の態様によるアプリケーション管理方法を実行することを可能にされる。
本願の複数の実施形態において、端末のユニットモジュールの名称は、デバイス上のいかなる限定も構成しない。実際の実装において、これらのユニットモジュールは、他の名称で提供され得る。ユニットモジュールの機能が本願の複数の実施形態におけるそれらと同様であるならば、ユニットモジュールの機能は、本願の請求項およびそれらの均等技術によって画定される範囲内にある。
Doze機構を用いた端末の状態遷移の概略図である。
本願の一実施形態に係る端末の概略構造図である。
本願の一実施形態によるアプリケーション管理方法の概略フローチャートである。
本願の一実施形態によるバックグラウンドアプリケーションに関して割り当てられたソケットポートの無効化の概略図である。
本願の一実施形態によるバックグラウンドアプリケーション管理に関するユーザインタフェースの概略図である。
本願の一実施形態による地図ナビゲーションアプリケーションの中断設定に関するユーザインタフェースの概略図である。
本願の一実施形態による別のアプリケーション管理方法の概略フローチャートである。
本願の一実施形態に係る端末の概略構造図である。
本願の一実施形態に係る別の端末の概略構造図である。
以下の用語「第1」および「第2」は、説明の目的のために意図されたものにすぎず、相対的に重要であるとのいかなる表示または示唆とも理解されるものではなく、指示された技術的特徴の量のいかなる暗示的な表示とも理解されるものではない。したがって、「第1」または「第2」によって変更された特徴は、1または複数のそのような特徴を、明確に、または暗示的に含み得る。本願の複数の実施形態の説明において、他のことが述べられない限り、「複数の」は2つまたは2つより大きいことを意味する。
従来技術において、アプリケーション管理のためのDoze機構が、端末の電力消費を減少させるために提案された。Doze機構において、端末は5つの状態を有し、それらはそれぞれACTIVE(アクティブ)、INACTIVE(非アクティブ)、IDLE_PENDING(アイドルペンディング)、IDLE(アイドル)、およびIDLE_MAINTENANCE(アイドルメンテナンス)である。以下に、端末がこの5つの状態の間をどのように遷移するかを具体的に説明する。
図1に示されるように、端末が使用中、または充電のために電源に接続されているとき、端末はACTIVE状態にある。端末が画面オフになり充電されていないとき、端末はACTIVE状態からINACTIVE状態へと遷移する。端末が第1の設定された時間T1(例えば、30分)のうちにアクティブ化されない場合、端末はINACTIVE状態からIDLE_PENDING状態へと遷移する。端末が第2の設定された時間T2(例えば、1分)のうちにアクティブ化されない場合、端末はIDLE_PENDING状態からIDLE状態へと遷移する。
端末がIDLE状態にあるとき、端末は、端末の電力消費を縮小するように、例えば、ホワイトリストに入っていないバックグラウンドアプリケーションがネットワークに接続することを阻止し、ウェイクロック(Wake Lock)機能を無効にし、バックグラウンドアプリケーションのタスクを中断することによって、バックグラウンドアプリケーションを制御する。バックグラウンドアプリケーションのタスクを中断することは、タスクのステータスおよび処理されたデータを保存すること、タスクを処理する処理を中断すること、および、タスクに割り当てられたリソースを解放することを含む。
加えて、端末が第3の設定された時間T3(例えば、30分)より長くIDLE状態にあるとき、端末はIDLE_MAINTENANCE状態へと遷移する。端末は、第4の設定された時間T4(例えば、30秒)の間、IDLE_MAINTENANCE状態にとどまり、したがって、端末は、バックグラウンドアプリケーション上でルーチンの処理を実装し得る。例えば、端末は、バックグラウンドアプリケーションがネットワークを用いて中断されたタスクを処理することを可能にする。そして、端末は、IDLE_MAINTENANCE状態からIDLE状態へと戻るように遷移する。
もちろん、端末が再び画面オンになるとき、端末がINACTIVE状態、IDLE_PENDING状態、IDLE状態、またはIDLE_MAINTENANCE状態のいずれにあるかにかかわらず、端末は直接ACTIVE状態へと遷移する。
上述のDoze機構において、端末がIDLE状態にあるときのみ、端末は、端末の電力消費を低減するようにバックグラウンドアプリケーションを効率的に管理し得る。しかしながら、端末がINACTIVE、IDLE_PENDING、およびIDLE_MAINTENANCEの3つの遷移状態にあるとき、バックグラウンドアプリケーションは依然として実行されており、したがって、電力を消費し続け、不必要な電力消費につながる。
端末がこれら3つの遷移状態にあるとき、端末は、バックグラウンドアプリケーションがネットワークを用いることを可能にする。このことは、アプリケーションサーバがネットワークを介してバックグラウンドアプリケーションをアクティブ化し、さらに、バックグラウンドアプリケーションがバックグラウンドで実行されることを保持することの、助けとなる。したがって、Doze機構を介して電力消費を制御しようという端末の取り組みは台無しになり、端末の電力消費は相対的に高くとどまり、端末のバッテリ寿命は低減する。
端末の電力消費を縮小するように、本願の複数の実施形態は、アプリケーション管理方法を提供する。少なくとも1つのバックグラウンドアプリケーションが所与の条件を満たすことを判断した後、端末は直接、バックグラウンドアプリケーションを中断し、バックグラウンドアプリケーションと通信モジュールとの間の通信リンクを無効にする。したがって、バックグラウンドアプリケーションはアプリケーションサーバによってアクティブ化されることができ、端末の電力消費を低減し、端末のバッテリ寿命は長くなる。アプリケーション管理方法は、携帯電話、ウェアラブルデバイス、拡張現実(Augmented Reality、AR)/仮想現実(Virtual Reality、VR)デバイス、タブレットコンピュータ、ラップトップコンピュータ、ウルトラモバイルパーソナルコンピュータ(Ultra−Mobile Personal Computer、UMPC)、ネットブック、パーソナルデジタルアシスタント(Personal Digital Assistant、PDA)などの、任意の端末に適用され得る。以下の実施形態において、端末の具体的な形は多少なりとも限定されるものではない。
図2に示されるように、本願の複数の実施形態における端末は、携帯電話200であり得る。以下は、具体的に実施形態を説明する例として、携帯電話200を用いる。示された携帯電話200は、上述の端末の一例にすぎず、携帯電話200は、図に示されるものより多いまたはより少ない構成要素を有し得、組み合わされた2つ以上の構成要素を有し得、または、異なる構成要素配置を有し得ることが、理解されるべきである。
図2に示されるように、携帯電話200は、具体的には、プロセッサ201、無線周波数(Radio Frequency、RF)回路202、メモリ203、タッチスクリーン204、Bluetooth(登録商標)装置205、1または複数のセンサ206、ワイヤレス・フィディリティ(Wireless Fidelity、Wi−Fi(登録商標))装置207、測位装置208、音声回路209、周辺機器インタフェース220、および電力システム211などの構成要素を含み得る。これらの構成要素は、1または複数の通信バスまたは信号線(図2には不図示)を介して、互いに通信し得る。当業者は、図2に示されるハードウェア機構が、携帯電話上にいかなる限定も構成しないことを理解し得る。携帯電話200は、図2に示されるものより多いまたはより少ない構成要素を含み得、または、組み合わされたいくつかの構成要素を有し得、または異なる構成要素配置を有し得る。
携帯電話200の構成要素は、図2を参照して、以下に具体的に説明される。
プロセッサ201は、携帯電話200の制御の中心であり、様々なインタフェースおよび線を用いて、携帯電話200の様々な部品を接続し、メモリ203に格納されたアプリケーションを実行し、メモリ203に格納されたデータを呼び出すことによって、携帯電話200の様々な機能、および処理データを実行する。いくつかの実施形態において、プロセッサ201は、1または複数の処理ユニットを含み得る。例えば、プロセッサ201は、Huawei Technologies Co., Ltd.によって製造されたKirin960チップであり得る。本願のいくつかの複数の実施形態において、プロセッサ201はさらに、収集された指紋の認証のための、指紋認証チップを含み得る。
無線周波数回路202は、情報送信または受信の最中、または通話の最中に、無線信号を送信または受信するように構成され得る。特に、基地局からダウンリンクデータを受信した後、無線周波数回路202は、処理のためにプロセッサ201にデータを送信し得、加えて、基地局にアップリンク関連データを送信し得る。典型的には、無線周波数回路は、アンテナ、少なくとも1つの増幅器、送受信器、カプラ、低ノイズ増幅器、デュプレクサなどを含むが、それらに限定されるものではない。加えて、無線周波数回路202は、無線通信を介して別のデバイスと通信し得る。無線通信は、移動通信のためのグローバルシステム、汎用パケット無線サービス、符号分割多重アクセス、ワイドバンド符号分割多重アクセス、ロングタームエボリューション、電子メール、ショートメッセージサービスなどを含むがそれらに限定されるものではない、任意の無線通信規格またはプロトコルも用い得る。
メモリ203は、アプリケーションおよびデータを格納するように構成され、プロセッサ201は、携帯電話200の様々な機能を実行し、メモリ203に格納されたアプリケーションおよびデータを実行することによってデータを処理する。メモリ203は、プログラム格納領域およびデータ格納領域を主に含む。プログラム格納領域は、オペレーティングシステム、および少なくとも1つの機能(音声再生機能およびイメージ再生機能など)によって必要とされるアプリケーションを格納し得る。データ格納領域は、携帯電話200の使用に基づいて形成されるデータ(音声データおよび電話帳など)を格納し得る。加えて、メモリ203は、高速度ランダムアクセスメモリ(Random Access Memory、RAM)を含み得、さらに、磁気ディスクストレージデバイスなどの非揮発性メモリ、フラッシュメモリデバイス、または別の揮発性ソリッドステートストレージデバイスを含み得る。メモリ203は、Appleによって開発されたiOS(登録商標)オペレーティングシステム、およびGoogleによって開発されたAndroid(登録商標)オペレーティングシステムなどの様々なオペレーティングシステムを格納し得る。メモリ203は、スタンドアローンであり得、通信バスを介してプロセッサ201に接続され得る。代わりに、メモリ203は、プロセッサ201と統合され得る。
タッチスクリーン204は、具体的には、タッチパネル204−1およびディスプレイ204−2を含み得る。
タッチパネル204−1は、タッチパネル204−1の上または近くでの、携帯電話200のユーザによって実行されたタッチ操作(例えば、指またはスタイラスといった任意の適用可能なオブジェクトを用いて、例えば、タッチパネル204−1の上または近くでユーザによって実行される操作)を収集し得、収集されたタッチ情報を別のデバイス(例えば、プロセッサ201)に送信し得る。ユーザによるタッチパネル204−1の近くでのタッチ操作は、ホバータッチと呼ばれることがある。ホバータッチは、ターゲット(例えば、制御)の選択、移動またはドラッグのためにユーザがタッチパネルに直接タッチすることが必要とされず、意図された機能を実行するために端末の近くにとどまることのみが必要とされる、という意味であり得る。加えて、タッチパネル204−1は、抵抗タイプ、容量タイプ、赤外線タイプ、表面音響波タイプなどの様々なタイプで実装され得る。
ディスプレイ(ディスプレイスクリーンとしてもまた知られる)204−2は、ユーザによって入力された情報またはユーザに提供された情報、および、携帯電話200の様々なメニューを表示するように構成され得る。ディスプレイ204−2は、液晶ディスプレイ、有機発光ダイオードスクリーンなどの形で構成され得る。タッチパネル204−1は、ディスプレイ204−2を覆い得る。タッチパネル204−1の上または近くでタッチイベントを検出した後、タッチパネル204−1は、タッチイベントのタイプを判断するようにプロセッサ201にタッチイベントを送信して、そして、プロセッサ201は、タッチイベントのタイプに基づいて対応する視覚的出力をディスプレイ204−2上に提供し得る。図2において、2つのスタンドアローンな構成要素としてタッチパネル204−1およびディスプレイスクリーン204−2が用いられ、携帯電話200の入力および出力機能を実装する。しかしながら、いくつかの実施形態において、タッチパネル204−1およびディスプレイスクリーン204−2は、携帯電話200の入力および出力機能を実装するように統合され得る。タッチスクリーン204が、複数の素材のレイヤの積層によって形成されることが、理解され得る。本願の複数の実施形態において、タッチパネル(レイヤ)およびディスプレイスクリーン(レイヤ)のみが示される。他のレイヤは、本願のこの一実施形態においては説明されない。加えて、タッチパネル204−1は、完全なパネルの形で携帯電話200の前方に構成され得、ディスプレイスクリーン204−2もまた、完全なパネルの形で携帯電話200の前方に構成され得、したがって、ベゼルフリー機構が、携帯電話の前方に実装され得る。
加えて、携帯電話200は、指紋認識機能をさらに有する。例えば、指紋リーダ212は、携帯電話200の背部(例えば、以下のリアカメラ)に構成され得、または、携帯電話200の前方(例えば、以下のタッチスクリーン204)に構成され得る。別の例に関して、指紋コレクタ212が、指紋認識機能を実装するようにタッチスクリーン204内に構成され得る。すなわち、指紋コレクタ212は、携帯電話200の指紋認識機能を実装するように、タッチスクリーン204と統合され得る。この場合、指紋コレクタ212は、タッチスクリーン204の一部としてタッチスクリーン204内に構成され、または、別の方式でタッチスクリーン204内に構成され得る。本願の複数の実施形態において、指紋コレクタ212の主要な構成要素は、指紋センサである。指紋センサは、光学技術、容量技術、圧電技術、超音波技術などを含むが、それに限定されるものではない、任意のタイプの感知技術を用い得る。
携帯電話200はさらに、Bluetooth(登録商標)装置205を含み得、それは携帯電話200と別のショートレンジ端末(例えば、携帯電話またはスマートウォッチ)との間のデータのやり取りを実現するように構成される。本願の複数の実施形態において、Bluetooth(登録商標)装置は、集積回路、Bluetooth(登録商標)チップなどであり得る。
携帯電話200はさらに、光センサ、モーションセンサ、および他のセンサなどの、少なくとも1つのタイプのセンサ206を含み得る。具体的には、光センサは環境光センサおよび近接センサを含み得る。環境光センサは、環境光の輝度によってタッチスクリーン204のディスプレイのルミナンスを調整し得、近接センサは、携帯電話200が耳へと移動するときにディスプレイをオフにし得る。モーションセンサのタイプとして、加速度計センサは様々な方向(典型的には、3軸)の加速度の大きさを検出し得、静止状態における重力の大きさおよび方向を検出し得、携帯電話の姿勢認識アプリケーション(ランドスケープ/ポートレート切り替え、関連するゲーム、および磁力計姿勢キャリブレーションなど)、および振動認識関連機能(歩数計、またはノック認識など)などに適用され得る。携帯電話200内にまた構成され得る、ジャイロスコープ、気圧計、湿度計、温度計、および赤外線センサなどの他のセンサに関して、ここでは詳細は説明されない。
Wi−Fi(登録商標)装置207は、Wi−Fi(登録商標)関連の規格プロトコルに即して、ネットワークアクセスに携帯電話200を提供するように構成される。携帯電話200は、Wi−Fi(登録商標)装置207を用いて、Wi−Fi(登録商標)アクセスポイントにアクセスし得、電子メールを送信または受信する、ウェブページをブラウジングする、ストリーミング媒体にアクセスするなどのことにおいてユーザを支援し得る。Wi−Fi(登録商標)装置207は、無線ブロードバンドインターネットアクセスをユーザに提供する。いくつかの他の実施形態において、Wi−Fi(登録商標)装置207はまた、別の端末にWi−Fi(登録商標)ネットワークアクセスを提供するように、Wi−Fi(登録商標)無線アクセスポイントとして機能し得る。
測位装置208は、携帯電話200に地理的位置を提供するように構成される。測位装置208は、具体的には、グローバル・ポジショニング・システム(Global Positioning System、GPS)、Beidou衛星ナビゲーションシステム、またはロシアのGLONASSなどの、位置決定システムの受信機であり得ることが、理解され得る。上記で言及された位置決定システムによって送信される地理的位置を受信した後、測位装置208は、処理のために情報をプロセッサ201に送信し、または、格納のために情報をメモリ203に送信する。ある他の実施形態において、測位装置208は代わりに、アシスト型全地球測位システム(Assisted Global Positioning System、AGPS)の受信機であり得る。AGPSシステムは、距離測定および位置決定サービスを実行することにおいて、測位装置208を支援する補助サーバとしての機能を果たす。この場合、補助位置決定サーバは端末、例えば携帯電話200の測位装置208(GPS受信機である)と通信し、無線通信ネットワークを介して、位置決定への支援を提供する。いくつかの他の実施形態において、測位装置208は代わりに、Wi−Fi(登録商標)アクセスポイントに基づく位置決定技術であり得る。各Wi−Fi(登録商標)アクセスポイントがグローバルにただ1つのメディアアクセス制御(Media Access Control、MAC)アドレスを有するので、端末は、イネーブルにされたWi−Fi(登録商標)によって、周囲のWi−Fi(登録商標)アクセスポイントのブロードキャスト信号をスキャンおよび収集し、これらのWi−Fi(登録商標)アクセスポイントによってブロードキャストされるMACアドレスを取得し得る。端末は、Wi−Fi(登録商標)アクセスポイントを識別し得るデータ(MACアドレスなど)を、無線通信ネットワークを介して、ロケーションサーバに送信する。ロケーションサーバは、各Wi−Fi(登録商標)アクセスポイントの地理的位置を検索し、Wi−Fi(登録商標)ブロードキャスト信号の強さに基づいて端末の地理的位置を計算し、計算された地理的位置を、端末の測位装置208に送信する。
音声回路209、スピーカ213、およびマイク214は、ユーザと携帯電話200との間の音声インタフェースを提供し得る。音声回路209は、受信された音声データから転換された電気信号をスピーカ213に送信し得、スピーカ213は、出力のために、電気信号を音声信号に変換する。逆向きには、マイク214は捕捉された音声信号を電気信号に変換し、音声回路209は電気信号を受信してそれを音声データに変換し、そして、音声データが別の携帯電話に送信されることが可能となるように、音声データをRF回路202に出力し、または、さらなる処理を容易にするように、音声データがメモリ203に出力される。
周辺機器インタフェース220は、外部入出力デバイス(キーボード、マウス、外部ディスプレイ、外部メモリ、および加入者識別モジュールカードなど)のために、様々なインタフェースを提供するように構成される。例えば、マウスはユニバーサルシリアルバス(Universal Serial Bus、USB)インタフェースを用いて接続され、遠隔通信オペレータによって提供される加入者識別モジュール(Subscriber Identification Module、SIM)カードは、加入者識別モジュールカードスロットとの金属接触を介して接続される。周辺機器インタフェース220は、上述の外部入出力周辺機器を、プロセッサ201およびメモリ203と結合するように構成され得る。
携帯電話200はさらに、電力を様々な構成要素に供給する電源装置211(例えば、バッテリおよび電力管理チップ)を含み得る。バッテリは、電源装置211を用いて充電管理、放電管理、および電力消費管理などの機能を実装するように、電力管理チップによってプロセッサ201に論理的に接続され得る。
図2には不図示であるが、携帯電話200はさらに、カメラ(前方カメラ及び/又はリアカメラ)、フラッシュ、マイクロ投影装置、近距離無線通信(Near Field Communication、NFC)装置などを含み得る。詳細はここには説明されない。
本願の複数の実施形態において提供されるアプリケーション管理方法をはっきりと説明すると、以下の実施形態において見られ得るいくつかの概念が、以下に第1に導入される。
アプリケーションとは、少なくとも1つの機能を実行するために上述の端末にインストールされたアプリケーションプログラムのことを指す。そのようなアプリケーションは、例えば、写真やビデオを撮影するためのカメラアプリケーション、位置決定およびナビゲーションのためのマッピングアプリケーション、音声およびビデオファイルを再生するためのプレイヤアプリケーション、ソーシャルコミュニケーションのためのインスタントメッセージングアプリケーション、ウェブページをブラウジングするためのブラウザアプリケーション、ウェブファイルをダウンロードするためのダウンロードアプリケーション、および、オンラインショッピングおよび金銭の移動のための決済アプリケーションを含む。
アプリケーションのフリーズとしてもまた知られる、アプリケーションの中断は、アプリケーションの実行を一時休止すること、アプリケーションのデータおよびステータスを保存すること、およびアプリケーションに割り当てられたソフトウェアおよびハードウェアリソースを解放することを意味する。アプリケーションに割り当てられたハードウェアおよびソフトウェアリソースを解放することは、コンピューティングリソース、内部キャッシュリソース、および、アプリケーションに割り当てられた他の必要なハードウェアリソースを解放することを含み得る。例えば、オンラインビデオプレイヤを中断することは、再生中のビデオファイルのURL、名称、再生進捗を保存すること、オンラインビデオプレイヤに割り当てられたプロセッサリソースおよび内部キャッシュリソースを解放すること、および、スピーカおよび表示スクリーンを解放することを含み得る。
アプリケーションをアクティブ化することは、中断されたアプリケーションを開始することを意味し、具体的には、アプリケーションが中断されたときに保存されたアプリケーションのデータおよびステータスを読み取ること、アプリケーションのデータおよびステータスに従って、必要なソフトウェアおよびハードウェアリソースをアプリケーションに再び割り当てること、および、アプリケーションの予め設定されたネットワークポートをイネーブルにすることなどを含み得る。
本願の複数の実施形態において提供されるアプリケーション管理方法は、通信モジュールを含む端末に適用され得、ここで、通信モジュールは、典型的には、端末が他のデバイスと通信するように構成される。例として図2に示される携帯電話200を用いて、通信モジュールは、無線周波数回路202およびWi−Fi(登録商標)装置207のうち少なくとも一方を含み得る。
図3に示されるように、アプリケーション管理方法は以下の段階を含む。
301.バックグラウンドアプリケーションが予め設定された中断条件を満たす場合、バックグラウンドアプリケーションを中断する。
可能な実装において、バックグラウンドアプリケーションが予め設定された中断条件を満たすことは、バックグラウンドアプリケーションが処理中のいかなるタスクも有さないことを含む。
オプションで、バックグラウンドアプリケーションが処理中のいかなるタスクも有さないことは、バックグラウンドアプリケーションの全てのタスクが処理されたことを含む。
例えば、オンラインビデオファイルがプレイヤアプリケーションを用いて再生中であるとき、再生中のビデオファイルと同じ、または異なるビデオファイルがダウンロードされることが可能である。プレイヤアプリケーションがバックグラウンドに入る前に、再生タスクおよびダウンロードタスクが完了する。したがって、プレイヤアプリケーションは、予め設定された中断条件を満たすバックグラウンドアプリケーションとみなされることが可能である。
オプションで、バックグラウンドアプリケーションが処理中のいかなるタスクも有さないことは、バックグラウンドアプリケーションが処理すべきタスクを有しており、そのタスクがスタートアップ条件を満たしていないことを含む。
例えば、スタートアップ条件は、予め設定されたスタート時刻を含み、処理すべきタスクがスタートアップ条件を満たしていないことは、時刻が予め設定されたスタート時刻に達していないことを含む。
例えば、ユーザが列車チケット予約アプリケーションのcom.yipiaoを用いて2017年12月14日の午前9:00にチケット獲得タスクを設定する。ここで、チケット獲得タスクは北京から上海への2018年2月14日(旧暦大晦日の前日)の旅行のためのものである。チケットが、2017年12月14日の12:00まで購入できないと仮定すると、2017年12月14日の9:00から12:00までの期間の最中にcom.yipiaoを動作させることは不必要である。したがって、com.yipiaoは、時刻(端末の内部時計を読み取ることによって取得され得る)が予め設定されたスタート時刻(例えば、チケットが購入できる時刻)に達していないときの期間の最中は、中断されることが可能である。所与の前倒し時間が、スタートアップ条件の設定において画定され得る。例えば、スタート時刻は11:55に設定され得る。
例えば、スタートアップ条件は予め設定された速度を含み、処理すべきタスクがスタートアップ条件を満たしていないことは、端末の速度が予め設定された速度に達していないことを含む。
例えば成人は典型的には、6km/hより小さい速度で歩き、8km/hから10km/hの速度で走る。したがって、スポーツアプリケーションの予め設定された速度が8km/hから10km/hに設定されたとき、端末が、その移動速度が8km/hより小さいことを検出した場合、スポーツアプリケーションがスタートアップ条件を満たしていないとみなされ得る。
処理すべきタスクがスタートアップ条件を満たすかどうかは、自動的に検出されてもよく、端末システムによって決定されてもよく、ユーザ設定に従って端末によって検出および決定されてもよいことが、留意されるべきである。
例えば、図4Aおよび図4Bに示されるグラフィカルユーザインタフェース(Graphical User Interface、GUI)を参照する。ユーザが、図4Aの図(1)に示されるバックグラウンドアプリケーション管理ページ401上のマッピングナビゲーションボタン402をタップしたとき、図4Bの図(2)に示されるバックグラウンド設定ページ403が表示される。そして、ユーザがページ403上の中断設定ボタン404をタップしたとき、図4Bに示される中断設定ページ405が表示される。中断設定ページ405上で、ユーザは、2つのオプション、ナビゲーション終了(Navigation ended)406および画面オフ407を用いて、少なくとも1つの中断状態を設定し得る。例えば、図4Bで示されるように、ユーザは画面オフ407をイネーブルにすることなく、ナビゲーション終了406をイネーブルにする。上記で設定された全ての、またはいくつかの中断状態が満たされたとき、端末は、地図ナビゲーションアプリケーションを自動的に中断する。
オプションで、バックグラウンドアプリケーションが予め設定された中断条件を満たすことはさらに、バックグラウンドアプリケーションがいかなる予め設定されたタスクも有さないことを含み、ここで、予め設定されたタスクは、バックグラウンドアプリケーションがバックグラウンドに入る前に端末が設定するタスクであり、バックグラウンドアプリケーションがバックグラウンドに入った後に、実行を続けるように端末がバックグラウンドアプリケーションに指示するタスクであり、予め設定されたタスクは、以下のタスク、すなわち、スポーツデータを取得すること、位置決定すること、および音声を再生すること、のうち任意の1つを含む。
上述の予め設定されたタスクは、ユーザの実際の必要およびアプリケーションのタスクタイプに基づいて、フレキシブルに設定され得る。
オプションで、アプリケーションがバックグラウンドに入った後、ユーザが依然として知覚可能なタスクが、予め設定されたタスクとして設定され得る。例えば、ユーザがラジオ放送を聴いているか音楽を聴いているとき、オーディオ再生アプリケーションがバックグラウンドに入った場合でさえも、ユーザは依然として、オーディオ再生アプリケーションが実行を保つことを必要とする。もちろん、いくつかの特定のタスクは、ユーザが感知できないが、予め設定されたタスクとして依然として設定されることがある。例えば、バックグラウンドで実行されるアプリケーションはスポーツアプリケーションを含む。ユーザが運動を行うとき、ユーザがスポーツアプリケーションを知覚することができない場合でさえも、ユーザは依然として、スポーツアプリケーションを用いて、運動軌跡、運動速度、運動持続時間、および運動距離などのスポーツデータを取得する必要がある。バックグラウンドアプリケーションが、上記の予め設定されたタスクを依然として実行しているとき、これらのバックグラウンドアプリケーションは予め設定された条件を満たさないものとみなされ、中断される必要がないものとみなされる。
いくつかのバックグラウンドアプリケーションが依然としてタスクを実行しているが、これらのタスクは予め設定されたタスクではないことが留意されるべきである。そのようなタスクは、例えば、ダウンロードタスクを含む。バックグラウンドアプリケーションがいかなる予め設定されたタスクも実行していないとき、これらのバックグラウンドアプリケーションは、予め設定された条件を満たすものとみなされ、中断される必要があるものとみなされる。
バックグラウンドアプリケーションを中断することは、バックグラウンドアプリケーションのステータスおよびデータを格納すること、および、もはやバックグラウンドアプリケーションによって用いられないリソースを解放することを含む。例えば、プレイヤアプリケーションを用いてオンラインビデオファイルが再生中であるとき、端末は、プロセッサリソース、ストレージリソース、スピーカおよび表示スクリーンなどの必要なリソースをプレイヤアプリケーションに割り当てる必要がある。プレイヤアプリケーションが予め設定された中断条件を満たし、中断となったとき、端末は、プレイヤアプリケーションのコンフィギュレーション情報と同様に、再生中のオンラインビデオファイルのウェブアドレス、ファイル名称、および再生進捗などの情報を格納し、プロセッサリソース、スピーカ、およびディスプレイスクリーンなどの、もはや用いられないリソースを解放する。
402.バックグラウンドアプリケーションを中断するとき、バックグラウンドアプリケーションと通信モジュールとの間の通信リンクを切断する。
実際のアプリケーションにおいて、端末によってサポートされる通信技術規格が異なることが、バックグラウンドアプリケーションと通信モジュールとの間の通信リンクが異なることを引き起こす。具体的には、端末によってバックグラウンドアプリケーションに関して割り当てられた、予め設定されたネットワークポートが異なる。
例えば、図3Aにおいて示されるように、端末が、中断されたバックグラウンドアプリケーションのために処理1を生成し、処理リソースおよびストレージリソースなどのリソースを処理1に関して割り当て、処理1によって処理されるファイルを規定すると仮定する。処理1は、モデムの内部に位置し、端末によって割り当てられたソケット(Socket)ポートを介して、別のデバイスまたはネットワークに接続される。モデムは、TCP/IPプロトコル、ユーザデータグラムプロトコル(User Datagram Protocol、UDP)などの、少なくとも1つのネットワークプロトコルをサポートし得る。中断されたバックグラウンドアプリケーションの処理1が中断されたとき、端末は、中断されたバックグラウンドアプリケーションに関して端末によって割り当てられたソケットを無効にし、したがって、中断されたバックグラウンドアプリケーションをネットワークから切断する。このように、アプリケーションサーバが、中断されたバックグラウンドアプリケーションに関して端末によって割り当てられたソケットポートを介して、中断されたバックグラウンドアプリケーションをアクティブ化することが回避され、それにより、端末の電力消費を低減させる。
従来技術とは異なり、本願のこの一実施形態における段階401および段階402は、Androidシステムレイヤによって完了されることが留意されるべきである。
本願のこの一実施形態において提供されるアプリケーション管理方法において、バックグラウンドアプリケーションは、予め設定された中断条件を満たしたときに中断されることができ、中断されたバックグラウンドアプリケーションと通信モジュールとの間の通信リンクは、同時に無効とすることができる。これにより、中断されたバックグラウンドアプリケーションを、アプリケーションサーバがネットワークを介して再アクティブ化することが回避し、バックグラウンドにおけるアプリケーションの実行を保持し、それにより、端末の電力消費を低減させて、端末のバッテリ寿命を長くさせる。加えて、中断されたバックグラウンドアプリケーションと通信モジュールとの間の通信リンクを無効にすることは、中断されたバックグラウンドアプリケーションをネットワークから単に切断することにすぎない。このことは、中断されていないアプリケーションによるネットワークの使用への影響をなくし、したがって、中断されていないアプリケーションをユーザが用いることを妨げない。
本願のこの一実施形態において提供されるアプリケーション管理方法において、制御はアプリケーションに特有のものである。具体的には、停止操作されることなくアプリケーション側で処理が停止したとき、モデム側ネットワークリンクは、端末の電力消費を減少させるように、強制的にシャットダウンされる。無効にされたものはアプリケーションに関するソケットポートのみであり、モデム全体ではないことが、留意されるべきである。したがって、別のアプリケーションによるネットワークの通常の使用には影響はない。このように、端末の電力消費は極めて正確に制御される。ユーザ感知不可能なバックグラウンドアプリケーションには顕著に、そのような制御がより効率的であり、基本的に電力消費が0である。
図5に示されるように、処理すべきタスクを有するバックグラウンドアプリケーションに関して、段階301は、具体的には段階501として実装され得る。
501.バックグラウンドアプリケーションが処理すべきタスクを有し、処理すべきタスクがスタートアップ条件を満たしていない場合、バックグラウンドアプリケーションを中断する。
スタートアップ条件に関しては、先述の段階301において関連する説明を参照し、詳細はここでは再び説明されない。
そして、段階302の後に、段階502がさらに実行され得る。
502.スタートアップ条件が満たされたとき、バックグラウンドアプリケーションをアクティブ化する。
バックグラウンドアプリケーションをアクティブ化する方法に関しては、先述の段階301に関連する説明を参照し、詳細はここでは再び説明されない。
本願の複数の実施形態において、機能モジュールは、上述した方法の例に基づいて計画され得る。例えば、機能モジュールは、複数の機能に対応して計画され得、または2つ以上の機能が1つの処理モジュールに統合され得る。統合されたモジュールは、ハードウェアの形で実装され得、または、ソフトウェア機能モジュールの形で実装され得る。本願の複数の実施形態におけるモジュール区分は、例示的なものであり、論理的な機能区分に過ぎないことが、留意されるべきである。実際の実装において、別の区分方式が用いられてもよい。
図6は、先述の実施形態の端末の可能な概略構造図を示す。図6に示されるように、端末60は、処理モジュール61および通信モジュール62を含む。処理モジュール61は、端末の動作を制御および管理するように構成される。例えば、処理モジュール61は、図3の段階301および段階302を実行する際に端末をサポートするように構成され、及び/又は、本明細書に説明される技術的解決法の他の段階を実行するように構成される。通信モジュール62は、端末と別のデバイスまたはネットワークとの間の通信をサポートするように構成される。例えば、通信モジュール62は、端末上のアプリケーションと、アプリケーションに対応するアプリケーションサーバとの間の通信をサポートする。加えて、端末60はさらに、関連する命令および関連するデータを格納するように構成されたストレージモジュール63を含む。
上述した方法の実施形態の段階の全ての関連する内容は、参照によって、図6に示される対応する機能モジュールの機能説明に組み込まれ得る。詳細はここには再び説明されない。
処理モジュールがプロセッサによって実装されるとき、通信モジュールは通信インタフェースによって実装され、ストレージモジュールはメモリによって実装され、図7は、先述の実施形態における端末の別の可能な概略構造図を示す。図7に示されるように、端末70は、プロセッサ71、通信インタフェース72、およびメモリ73を含む。プロセッサ71、通信インタフェース72およびメモリ73は、バス74を介して互いに通信する。プロセッサ71は、端末の動作を制御および管理するように構成される。例えば、プロセッサ71は、図3の段階301および段階302を実行する際に端末をサポートするように構成され、及び/又は、本明細書に説明される技術的解決法の他の段階を実行するように構成される。通信インタフェース72は、端末と外部デバイスとの間の通信をサポートするように構成される。例えば、通信インタフェース72は、端末上のアプリケーションと、アプリケーションに対応するアプリケーションサーバとの間の通信をサポートする。メモリ73は、命令およびデータを格納するように構成される。
プロセッサ71は、図2に示されるプロセッサ201であり得る。通信インタフェース72は、図2に示される無線周波数回路202およびWi−Fi(登録商標)装置207のうち少なくとも一方を含み得る。メモリ73は、図2に示されるメモリ203であり得る。加えて、端末70はさらに、図2に示されるセンサ206、測位装置208、音声回路209、周辺機器インタフェース210などを含み得る。
先述の実施形態の全てまたはいくつかは、ソフトウェア、ハードウェア、ファームウェア、またはそれらの任意の結合を用いて実装され得る。ソフトウェアプログラムが実施形態を実装するように用いられるとき、実施形態は、コンピュータプログラムプロダクトの形で完全に、または部分的に実装され得る。コンピュータプログラムプロダクトは、1または複数のコンピュータ命令を含み得る。コンピュータプログラム命令が端末上でロードおよび実行されるとき、本願の複数の実施形態によるプロシージャまたは機能が、全てまたは部分的に引き起こされる。コンピュータは、汎用コンピュータ、専用コンピュータ、コンピュータネットワーク、または他のプログラマブルな装置であり得る。コンピュータ命令は、コンピュータ可読記憶媒体に格納され得、または、コンピュータ可読記憶媒体から別のコンピュータ可読記憶媒体に送信され得る。例えば、コンピュータ命令は、ウェブサイト、コンピュータ、サーバ、またはデータセンタから、別のウェブサイト、別のコンピュータ、別のサーバ、または別のデータセンタに、有線(例えば、同軸ケーブル、光ファイバ、またはデジタル加入者回線(DSL)を介して)で、または、無線(例えば、赤外線ビーム、無線、またはマイクロ波を介して)方式で送信され得る。コンピュータ可読記憶媒体は、コンピュータによってアクセス可能な任意の使用可能な媒体であり得、または、1または複数の使用可能な媒体を統合する、サーバまたはデータセンタなどのデータストレージデバイスであり得る。使用可能な媒体は、磁気媒体(例えば、フロッピディスク、ハードディスク、または磁気テープ)、光媒体(例えば、DVD)、半導体媒体(例えば、ソリッドステートディスク(Solid State Disk(SSD)))、などであり得る。
上述の説明は、本願の特定の実装にすぎず、本願の保護範囲を制限する意図はない。出願に開示された技術範囲の当業者には容易に思いつく任意の変形または置換が、出願の保護範囲内にあるものとする。したがって、本願の保護範囲は、請求項の保護範囲に従うものとする。
プロセッサ201は、携帯電話200の制御の中心であり、様々なインタフェースおよび線を用いて、携帯電話200の様々な部品を接続し、メモリ203に格納されたアプリケーションを実行し、メモリ203に格納されたデータを呼び出すことによって、携帯電話200の様々な機能、およびデータの処理を実行する。いくつかの実施形態において、プロセッサ201は、1または複数の処理ユニットを含み得る。例えば、プロセッサ201は、Huawei Technologies Co., Ltd.によって製造されたKirin960チップであり得る。本願のいくつかの複数の実施形態において、プロセッサ201はさらに、収集された指紋の認証のための、指紋認証チップを含み得る。
上述の説明は、本願の特定の実装にすぎず、本願の保護範囲を制限する意図はない。出願に開示された技術範囲の当業者には容易に思いつく任意の変形または置換が、出願の保護範囲内にあるものとする。したがって、本願の保護範囲は、請求項の保護範囲に従うものとする。
(項目1)
端末に適用されるアプリケーション管理方法であって、上記端末は通信モジュールを備え、上記方法は、
上記端末上のバックグラウンドアプリケーションが、予め設定された中断条件を満たしたとき、上記端末が、上記バックグラウンドアプリケーションを中断する段階と、
上記バックグラウンドアプリケーションを中断するとき、上記バックグラウンドアプリケーションと上記通信モジュールとの間の通信リンクを、上記端末が切断する段階と、
を備える、アプリケーション管理方法。
(項目2)
上記端末上の上記バックグラウンドアプリケーションが、予め設定された中断条件を満たしたとき、上記端末が、バックグラウンドアプリケーションを中断する上記段階は、
上記バックグラウンドアプリケーションが、処理中のいかなるタスクも有さないとき、上記端末が、上記バックグラウンドアプリケーションを中断することを含む、項目1に記載の方法。
(項目3)
上記バックグラウンドアプリケーションが、処理中のいかなるタスクも有さないことは、
上記バックグラウンドアプリケーションの全てのタスクが処理されたこと、または、
上記バックグラウンドアプリケーションが処理すべきタスクを有し、上記処理すべきタスクがスタートアップ条件を満たしていないことを含む、
項目2に記載の方法。
(項目4)
上記スタートアップ条件は、予め設定されたスタート時刻を含み、上記処理すべきタスクがスタートアップ条件を満たしていないことは、上記端末の時刻が上記予め設定されたスタート時刻に達していないことを含み、または、
上記スタートアップ条件は、予め設定された速度を含み、上記処理すべきタスクがスタートアップ条件を満たしていないことは、上記端末の速度が上記予め設定された速度に達していないことを含む、
項目3に記載の方法。
(項目5)
上記バックグラウンドアプリケーションが中断された後、方法はさらに、
上記処理すべきタスクが上記スタートアップ条件を満たしたとき、上記端末が、上記バックグラウンドアプリケーションをアクティブ化することを備える、
項目3または4に記載の方法。
(項目6)
上記バックグラウンドアプリケーションが、予め設定された中断条件を満たすことは、
上記バックグラウンドアプリケーションが、いかなる予め設定されたタスクも有さないことを含み、上記予め設定されたタスクは、上記バックグラウンドアプリケーションが上記バックグラウンドに入る前に上記端末が設定するタスクであり、上記バックグラウンドアプリケーションが上記バックグラウンドに入った後に、実行を続けるように上記端末が上記バックグラウンドアプリケーションに指示するタスクである、
項目1に記載の方法。
(項目7)
上記バックグラウンドアプリケーションと上記通信モジュールとの間の通信リンクを切断することは、
上記バックグラウンドアプリケーションの予め設定されたネットワークポートを無効にすることを含み、
上記予め設定されたネットワークポートは、上記バックグラウンドアプリケーションと上記通信モジュールとの間の上記通信リンクを確立するように構成される、
項目1から6のいずれか一項に記載の方法。
(項目8)
上記予め設定されたネットワークポートは、上記端末がTCP/IPプロトコルをサポートするとき、上記端末によって上記バックグラウンドアプリケーションに関して割り当てられたソケットポートを含む、項目7に記載の方法。
(項目9)
端末であって、上記端末は処理モジュールおよび通信モジュールを備え、
上記処理モジュールは、バックグラウンドアプリケーションが予め設定された中断条件を満たすかどうか判断することと、上記バックグラウンドアプリケーションが上記予め設定された中断条件を満たす場合、上記バックグラウンドアプリケーションを中断することと、を行うように構成され、
上記処理モジュールはさらに、上記バックグラウンドアプリケーションを中断したとき、上記バックグラウンドアプリケーションと上記通信モジュールとの間の通信リンクを切断するように構成される、
端末。
(項目10)
上記バックグラウンドアプリケーションが、予め設定された中断条件を満たすことは、上記バックグラウンドアプリケーションが、処理中のいかなるタスクも有さないことを含む、項目9に記載の端末。
(項目11)
上記バックグラウンドアプリケーションが、処理中のいかなるタスクも有さないことは、
上記バックグラウンドアプリケーションの全てのタスクが処理されたこと、または、
上記バックグラウンドアプリケーションが、処理すべきタスクを有し、上記処理すべきタスクが、上記スタートアップ条件を満たしていないことを含む、
項目10に記載の端末。
(項目12)
上記スタートアップ条件は、予め設定されたスタート時刻を含み、上記処理すべきタスクが上記スタートアップ条件を満たしていないことは、時刻が上記予め設定されたスタート時刻に達していないことを含む、または、
上記スタートアップ条件は、予め設定された速度を含み、上記処理すべきタスクがスタートアップ条件を満たしていないことは、上記端末の速度が予め設定された速度に達していないことを含む、
項目11に記載の端末。
(項目13)
上記処理モジュールはさらに、上記処理すべきタスクが上記スタートアップ条件を満たしたとき、上記バックグラウンドアプリケーションをアクティブ化するように構成される、項目11または12に記載の端末。
(項目14)
上記バックグラウンドアプリケーションが、予め設定された中断条件を満たすことは、上記バックグラウンドアプリケーションが、いかなる予め設定されたタスクも有さないことを含み、上記予め設定されたタスクは、上記バックグラウンドアプリケーションが上記バックグラウンドに入る前に端末が設定するタスクを含み、上記バックグラウンドアプリケーションが上記バックグラウンドに入った後に、実行を続けるように端末が上記バックグラウンドアプリケーションに指示するタスクを含む、
項目9に記載の端末。
(項目15)
上記処理モジュールはさらに、上記バックグラウンドアプリケーションの予め設定されたネットワークポートを無効にするように構成され、上記予め設定されたネットワークポートは、上記バックグラウンドアプリケーションと上記通信モジュールとの間の上記通信リンクを確立するように構成される、項目9から14のいずれか一項に記載の端末。
(項目16)
上記予め設定されたネットワークポートが、ソケットポートを含む、項目15に記載の端末。
(項目17)
端末であって、上記端末は、プロセッサ、通信インタフェース、およびメモリを備え、
上記メモリは、コンピュータ実行可能命令を格納するように構成され、上記プロセッサは、上記バスを介して上記メモリと接続され、上記端末が動作するとき、上記プロセッサは上記メモリに格納された上記コンピュータ実行可能命令を実行して、上記端末に、
バックグラウンドアプリケーションが予め設定された中断条件を満たすかどうか判断することと、
上記バックグラウンドアプリケーションが上記予め設定された中断条件を満たす場合、上記バックグラウンドアプリケーションを中断することと、
上記バックグラウンドアプリケーションを中断したとき、上記バックグラウンドアプリケーションと上記通信インタフェースとの間の通信リンクを切断することと、
の実行を可能にする、
端末。
(項目18)
上記バックグラウンドアプリケーションが、上記予め設定された中断条件を満たすことは、上記バックグラウンドアプリケーションが、処理中のいかなるタスクも有しないことを含む、項目17に記載の端末。
(項目19)
上記バックグラウンドアプリケーションが、処理中のいかなるタスクも有さないことは、
上記バックグラウンドアプリケーションの全てのタスクが処理されたこと、または、
上記バックグラウンドアプリケーションが処理すべきタスクを有し、上記処理すべきタスクがスタートアップ条件を満たしていないこと、
を含む、項目18に記載の端末。
(項目20)
上記スタートアップ条件は、予め設定されたスタート時刻を含み、上記処理すべきタスクがスタートアップ条件を満たしていないことは、時刻が上記予め設定されたスタート時刻に達していないことを含み、または、
上記スタートアップ条件は、予め設定された速度を含み、上記処理すべきタスクがスタートアップ条件を満たしていないことは、上記端末の速度が上記予め設定された速度に達していないことを含む、
項目19に記載の端末。
(項目21)
上記プロセッサはさらに、上記処理すべきタスクが上記スタートアップ条件を満たしたときに上記バックグラウンドアプリケーションをアクティブ化するように構成される、項目19または20に記載の端末。
(項目22)
上記バックグラウンドアプリケーションが上記予め設定された中断条件を満たすことは、
上記バックグラウンドアプリケーションがいかなる予め設定されたタスクも有さないことを含み、上記予め設定されたタスクは、上記バックグラウンドアプリケーションが上記バックグラウンドに入る前に上記端末が設定するタスクであり、上記バックグラウンドアプリケーションが上記バックグラウンドに入った後に、実行を続けるように上記端末が上記バックグラウンドアプリケーションに指示するタスクである、項目17に記載の端末。
(項目23)
上記プロセッサはさらに、上記バックグラウンドアプリケーションの予め設定されたネットワークポートを無効にするように構成され、上記予め設定されたネットワークポートは、上記バックグラウンドアプリケーションと上記通信インタフェースとの間の上記通信リンクを確立するように構成される、項目17から22のいずれか一項に記載の端末。
(項目24)
上記予め設定されたネットワークポートは、上記端末がTCP/IPプロトコルをサポートするときに、上記バックグラウンドアプリケーションに関して上記端末によって割り当てられるソケットポートを含む、項目23に記載の端末。
(項目25)
コンピュータ可読記憶媒体であって、上記コンピュータ可読記憶媒体は命令を格納し、上記命令が端末上で動作したとき、上記端末は、項目1から8のいずれか一項に記載のアプリケーション管理方法を実行することを可能とする、コンピュータ可読記憶媒体。
(項目26)
命令を備えるコンピュータプログラムプロダクトであって、上記コンピュータプログラムプロダクトが端末上で動作したとき、上記端末は、項目1から8のいずれか一項に記載のアプリケーション管理方法を実行することを可能とする、コンピュータプログラムプロダクト。

Claims (26)

  1. 端末に適用されるアプリケーション管理方法であって、前記端末は通信モジュールを備え、前記方法は、
    前記端末上のバックグラウンドアプリケーションが、予め設定された中断条件を満たしたとき、前記端末が、前記バックグラウンドアプリケーションを中断する段階と、
    前記バックグラウンドアプリケーションを中断するとき、前記バックグラウンドアプリケーションと前記通信モジュールとの間の通信リンクを、前記端末が切断する段階と、
    を備える、アプリケーション管理方法。
  2. 前記端末上の前記バックグラウンドアプリケーションが、予め設定された中断条件を満たしたとき、前記端末が、バックグラウンドアプリケーションを中断する前記段階は、
    前記バックグラウンドアプリケーションが、処理中のいかなるタスクも有さないとき、前記端末が、前記バックグラウンドアプリケーションを中断することを含む、請求項1に記載の方法。
  3. 前記バックグラウンドアプリケーションが、処理中のいかなるタスクも有さないことは、
    前記バックグラウンドアプリケーションの全てのタスクが処理されたこと、または、
    前記バックグラウンドアプリケーションが処理すべきタスクを有し、前記処理すべきタスクがスタートアップ条件を満たしていないことを含む、
    請求項2に記載の方法。
  4. 前記スタートアップ条件は、予め設定されたスタート時刻を含み、前記処理すべきタスクがスタートアップ条件を満たしていないことは、前記端末の時刻が前記予め設定されたスタート時刻に達していないことを含み、または、
    前記スタートアップ条件は、予め設定された速度を含み、前記処理すべきタスクがスタートアップ条件を満たしていないことは、前記端末の速度が前記予め設定された速度に達していないことを含む、
    請求項3に記載の方法。
  5. 前記バックグラウンドアプリケーションが中断された後、方法はさらに、
    前記処理すべきタスクが前記スタートアップ条件を満たしたとき、前記端末が、前記バックグラウンドアプリケーションをアクティブ化することを備える、
    請求項3または4に記載の方法。
  6. 前記バックグラウンドアプリケーションが、予め設定された中断条件を満たすことは、
    前記バックグラウンドアプリケーションが、いかなる予め設定されたタスクも有さないことを含み、前記予め設定されたタスクは、前記バックグラウンドアプリケーションが前記バックグラウンドに入る前に前記端末が設定するタスクであり、前記バックグラウンドアプリケーションが前記バックグラウンドに入った後に、実行を続けるように前記端末が前記バックグラウンドアプリケーションに指示するタスクである、
    請求項1に記載の方法。
  7. 前記バックグラウンドアプリケーションと前記通信モジュールとの間の通信リンクを切断することは、
    前記バックグラウンドアプリケーションの予め設定されたネットワークポートを無効にすることを含み、
    前記予め設定されたネットワークポートは、前記バックグラウンドアプリケーションと前記通信モジュールとの間の前記通信リンクを確立するように構成される、
    請求項1から6のいずれか一項に記載の方法。
  8. 前記予め設定されたネットワークポートは、前記端末がTCP/IPプロトコルをサポートするとき、前記端末によって前記バックグラウンドアプリケーションに関して割り当てられたソケットポートを含む、請求項7に記載の方法。
  9. 端末であって、前記端末は処理モジュールおよび通信モジュールを備え、
    前記処理モジュールは、バックグラウンドアプリケーションが予め設定された中断条件を満たすかどうか判断することと、前記バックグラウンドアプリケーションが前記予め設定された中断条件を満たす場合、前記バックグラウンドアプリケーションを中断することと、を行うように構成され、
    前記処理モジュールはさらに、前記バックグラウンドアプリケーションを中断したとき、前記バックグラウンドアプリケーションと前記通信モジュールとの間の通信リンクを切断するように構成される、
    端末。
  10. 前記バックグラウンドアプリケーションが、予め設定された中断条件を満たすことは、前記バックグラウンドアプリケーションが、処理中のいかなるタスクも有さないことを含む、請求項9に記載の端末。
  11. 前記バックグラウンドアプリケーションが、処理中のいかなるタスクも有さないことは、
    前記バックグラウンドアプリケーションの全てのタスクが処理されたこと、または、
    前記バックグラウンドアプリケーションが、処理すべきタスクを有し、前記処理すべきタスクが、前記スタートアップ条件を満たしていないことを含む、
    請求項10に記載の端末。
  12. 前記スタートアップ条件は、予め設定されたスタート時刻を含み、前記処理すべきタスクが前記スタートアップ条件を満たしていないことは、時刻が前記予め設定されたスタート時刻に達していないことを含む、または、
    前記スタートアップ条件は、予め設定された速度を含み、前記処理すべきタスクがスタートアップ条件を満たしていないことは、前記端末の速度が予め設定された速度に達していないことを含む、
    請求項11に記載の端末。
  13. 前記処理モジュールはさらに、前記処理すべきタスクが前記スタートアップ条件を満たしたとき、前記バックグラウンドアプリケーションをアクティブ化するように構成される、請求項11または12に記載の端末。
  14. 前記バックグラウンドアプリケーションが、予め設定された中断条件を満たすことは、前記バックグラウンドアプリケーションが、いかなる予め設定されたタスクも有さないことを含み、前記予め設定されたタスクは、前記バックグラウンドアプリケーションが前記バックグラウンドに入る前に端末が設定するタスクを含み、前記バックグラウンドアプリケーションが前記バックグラウンドに入った後に、実行を続けるように端末が前記バックグラウンドアプリケーションに指示するタスクを含む、
    請求項9に記載の端末。
  15. 前記処理モジュールはさらに、前記バックグラウンドアプリケーションの予め設定されたネットワークポートを無効にするように構成され、前記予め設定されたネットワークポートは、前記バックグラウンドアプリケーションと前記通信モジュールとの間の前記通信リンクを確立するように構成される、請求項9から14のいずれか一項に記載の端末。
  16. 前記予め設定されたネットワークポートが、ソケットポートを含む、請求項15に記載の端末。
  17. 端末であって、前記端末は、プロセッサ、通信インタフェース、およびメモリを備え、
    前記メモリは、コンピュータ実行可能命令を格納するように構成され、前記プロセッサは、前記バスを介して前記メモリと接続され、前記端末が動作するとき、前記プロセッサは前記メモリに格納された前記コンピュータ実行可能命令を実行して、前記端末に、
    バックグラウンドアプリケーションが予め設定された中断条件を満たすかどうか判断することと、
    前記バックグラウンドアプリケーションが前記予め設定された中断条件を満たす場合、前記バックグラウンドアプリケーションを中断することと、
    前記バックグラウンドアプリケーションを中断したとき、前記バックグラウンドアプリケーションと前記通信インタフェースとの間の通信リンクを切断することと、
    の実行を可能にする、
    端末。
  18. 前記バックグラウンドアプリケーションが、前記予め設定された中断条件を満たすことは、前記バックグラウンドアプリケーションが、処理中のいかなるタスクも有しないことを含む、請求項17に記載の端末。
  19. 前記バックグラウンドアプリケーションが、処理中のいかなるタスクも有さないことは、
    前記バックグラウンドアプリケーションの全てのタスクが処理されたこと、または、
    前記バックグラウンドアプリケーションが処理すべきタスクを有し、前記処理すべきタスクがスタートアップ条件を満たしていないこと、
    を含む、請求項18に記載の端末。
  20. 前記スタートアップ条件は、予め設定されたスタート時刻を含み、前記処理すべきタスクがスタートアップ条件を満たしていないことは、時刻が前記予め設定されたスタート時刻に達していないことを含み、または、
    前記スタートアップ条件は、予め設定された速度を含み、前記処理すべきタスクがスタートアップ条件を満たしていないことは、前記端末の速度が前記予め設定された速度に達していないことを含む、
    請求項19に記載の端末。
  21. 前記プロセッサはさらに、前記処理すべきタスクが前記スタートアップ条件を満たしたときに前記バックグラウンドアプリケーションをアクティブ化するように構成される、請求項19または20に記載の端末。
  22. 前記バックグラウンドアプリケーションが前記予め設定された中断条件を満たすことは、
    前記バックグラウンドアプリケーションがいかなる予め設定されたタスクも有さないことを含み、前記予め設定されたタスクは、前記バックグラウンドアプリケーションが前記バックグラウンドに入る前に前記端末が設定するタスクであり、前記バックグラウンドアプリケーションが前記バックグラウンドに入った後に、実行を続けるように前記端末が前記バックグラウンドアプリケーションに指示するタスクである、請求項17に記載の端末。
  23. 前記プロセッサはさらに、前記バックグラウンドアプリケーションの予め設定されたネットワークポートを無効にするように構成され、前記予め設定されたネットワークポートは、前記バックグラウンドアプリケーションと前記通信インタフェースとの間の前記通信リンクを確立するように構成される、請求項17から22のいずれか一項に記載の端末。
  24. 前記予め設定されたネットワークポートは、前記端末がTCP/IPプロトコルをサポートするときに、前記バックグラウンドアプリケーションに関して前記端末によって割り当てられるソケットポートを含む、請求項23に記載の端末。
  25. コンピュータ可読記憶媒体であって、前記コンピュータ可読記憶媒体は命令を格納し、前記命令が端末上で動作したとき、前記端末は、請求項1から8のいずれか一項に記載のアプリケーション管理方法を実行することを可能とする、コンピュータ可読記憶媒体。
  26. 命令を備えるコンピュータプログラムプロダクトであって、前記コンピュータプログラムプロダクトが端末上で動作したとき、前記端末は、請求項1から8のいずれか一項に記載のアプリケーション管理方法を実行することを可能とする、コンピュータプログラムプロダクト。
JP2020513847A 2017-10-13 2017-10-13 アプリケーション管理方法および端末 Pending JP2020537211A (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2017/106199 WO2019071619A1 (zh) 2017-10-13 2017-10-13 应用管理方法及终端

Publications (1)

Publication Number Publication Date
JP2020537211A true JP2020537211A (ja) 2020-12-17

Family

ID=66101235

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020513847A Pending JP2020537211A (ja) 2017-10-13 2017-10-13 アプリケーション管理方法および端末

Country Status (5)

Country Link
US (1) US11409567B2 (ja)
JP (1) JP2020537211A (ja)
CN (1) CN110073336A (ja)
AU (1) AU2017435235B2 (ja)
WO (1) WO2019071619A1 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110709801B (zh) * 2017-12-06 2022-05-27 荣耀终端有限公司 一种降低耗电的方法和设备
CN112351476A (zh) * 2019-08-06 2021-02-09 中兴通讯股份有限公司 基于网络的应用功耗调控方法、终端及存储介质
CN110691401B (zh) * 2019-08-28 2021-04-09 华为技术有限公司 一种系统应用的管理方法及装置
CN112558745A (zh) * 2019-09-24 2021-03-26 中兴通讯股份有限公司 终端应用程序冷冻控制的方法、装置、终端及存储介质
CN112486308A (zh) * 2020-11-26 2021-03-12 广东小天才科技有限公司 可穿戴设备的功耗控制方法及可穿戴设备、存储介质

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009187368A (ja) * 2008-02-07 2009-08-20 Hitachi Ltd Usbポートの共有制御方法
US8195774B2 (en) * 2008-05-23 2012-06-05 Vmware, Inc. Distributed virtual switch for virtualized computer systems
US8135392B2 (en) 2008-06-06 2012-03-13 Apple Inc. Managing notification service connections and displaying icon badges
US8140876B2 (en) * 2009-01-16 2012-03-20 International Business Machines Corporation Reducing power consumption of components based on criticality of running tasks independent of scheduling priority in multitask computer
JP5257262B2 (ja) 2009-06-18 2013-08-07 富士通モバイルコミュニケーションズ株式会社 移動通信装置
US20110252422A1 (en) * 2010-04-07 2011-10-13 Apple Inc. Opportunistic Multitasking
JP5351853B2 (ja) 2010-08-05 2013-11-27 株式会社エヌ・ティ・ティ・ドコモ 情報処理端末及びリソース解放方法
US10631246B2 (en) * 2011-02-14 2020-04-21 Microsoft Technology Licensing, Llc Task switching on mobile devices
US8897762B2 (en) 2012-02-28 2014-11-25 Qualcomm Incorporated Optimizing signaling load overhead and battery consumption for background applications
CN102799361A (zh) 2012-06-21 2012-11-28 华为终端有限公司 一种应用对象的调出方法及移动终端
CN102981906A (zh) 2012-11-16 2013-03-20 广东欧珀移动通信有限公司 一种应用程序后台进程管理方法及装置
US9189276B2 (en) * 2013-02-27 2015-11-17 International Business Machines Corporation Background collective operation management in a parallel computer
WO2014200631A1 (en) 2013-06-11 2014-12-18 Seven Networks, Inc. Optimizing keepalive and other background traffic in a wireless network
JP6241144B2 (ja) * 2013-08-30 2017-12-06 富士通株式会社 制御プログラム、制御方法および制御装置
KR102148948B1 (ko) * 2013-12-06 2020-08-27 삼성전자주식회사 전자 장치의 멀티 태스킹 방법 및 그 전자 장치
CN104317608A (zh) * 2014-09-30 2015-01-28 北京金山安全软件有限公司 移动终端中预装应用程序的管理方法、装置和客户端
US9880953B2 (en) * 2015-01-05 2018-01-30 Tuxera Corporation Systems and methods for network I/O based interrupt steering
US9430269B1 (en) * 2015-02-09 2016-08-30 International Business Machines Corporation Feedback analysis for virtual machines manager scheduling
CN106470238A (zh) * 2015-08-20 2017-03-01 阿里巴巴集团控股有限公司 应用于服务器负载均衡中的连接建立方法及装置
CN105373405B (zh) * 2015-11-26 2019-05-10 努比亚技术有限公司 动态加载应用程序的装置及方法
CN105468426A (zh) * 2016-01-05 2016-04-06 珠海市魅族科技有限公司 一种应用冻结的方法及终端
CN106055360A (zh) * 2016-05-30 2016-10-26 乐视控股(北京)有限公司 应用程序后台服务的启动方法及移动终端
CN106201683A (zh) * 2016-06-30 2016-12-07 宇龙计算机通信科技(深圳)有限公司 一种管理应用的方法、装置及终端
CN106648849A (zh) 2016-10-18 2017-05-10 上海传英信息技术有限公司 进程的冷冻方法和移动终端
US10379943B2 (en) * 2016-12-06 2019-08-13 International Business Machines Corporation Management of foreground and background processes in a storage controller
CN107066320B (zh) 2017-01-19 2021-06-15 努比亚技术有限公司 一种Android进程冻结和解冻的装置及方法

Also Published As

Publication number Publication date
CN110073336A (zh) 2019-07-30
WO2019071619A1 (zh) 2019-04-18
US11409567B2 (en) 2022-08-09
WO2019071619A9 (zh) 2019-07-04
AU2017435235B2 (en) 2021-01-21
US20200334071A1 (en) 2020-10-22
AU2017435235A1 (en) 2020-04-02

Similar Documents

Publication Publication Date Title
US10635449B2 (en) Method and apparatus for running game client
EP4109218B1 (en) Mobile phone comprising a touch screen with an in-display fingerprint sensor
WO2017206916A1 (zh) 处理器中内核运行配置的确定方法以及相关产品
JP2020537211A (ja) アプリケーション管理方法および端末
KR101978590B1 (ko) 메시지 업데이팅 방법, 장치 및 단말
EP3306865A1 (en) Communication message sending method and device
US20220159777A1 (en) Method for network control and related products
KR101939008B1 (ko) 정보 추천 관리 방법, 디바이스 및 시스템
EP3121684B1 (en) Multi-core processor management method and device
CN106775833B (zh) 设备驱动程序加载方法、终端及系统
WO2015007232A1 (en) Method, device and mobile terminal for checking message
US11381100B2 (en) Method for controlling multi-mode charging, mobile terminal, and storage medium
CN110764825B (zh) 一种开机方法及终端设备
CN110837343B (zh) 处理快照的方法、装置及终端
US20210329123A1 (en) Method for Adjusting Parameter of Audio Service and Terminal
CN108848492B (zh) 用户身份识别卡的启用方法、装置、终端及存储介质
CN110413497B (zh) 异常监控方法、装置、终端设备及计算机可读存储介质
CN111443803A (zh) 模式切换方法、装置、存储介质及移动终端
CN107770449B (zh) 连拍方法、电子设备及存储介质
WO2015135457A1 (en) Method, apparatus, and system for sending and playing multimedia information
WO2019072179A1 (zh) 应用程序运行控制方法及装置
EP3447641A1 (en) Sound effect processing method and terminal
WO2015184959A2 (en) Method and apparatus for playing behavior event
CN112199050A (zh) 存储方法、装置、存储介质及终端设备
CN109308164B (zh) 一种系统迁移的方法和装置

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200409

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200409

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210428

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210525

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20210921