(58)【調査した分野】(Int.Cl.,DB名)
デバイスにインストールされたメインアプリケーションを開始する第1の命令を、コンピュータデバイスで受信するステップであって、前記メインアプリケーションは複数のサブアプリケーションを含む、第1の命令を受信するステップと;
前記第1の命令を受信するステップに応答して、前記メインアプリケーションを開始するプロセスにおいてロードする1つ又は複数のサブアプリケーションを、前記コンピュータデバイスにより決定するステップと;
前記メインアプリケーションのためのアプリケーションロード情報を、前記コンピュータデバイスにより取得するステップであって、前記アプリケーションロード情報は、事前設定期間における複数のサブアプリケーションの使用頻度情報に基づいて生成され、前記メインアプリケーションを開始するプロセスにおけるロード対象サブアプリケーションを識別する、取得するステップと;
前記メインアプリケーションを開始するプロセスにおいて、取得した前記アプリケーションロード情報で識別された前記サブアプリケーションを、前記コンピュータデバイスによりロードするステップを備える、
コンピュータ実施方法。
【発明を実施するための形態】
【0011】
当業者が本願の技術的解決法をより良く理解するために、本願の実施の形態における技術的解決策は、本願の実施の形態における添付図面を参照して、以下に明確かつ完全に記載される。記載された実施の態は、本願のすべての実施の形態ではなくむしろ一部に過ぎないことは明らかである。創造的な努力なしに本願の実施の形態に基づいて当業者によって得られる他のすべての実施の形態は、本願の保護範囲に包含されるべきである。
【0012】
図1は、端末上のメインアプリと、このメインアプリに含まれるサブアプリとを示す概略インターフェース図である。端末10のメインインターフェース11は、端末10にインストールされたアプリのアイコンを含む。アプリのアイコンは、複数のサブアプリを含むメインアプリのアイコンであってもよく、サブアプリを含まない独立アプリのアイコンであってもよい。端末10を使用するユーザがメインアプリの開始アクションをトリガすると(開始アクションは、ユーザがメインアプリのアイコン110に指で触れてトリガすることができる)、端末がメインインターフェース11からメインアプリのインターフェース12に切り替わる。メインアプリ(つまり、アイコン110に対応するアプリ)のインターフェース12が、メインアプリで実行できる複数のサブアプリのアイコン112、113、114、115、116、及び117を含んでいることが分かる。ユーザは、サブアプリのアイコンをタップすることで、サブアプリをメインアプリのインターフェース12へロードできる。ここで、
図1はいくつかのサブアプリの単なる例示であり、メインアプリに含まれるサブアプリの数は、
図1に示す数に限定されないことは触れるに値する。
【0013】
端末デバイスは、タブレットコンピュータ、スマートフォン、スマートウォッチ、又はその他コンピュータ装置及び通信装置であってよい。全ての端末デバイス(又はクライアントデバイスとも呼ばれる)は、アーキテクチャ面でいくつかの基本的コンポーネント、例えば、バス、処理装置、記憶装置、1つ以上の入出力装置、通信インターフェース等を含む。バスは、サーバと、端末の様々なコンポーネントとの間で行う通信のための配線を1本以上含んでもよい。処理装置は、命令を実行するように、及び、ステップ又はスレッドを処理するように構成された様々なタイプのプロセッサ又はマイクロプロセッサを含んでよい。記憶装置は、動的情報を記憶するように構成された、例えばランダムアクセスメモリ(RAM)のようなダイナミックメモリ、又は、静的情報を記憶するように構成されたスタティックメモリ、例えば読み出し専用メモリ(ROM)、及び、磁気又は光学記憶媒体や対応するドライバを含む大容量メモリを含んでよい。入力装置は、キーボード、マウス、スタイラス、タッチ画面、音声認識装置、生体認識装置等であってよい。出力装置は、情報を出力するように構成されたディスプレイ、プリンタ、スピーカ等であってよい。通信インターフェースを用いることにより、サーバ又はクライアントデバイスは別のシステム及び装置との間で通信できるようになる。通信インターフェースは、有線接続、無線接続、又は光学接続によってネットワークに接続できる。各ネットワークは、ローカルエリアネットワーク(LAN)、広域ネットワーク(WAN)、イントラネット、インターネット、モバイルフォンネットワーク、仮想プライベートネットワーク(VPN)、セルラーモバイル通信ネットワーク、他のモバイル通信ネットワーク、Bluetooth(登録商標)、NFC、又はこれらの任意の組み合わせを含んでよい。端末デバイスは、システムリソースを管理し、その他のプログラムの実行を制御するために用いられるオペレーティングシステムソフトウェアと、特定の機能を実行するために用いられるアプリケーションソフトウェア又はプログラム命令とを含む。
【0014】
図2は、本願の第1の実施の形態による、端末アプリをロードする方法のフローチャートである。
図1及び
図2を参照すると、この実施の形態における端末アプリをロードする本方法は以下を含む。
S101:端末にインストールされており、少なくとも1つのサブアプリを含むメインアプリの開始アクションをトリガするための第1の命令が受信される。
詳細には、ユーザは、端末のタッチ画面上の指定された範囲を指で触れてもよい。指定された範囲とは、メインアプリのアイコン110の場所である。端末は、ユーザからのメインアプリ開始アクションをトリガするための第1の命令を、ユーザによるメインアプリのアイコン110のタップ動作を感知することにより受信する。
【0015】
S102:第1の命令に応答して、アプリケーションロード情報が取得される。このアプリケーションロード情報は、事前設定期間におけるサブアプリの使用頻度情報に基づいて生成され、ロード対象サブアプリについての識別子情報を含む。
この実施の形態では、ユーザが特定のメインアプリ上での開始アクションをトリガした後に、このメインアプリを開始するプロセスにおけるロード対象サブアプリを決定する必要がある。この実施の形態において、端末は、第1の命令を受信した後に、端末の特定のディレクトリからアプリケーションロード情報を読み出すことができる。アプリケーションロード情報は、メインアプリの開始プロセスにおいてどのサブアプリをロードするかを示してよい。
【0016】
アプリケーションロード情報は、事前設定期間におけるサブアプリの使用頻度情報に基づいて生成されてよい。使用頻度情報を用いて、サブアプリの使用がどの程度の頻度かを表す。例えば、特定のメインアプリ(アイコン110に対応するアプリ)のインターフェース12に含まれる一組のサブアプリは、{第1のサブアプリ、第2のサブアプリ、第3のサブアプリ、第4のサブアプリ、第5のサブアプリ、第6のサブアプリ}である。第1のサブアプリはアイコン112に対応し、第2のサブアプリはアイコン113に対応し、第3のサブアプリはアイコン114に対応し、第4のサブアプリはアイコン115に対応し、第5のサブアプリはアイコン116に対応し、第6のサブアプリはアイコン117に対応する。上で述べたように、使用頻度情報に関する統計を実施するための事前設定期間は1週間であり、統計分析によって以下の情報が得られる:
過去1週間の第1のサブアプリの使用頻度情報は、3.2回/日であった。
過去1週間の第2のサブアプリの使用頻度情報は、8.5回/日であった。
過去1週間の第3のサブアプリの使用頻度情報は、4.3回/日であった。
過去1週間の第4のサブアプリの使用頻度情報は、5.5回/日であった。
過去1週間の第5のサブアプリの使用頻度情報は、1.2回/日であった。
過去1週間の第6のサブアプリの使用頻度情報は、0.5回/日であった。
【0017】
次に、上記統計分析に基づく、事前設定期間(例えば、1週間)におけるサブアプリの使用頻度の情報を降順にソートし、相対的に頻繁に使用される1つ以上のサブアプリを、メインアプリ開始プロセスにおける1つ又は複数のロード対象サブアプリとして決定する。1つ又は複数のロード対象サブアプリは、定期的に取得した使用頻度情報に基づき端末上で事前に決定されてよく、これに対応して、端末が読み出せるアプリケーションロード情報が生成されてよいことは明らかである。
【0018】
本願のこの実施の形態では、アプリケーションロード情報は、ロード対象サブアプリについての識別子情報を含んでよい。例えば、ロード対象サブアプリが第2のサブアプリ(アイコン113に対応するアプリ)と第4のサブアプリ(アイコン115に対応するアプリ)であると決定された場合に、アプリケーションロード情報は、第2のサブアプリについての識別子情報と第4のサブアプリについての識別子情報とを含むことができる。識別子情報はアプリ名、アプリの数等であってよい。
【0019】
本願の実施の形態によっては、アプリケーションロード情報を取得する前に、以下のステップを実行してアプリケーションロード情報を生成してもよい。
a1)使用頻度情報を取得するための要求情報がサーバ側へ送信される。
端末(クライアント側)にインストールされたサブアプリでは、事前設定期間においてユーザがどのくらい頻繁にサブアプリを使用したかを表す使用頻度情報についての統計を、そのサブアプリのサーバ側で実施してよい。これに対応して、サーバ側は、ユーザがアプリアカウントにログインする回数を記録してもよい。又は、ユーザがサーバ側のデータへアクセスする回数を記録してもよい。通常は、特定のメインアプリに含まれるサブアプリの使用頻度情報の取得を要求する要求情報を、端末がサーバ側へ送信してもよい。この要求情報は、ユーザID、事前設定期間、メインアプリについての識別子情報等を含んでよい。実施の形態によっては、端末が要求情報をメインアプリのサーバ側へ送信できることは触れるに値する。次に、メインアプリのサーバが、サブアプリのサーバ側から使用頻度情報を集める。
a2)要求情報に応答して、事前設定期間における、メインアプリに含まれたサブアプリの使用頻度情報がサーバ側から受信される。
サーバ側は、統計によって得られ、過去の事前設定期間においてユーザがサブアプリをどのくらい頻繁に使用したかを表す使用頻度情報を、端末へフィードバックする。
a3)受信した使用頻度情報は降順にソートされ、使用頻度情報が先頭にソートされたサブアプリが、ロード対象サブアプリとして決定される。
上で述べたように、使用頻度情報に基づいてソートすることができ、先頭にソートされたサブアプリを(そのサブアプリが相対的に頻繁に使用されていることを表す)ロード対象サブアプリとみなす。ロード対象サブアプリとして決定すべき数を、ユーザが選択又は決定してもよく、メインアプリに含まれているサブアプリの総数に基づいて、端末が決定してもよい(例えば、ロード対象サブアプリの数を総数の半分と決める)。
a4)ロード対象サブアプリについての識別子情報を含むアプリケーションロード情報が生成され、端末の指定されたディレクトリに保存される。
アプリケーションロード情報を特定の読み出しできるファイルに書き込むことができ、このファイルをメインアプリの指定されたディレクトリに保存する。
【0020】
本願の別の実施の形態では、アプリケーションロード情報を取得する前に、以下のステップを実行してアプリケーションロード情報を生成してもよい。
b1)メインアプリに含まれるサブアプリの、事前設定期間における使用頻度情報が、端末のメインアプリのインストールディレクトリから取得される。
b2)受信した使用頻度情報が降順にソートされ、使用頻度情報が先頭にソートされたサブアプリがロード対象サブアプリとして決定される。
b3)ロード対象サブアプリについての識別子情報を含むアプリケーションロード情報が生成され、それが、端末の指定されたディレクトリに保存される。
【0021】
前出のプロセスでは、端末は、メインアプリとメインアプリに含まれているサブアプリとを使用するユーザ行動のデータを監視し、ユーザがサブアプリをどのくらい頻繁に使用するかを示す使用頻度情報を得るべく統計を取り、この使用頻度情報を端末のローカル記憶域に保存できる。端末はローカル記憶域から使用頻度情報を定期的に読み出し、アプリケーションロード情報を含む、読み取り可能ファイルを生成できる。
【0022】
S103:メインアプリ開始プロセスにおいて、取得したアプリケーションロード情報に含まれるロード対象サブアプリについての識別子情報に従って、ロード対象サブアプリが決定されて、ロードされる。
ステップS103では、メインアプリ開始プロセスにおいて、端末は、取得した、アプリケーションロード情報に事前に書き込まれているファイルに基づき、分析によってロード対象サブアプリを入手し、決定したサブアプリをロードすることができる。例えば、決定したロード対象サブアプリが第2のアプリと第4のアプリである場合に、メインアプリ開始プロセスにおいて、これら2つのアプリのみをロードすればよい。これにより、メインアプリ開始プロセス内で特定のメインアプリに含まれる全てのサブアプリを一度にロードしなければならない点に起因する、ロード時間が長くなり、メインアプリを開く速度が遅くなるという従来技術の欠点を回避できる。
【0023】
図3は、本願の実施の形態による端末アプリをロードする方法において、メインアプリ内の1つのサブアプリをロードするフローチャートである。この実施の形態では、メインアプリ内の1つのサブアプリをロードするプロセスは具体的に以下を含む。
S1031:メインアプリ開始プロセスにおいて、取得したアプリケーションロード情報に含まれるロード対象サブアプリについての識別子情報に従って、ロード対象サブアプリが決定される。
【0024】
S1032:端末がロード対象サブアプリのインストールディレクトリを持っているかどうかが判断される。
本願のこの実施の形態では、メインアプリに含まれているサブアプリを独立アプリにパッケージングし、これを端末へインストールしてもよい。引き続き、
図1を参照すると、メインアプリのアイコン110に加え、端末のメインインターフェース11は、更に、メインアプリに含まれるサブアプリのアイコン112、113、114、115、116を含む。すなわち、サブアプリを端末10へ個別にインストールできる。インストールが完了すると、端末10が、各サブアプリにそれぞれ対応するインストールディレクトリを持つようになり、サブアプリのインストールファイルがインストールディレクトリに保存される。最後に、端末の記憶域がロード対象サブアプリに対応するインストールディレクトリを持っているかどうかを決定するために、端末は記憶域を走査することができる。
【0025】
S1033:端末の記憶域が、ロード対象サブアプリに対応するインストールディレクトリを持っている場合に、ロード対象サブアプリのインストールディレクトリに対応するストレージパス情報(storage path information、記憶パス情報)が取得される。
この実施の形態では、特定のサブアプリのインストールに成功した後に、このサブアプリに対応するメインアプリのインストールディレクトリ下の特定の指定されたパスにファイルを保存できる。このファイルを、ロード対象サブアプリのインストールディレクトリに対応するストレージパス情報に書き込むことができる。因って、メインアプリの開始アクションがトリガされた後に、メインアプリが、ロード対象サブアプリのインストールディレクトリに対応するストレージパス情報に書き込まれているファイルを読み出すことで、現在ロード対象であるサブアプリのインストールディレクトリに対応するストレージパス情報を取得する。例えば、第1のサブアプリ(アイコン112に対応)のインストールディレクトリに対応するストレージパス情報はProgram Files/app1/aであり、メインアプリのインストールディレクトリはProgram Files/appであり、ストレージパス情報は特定のファイルに書き込むことができ、ファイルはメインアプリのインストールディレクトリProgram Files/appに記憶される。
【0026】
S1034:取得したストレージパス情報に基づいて、ロード対象サブアプリのインストールディレクトリ内のファイルがメインアプリ内に呼び出され、ロード対象のサブアプリがロードされる。
本願のこの実施の形態では、ロード対象サブアプリのストレージパスを取得した後に、メインアプリがストレージパスを介してロード対象サブアプリのリソースを呼び出す。つまり、端末が現在のメインアプリのフレームワーク内において特定のサブアプリのインストールディレクトリ内のインストールファイルを再使用することで、メインアプリ内のロード対象サブアプリのロードを実施できる。メインアプリが開始しない場合は、ユーザがメインインターフェース11内でサブアプリのアイコンをタップしてサブアプリを個別に実行することもできることは明白である。
【0027】
S104:端末がロード対象サブアプリのインストールディレクトリを持っていない場合は、ロード対象サブアプリに対応するインストールパッケージが取得され、端末へインストールされる。
例えば、ロード対象サブアプリが第6のサブアプリ(アイコン117に対応するアプリ)を含むことが最終的に決定され、端末のメインインターフェース11内に第6のサブアプリのアイコンがないと仮定した場合に、現在、第6のサブアプリが端末にインストールされていない(つまり、ロード対象サブアプリのインストールディレクトリが存在しない)ことを示す。この場合、端末は、第6のサブアプリをダウンロード及びインストールする必要があるかどうかを問う要求情報をユーザに促すことができる。ユーザが第6のサブアプリをダウンロード及びインストールすることに同意した場合に、端末はインターネットから第6のサブアプリのインストールパッケージを取得し、このパッケージを端末へインストールすることができる。
【0028】
S105:ロード対象サブアプリのインストールディレクトリに対応するストレージパス情報が、メインアプリのインストールディレクトリに保存される。
上で述べたように、特定のサブアプリのインストールが完了すると、サブアプリのインストールディレクトリに対応するストレージパス情報を特定のファイルに書き込むことができ、このファイルをメインアプリのインストールディレクトリに保存できる。こうすることで、この後にユーザがメインアプリの開始アクションをトリガするプロセスにおいて、サブアプリに対応するストレージパス情報を見つけることができ、このストレージパス情報に従ってサブアプリのインストールディレクトリ内のリソースが呼び出される。
【0029】
本願の実施の形態では、この方法は更に以下を含む。
メインアプリに含まれる第1のサブアプリの開始アクションをトリガする第2の命令が受信される。
第2の命令に応答して、第1のサブアプリは、メインアプリ開始プロセスにおいてロードされたサブアプリであるかどうかが判断される。
【0030】
第1のサブアプリがメインアプリ開始プロセスにおいてロードされたサブアプリでない場合に、端末が、第1のサブアプリのインストールディレクトリを持っているかどうか判断される。
【0031】
端末が第1のサブアプリに対応するインストールディレクトリを持っていない場合は、第1のサブアプリに対応するインストールパッケージが取得され、端末にインストールされる。そして、ロード対象の第1のサブアプリのインストールディレクトリに対応するストレージパス情報がメインアプリのインストールディレクトリに保存される。
【0032】
端末が第1のサブアプリに対応するインストールディレクトリを持っている場合は、ロード対象の第1のサブアプリのインストールディレクトリに対応するストレージパス情報が取得され、取得したストレージパス情報に基づいて、ロード対象の第1のサブアプリのインストールディレクトリ内のファイルがメインアプリ内に呼び出され、ロード対象の第1のサブアプリがロードされる。
【0033】
前出のプロセスは、具体的なアプリケーションシナリオと組み合わせて、以下であってよい。すなわち、ユーザが特定のメインアプリのインターフェースを開いた後に、メインアプリのインターフェース内の特定のサブアプリのアイコンをタップすることで、この特定のサブアプリの開始アクションをトリガする。その後、端末が自己の記憶域を走査して、開始対象サブアプリのインストールディレクトリが記憶域内にあるかどうかを判断し(つまり、このサブアプリがインストールされているかどうかを判断し)、記憶域内にインストールディレクトリがない場合に、サブアプリのインストールパッケージをインターネット経由でダウンロードして、サブアプリを独立アプリとしてインストールし、同時に、サブアプリのストレージパス情報を特定のファイルに書き込む。この特定のファイルは、メインアプリのインストールディレクトリ下に記憶されている。一方、走査によって開始対象サプアプリのインストールディレクトリが記憶域内にあることが分かった場合に、メインアプリ内のサブアプリがリソース再利用によって開始されるようにするために、メインアプリのインストールディレクトリ内のサブアプリのストレージパス情報を読み出して、サブアプリのインストールディレクトリ下のインストールファイルを呼び出す。
【0034】
図4は、本願の第2の実施の形態による端末アプリをロードする方法のフローチャートである。この実施の形態における端末アプリをロードする方法は以下を含む。
S201:端末にインストールされ少なくとも1つのサプアプリを含むメインアプリの開始アクションをトリガする第1の命令が受信される。
図2のステップS101の内容を参照できる。
【0035】
S202:第1の命令に応答して、メインアプリに対応しており、ロード対象サブアプリについての識別子情報を含むアプリケーションロード情報が取得される。
この実施の形態では、ステップS202は、ユーザが選択したロード対象サブアプリに基づいてアプリケーションロード情報が生成される点において、先の実施の形態のステップS102と異なる。例えば、ユーザは、メインアプリ開始プロセスにおいてロードが必要なオブジェクトとして作用させるべくロードする必要があるいくつかのサブアプリを選択するために、メインアプリのロード設定機能を用いることができる。例えば、ユーザは、日常生活において比較的頻繁に使用される第1のサブアプリと第2のサブアプリとをロード対象サブアプリとして選択できる。
【0036】
S203:メインアプリ開始プロセスにおいて、取得したアプリケーションロード情報に含まれるロード対象サブアプリについての識別子情報に従って、ロード対象サブアプリが決定され、ロードされる。
図2のステップS103の内容を参照できる。
【0037】
図5は、本願の第3の実施の形態による端末アプリをロードする方法のフローチャートである。この実施の形態における端末アプリをロードする方法は以下を含む。
S301:端末にインストールされ少なくとも1つのサブアプリを含むメインアプリの開始アクションをトリガする第1の命令が受信される。
図2のステップS101の内容を参照できる。
【0038】
S302:第1の命令に応答して、アプリケーションロード情報が取得される。アプリケーションロード情報は、ユーザが予め決定したロード対象サブアプリの数と、事前設定期間におけるサブアプリの使用頻度情報とに基づいて生成され、ロード対象サブアプリについての識別子情報を含む。
この実施の形態におけるステップS302は、ユーザがメインアプリの設定機能を用いてロード対象サブアプリの数(例えば、3つ)を決定でき、端末がサブアプリの使用頻度情報を定期的に取得することが、上で述べた実施の形態とは異なる。サブアプリが使用頻度情報に従ってソートされるとすると、サブアプリは最終的に次のようにランク付けされる。第2のサブアプリ>第4のサブアプリ>第1のサブアプリ>第5のサブアプリ>第3のサブアプリ>第6のサブアプリ。最終的に得られた3つのロード対象サブアプリはそれぞれ第2のサブアプリ、第4のサブアプリ、第1のサブアプリである。次に、アプリケーションロード情報が生成され、端末の記憶域に保存される。
【0039】
S303:メインアプリ開始プロセスにおいて、取得したアプリケーションロード情報に含まれるロード対象サブアプリについての識別子情報に従って、ロード対象サブアプリが決定され、ロードされる。
図2のステップS103の内容を参照できる。
【0040】
本願の実施の形態において提供される技術的解決策から以下のことが分かる。メインアプリの開始アクションをトリガする第1の命令が受信された後に、メインアプリに対応するアプリケーションロード情報が取得され、アプリケーションロード情報を分析することでロード対象サブアプリが決定され、次いで、メインアプリ開始プロセスにおいて決定されたロード対象サブアプリがロードされる。前出のプロセスでは、ロード対象サブアプリは取得したアプリケーションロード情報に従って決定されるため、メインアプリに含まれている全てのサブアプリをロードする従来技術と比べて、アプリケーションのロードプロセスに費やす時間を短縮でき、メインアプリを開く速度を高速化できる。加えて、本願の実施の形態によれば、端末はメインアプリ内のサブアプリのインストールディレクトリ内にあるリソース(ファイル)を呼び出すことができるが、従来技術では、ユーザがメインアプリ内の特定のサブアプリを開くときには、開始対象のサブアプリ(別個にインストールされているアプリ)を直接実行することが一般的である。そのため、本願の実施の形態は、従来技術に比べて、端末のリソースの消費を減らすことができる。
【0041】
本願の実施の形態による、端末アプリをロードする装置の技術的解決策を以下に述べる。この装置は、先に述べた方法の原理に基づくため、その特定の技術的内容については先に述べた方法の実施の形態を参照されたい。
【0042】
図6は、本願の第1の実施の形態による端末アプリをロードする装置のモジュール図である。この装置は以下を含む。
受信モジュール401:メインアプリの開始アクションをトリガする命令を受信するように構成される。メインアプリは端末にインストールされ少なくとも1つのサブアプリを含む。
取得モジュール402:命令に応答して、メインアプリに対応する、ロード対象サブアプリについての識別子情報を含むアプリケーションロード情報を取得するように構成される。
ロードモジュール403:取得したアプリケーションロード情報に含まれるロード対象サブアプリについての識別子情報に従って、メインアプリ開始プロセスにおけるロード対象サブアプリを決定し、ロードするように構成される。
【0043】
本願の実施の形態では、前記取得モジュール402は、具体的に:
事前設定期間における前記サブアプリの使用頻度情報に基づいて生成され、ロード対象サブアプリについての識別子情報を含むアプリケーションロード情報を取得するように構成される;又は、
ユーザによって事前に選択されたロード対象サブアプリに基づいて生成され、前記ロード対象サブアプリについての識別子情報を含むアプリケーションロード情報を取得するように構成される;又は、
ユーザによって事前に決定されたロード対象サブアプリの数と、事前設定期間における前記サブアプリの使用頻度情報とに基づいて生成され、前記ロード対象のサブアプリについての識別子情報を含むアプリケーションロード情報を取得するように構成される。
【0044】
図7は、本発明の第2の実施の形態による端末アプリをロードするための装置のモジュール図である。この実施の形態において、前記装置は:
前記使用頻度情報を取得するための要求情報をサーバ側へ送信するように構成された要求送信ユニット404と;
前記要求情報に応答して、前記サーバ側から送信され前記メインアプリに含まれる前記サブアプリの、事前設定期間における前記使用頻度情報を受信するように構成された情報受信ユニット405と;
前記受信した使用頻度情報を降順にソートし、使用頻度情報が先頭にソートされたサブアプリを、前記ロード対象サブアプリとして決定するように構成された第1の決定ユニット406と;
前記ロード対象サブアプリについての前記識別子情報を含むアプリケーションロード情報を生成し、前記アプリケーションロード情報を前記端末の指定されたディレクトリに保存するように構成された第1の生成ユニット407と;を更に備え、
前記取得モジュール402は、具体的に、前記メインアプリに対応し前記ロード対象サブアプリについての前記識別子情報を含む前記アプリケーションロード情報を、前記端末の前記指定されたディレクトリから読み出すように構成される。
【0045】
図8は、本発明の第3の実施の形態による端末アプリをロードするための装置のモジュール図である。この実施の形態において、前記装置は:
前記事前設定期間における、前記メインアプリに含まれるサブアプリの使用頻度情報を、前記端末の前記メインアプリのインストールディレクトリから取得するように構成された情報取得ユニット501と;
前記受信した前記使用頻度情報を降順にソートし、使用頻度情報が先頭にソートされたサブアプリを、前記ロード対象サブアプリとして決定するように構成された第2の決定ユニット502と;
前記ロード対象サブアプリについての前記識別子情報を含むアプリケーションロード情報を生成し、前記アプリケーションロード情報を、前記端末の指定されたディレクトリに保存するように構成された第2の生成ユニット503と;を更に備え、
前記取得モジュール402は、具体的に、前記メインアプリに対応し前記ロード対象サブアプリについての前記識別子情報を含む前記アプリケーションロード情報を、前記端末の前記指定されたディレクトリから読み出すように構成される。
【0046】
図9は、本願の第4の実施の形態に従って端末アプリをロードする装置のモジュール図である。この実施の形態では、ロードモジュール403は以下を含む。
第3の決定ユニット4031:取得したアプリケーションロード情報に含まれるロード対象サブアプリについての識別子情報に従って、メインアプリ開始プロセスにおけるロード対象サブアプリを決定するように構成される。
判断ユニット4032:端末がロード対象サブアプリのインストールディレクトリを持っているかどうかを判断するように構成される。
パス取得ユニット4033:端末がロード対象サブアプリのインストールディレクトリを持っている場合に、ロード対象サブアプリのインストールディレクトリに対応するストレージパス情報を取得するように構成される。
アプリケーションロードユニット4034:取得したストレージパス情報に基づいて、メインアプリ内のロード対象サブアプリのインストールディレクトリ内にあるファイルを呼び出して、ロード対象サブアプリをロードするように構成される。
【0047】
本願のこの実施の形態では、本装置は更に以下を含む。
インストールモジュール604:端末がロード対象サブアプリのインストールディレクトリを持っていない場合に、ロード対象サブアプリに対応するインストールパッケージを取得して、端末にこのパッケージをインストールするように構成される。
パス情報保存ユニット605:ロード対象サブアプリのインストールディレクトリに対応するストレージパス情報を、メインアプリのインストールディレクトリに保存するように構成される。
【0048】
説明を容易にするために、装置について述べる場合には、装置を機能ごとの様々なユニットに分割して記述している。本願を実装する際には、ユニットの機能を同一又は複数のソフトウェア及び/又はハードウェアにて実装できることは明白である。
【0049】
当業者は、本発明の実施の形態が、方法、システム、又はコンピュータプログラム製品として提供され得ることを理解すべきである。したがって、本発明は、完全なハードウェアの実施の形態、完全なソフトウェアの実施の形態、又はソフトウェアとハードウェアとを組み合わせた実施の形態の態様で実施されてもよい。更に、本発明は、コンピュータ使用可能プログラムコードを含む、1つ又は複数のコンピュータ使用可能な記憶媒体(磁気ディスクメモリ、CD−ROM、光メモリなどを含むが、これに限定されない)上に実装されたコンピュータプログラム製品の形態であってもよい。
【0050】
本発明は、本発明の実施の形態の方法、デバイス(システム)及びコンピュータプログラム製品のフローチャート及び/又はブロック図を参照して説明される。コンピュータプログラム命令は、各プロセス及び/又はフローチャートにおけるブロック及び/又はブロック図、及び、プロセス及び/又はフローチャートにおけるブロック及び/又はブロック図の組合せを実施するために使用できることを理解されたい。コンピュータプログラム命令は、機械を形成するために、ユニバーサルコンピュータ、専用コンピュータ、組み込みプロセッサ、又は他のプログラム可能データ処理デバイスのプロセッサに提供されて、コンピュータ又は他のプログラム可能なデータ処理デバイスのプロセッサは、フローチャート及び/又はブロック図の1つ又は複数のブロックにおける、1つ又は複数のプロセスで指定された機能を実施するように構成される装置を生成する。
【0051】
コンピュータプログラム命令はまた、コンピュータ可読記憶装置に記憶され、コンピュータ又は他のプログラム可能データ処理デバイスを特定の手段で動作させるようにすることができ、その結果、コンピュータ可読記憶装置に記憶された命令は、命令装置を含む製品を形成する。命令装置は、フローチャートの1つ又は複数のプロセス及び/又はブロック図の1つ又は複数のブロックによって指定される機能を実施する。
【0052】
コンピュータプログラム命令はまた、コンピュータ又は他のプログラマブルデータ処理デバイスにインストールされ、一連の動作ステップがコンピュータ又は他のプログラマブルデバイス上で実行され、コンピュータ実装処理を生成することができる。そのため、コンピュータ又は他のプログラマブルデバイスで実行される命令は、フローチャート及び/又はブロック図の1つ又は複数のブロックにおいて指定される機能を実施するためのステップを提供する。
【0053】
用語「含む」、「備える」、又はこれらの派生形は、非排他的な包含をカバーすることを意図し、一連の要素を含む工程、方法、商品、デバイスは、このような要素を含むだけでなく、明記されていないその他の要素をも含むか、あるいは、その工程、方法、商品、デバイスに固有な要素を更に含む点にも留意されたい。さらなる制限なしに、表現「〜を含む(including a/an…)」によって定義される要素は、その要素を含む工程、方法、商品、又はデバイスが、他の同一の要素を更に有することを除外するものではない。
【0054】
当業者は、本願の実施の形態が、方法、システム、又はコンピュータプログラム製品として提供され得ることを理解すべきである。したがって、本願は、完全なハードウェアの実施の形態、完全なソフトウェアの実施の形態、又はソフトウェアとハードウェアとを組み合わせた実施の形態の態様で実装することができる。更に、本願は、コンピュータで使用可能なプログラムコードを含む、1つ又は複数のコンピュータで使用可能な記憶媒体(磁気ディスクメモリ、CD−ROM、光メモリなどを含むがこれに限定されない)に実装されるコンピュータプログラム製品の形態を採ることができる。
【0055】
本願は、コンピュータによって実行されるコンピュータ実行可能命令、例えばプログラムモジュールの共通の文脈で説明することができる。一般に、プログラムモジュールは、特定のタスクを実行するため、又は特定の抽象データ型を実施するためのルーチン、プログラム、オブジェクト、アセンブリ、データ構造などを含む。本願は、通信ネットワークを介して接続された遠隔処理デバイスを使用することによってタスクが実行される分散コンピューティング環境においても実施することができる。分散型コンピュータ環境では、プログラムモジュールは、記憶デバイスを含むローカル及びリモートのコンピュータ記憶媒体に配置されてもよい。
【0056】
本明細書の実施の形態は、逐次、実施の形態の同一又は類似の部分が互いに参照して得られるように記載されており、各実施の形態は他の実施の形態と異なる部分を強調している。特に、システムの実施の形態は基本的に方法の実施の形態と同様であるので、簡単に記載されている。関連する部分については、方法の実施の形態の部分の説明を参照する。
【0057】
上記の説明は、本願の実施の形態に過ぎず、本願を限定するものではない。当業者にとって、本願は様々な修正及び変更を有することができる。本願の精神及び原理内でなされた変更、均等物の置換、改良などは、すべて本願の特許請求の範囲内に含まれるべきである。
[第1の局面]
端末アプリケーション(アプリ)をロードする方法であって:
端末にインストールされ少なくとも1つのサブアプリを含むメインアプリの開始アクションをトリガする第1の命令を受信するステップと;
前記第1の命令に応答して、前記メインアプリに対応し、ロード対象サブアプリについての識別子情報を含むアプリケーションロード情報を取得するステップと;
取得した前記アプリケーションロード情報に含まれる前記ロード対象サブアプリについての前記識別子情報に従って、前記メインアプリ開始プロセスにおける前記ロード対象サブアプリを決定し、ロードするステップと;を備える、
端末アプリケーションをロードする方法。
[第2の局面]
前記メインアプリに対応し、ロード対象サブアプリについての識別子情報を含むアプリケーションロード情報を取得する前記ステップは:
事前設定期間における前記サブアプリの使用頻度情報に基づいて生成され、前記ロード対象サブアプリについての識別子情報を含むアプリケーションロード情報を取得するステップ;又は、
ユーザによって事前に選択されたロード対象サブアプリに基づいて生成され、前記ロード対象のサブアプリについての識別子情報を含むアプリケーションロード情報を取得するステップ;又は
ユーザによって事前に決定されたロード対象サブアプリの数と、事前設定期間における前記サブアプリの使用頻度情報とに基づいて生成され、前記ロード対象サブアプリについての識別子情報を含むアプリケーションロード情報を取得するステップ;を備える、
第1の局面に記載の方法。
[第3の局面]
前記メインアプリに対応し、ロード対象サブアプリについての識別子情報を含むアプリケーションロード情報を取得する前記ステップの前に、前記方法は:
使用頻度情報を取得するための要求情報をサーバ側へ送信するステップと;
前記要求情報に応答して、事前設定された期間中における、前記サーバ側から送信される、前記メインアプリに含まれる前記サブアプリの使用頻度情報を受信するステップと;
前記受信した使用頻度情報を降順にソートし、使用頻度情報が先頭にソートされたサブアプリを、ロード対象サブアプリとして決定するステップと;
前記ロード対象サブアプリについての前記識別子情報を含むアプリケーションロード情報を生成し、前記アプリケーションロード情報を、前記端末の指定されたディレクトリに保存するステップと;を更に備え、
前記メインアプリに対応し、ロード対象サブアプリについての識別子情報を含むアプリケーションロード情報を取得する前記ステップは:
前記メインアプリに対応し、前記ロード対象サブアプリについての前記識別子情報を含む前記アプリケーションロード情報を、前記端末の前記指定されたディレクトリから読み出すステップを備える、
第1の局面に記載の方法。
[第4の局面]
前記メインアプリに対応し、ロード対象サブアプリについての識別子情報を含むアプリケーションロード情報を取得する前記ステップの前に、前記方法は:
事前設定期間における、前記メインアプリに含まれる前記サブアプリの使用頻度情報を、前記端末の前記メインアプリのインストールディレクトリから取得するステップと;
前記受信した前記使用頻度情報を降順にソートし、前記使用頻度情報が先頭にソートされたサブアプリを、前記ロード対象サブアプリとして決定するステップと;
前記ロード対象サブアプリについての前記識別子情報を含むアプリケーションロード情報を生成し、前記アプリケーションロード情報を前記端末の指定されたディレクトリに保存するステップと;を更に備え、
前記メインアプリに対応し、ロード対象サブアプリについての識別子情報を含むアプリケーションロード情報を取得する前記ステップは、前記端末の前記指定されたディレクトリから、前記メインアプリに対応し前記ロード対象サブアプリについての前記識別子情報を含む前記アプリケーションロード情報を読み出すステップを備える、
第1の局面に記載の方法。
[第5の局面]
前記取得したアプリケーションロード情報に含まれる前記ロード対象サブアプリについての前記識別子情報に従って、前記メインアプリ開始プロセスにおける前記ロード対象サブアプリを決定し、ロードする前記ステップは:
前記取得したアプリケーションロード情報に含まれる前記ロード対象サブアプリについての前記識別子情報に従って、前記メインアプリ開始プロセスにおける前記ロード対象サブアプリを決定するステップと;
前記端末が前記ロード対象サブアプリのインストールディレクトリを持っているかどうかを判断するステップと;
肯定であれば、前記ロード対象サブアプリの前記インストールディレクトリに対応するストレージパス情報を取得するステップと;
前記取得した前記ストレージパス情報に基づいて、前記メインアプリ内の前記ロード対象サブアプリの前記インストールディレクトリ内にあるファイルを呼び出し、前記ロード対象サブアプリをロードするステップと;を備える、
第1の局面に記載の方法。
[第6の局面]
前記方法は:
前記ロード対象サブアプリに対応するインストールパッケージを取得し、更に、前記端末が前記ロード対象サブアプリのインストールディレクトリを持っていない場合に、前記パッケージを前記端末にインストールするステップと;
前記ロード対象サブアプリの前記インストールディレクトリに対応する前記ストレージパス情報を、前記メインアプリのインストールディレクトリに記憶するステップと;を更に備える、
第1の局面に記載の方法。
[第7の局面]
前記方法は:
前記メインアプリに含まれる第1のサブアプリの開始アクションをトリガする第2の命令を受信するステップと;
前記第2の命令に応答して、前記第1のサブアプリが、前記メインアプリ開始プロセスにおいてロードされたサブアプリであると判断するステップと;
前記第1のサブアプリが前記メインアプリ開始プロセスにおいてロードされたサブアプリでない場合に、前記端末が前記第1のサブアプリのインストールディレクトリを持っているかどうかを判断するステップと;
前記端末が前記第1のサブアプリの前記インストールディレクトリを持っていない場合に、前記第1のサブアプリに対応するインストールパッケージを取得し、前記パッケージを前記端末にインストールし、前記ロード対象の第1のサブアプリの前記インストールディレクトリに対応するストレージパス情報を、前記メインアプリのインストールディレクトリに保存するステップと;
前記端末が前記第1のサブアプリの前記インストールディレクトリを持っている場合に、前記ロード対象の第1のサブアプリの前記インストールディレクトリに対応するストレージパス情報を取得し、取得した前記ストレージパス情報に基づいて、前記メインアプリ内の前記ロード対象の第1のサブアプリの前記インストールディレクトリ内にあるファイルを呼び出し、前記ロード対象の第1のサブアプリをロードするステップと;を更に備える、
第1の局面に記載の方法。
[第8の局面]
端末アプリケーション(アプリ)をロードする装置であって:
端末にインストールされ少なくとも1つのサブアプリを含むメインアプリの開始アクションをトリガする命令を受信するように構成された受信モジュールと;
前記命令に応答して、前記メインアプリに対応し、ロード対象サブアプリについての識別子情報を含むアプリケーションロード情報を取得するように構成された取得モジュールと;
取得した前記アプリケーションロード情報に含まれる前記ロード対象サブアプリについての前記識別子情報に従って、前記メインアプリ開始プロセスにおける前記ロード対象サブアプリを決定し、ロードするように構成されたロードモジュールと;を備える、
端末アプリケーションをロードする装置。
[第9の局面]
前記取得モジュールは、具体的に:
事前設定期間における前記サブアプリの使用頻度情報に基づいて生成され、ロード対象サブアプリについての識別子情報を含むアプリケーションロード情報を取得するように構成された;又は、
ユーザによって事前に選択されたロード対象サブアプリに基づいて生成され、前記ロード対象サブアプリについての識別子情報を含むアプリケーションロード情報を取得するように構成された;又は、
ユーザによって事前に決定されたロード対象サブアプリの数と、事前設定期間における前記サブアプリの使用頻度情報とに基づいて生成され、前記ロード対象のサブアプリについての識別子情報を含むアプリケーションロード情報を取得するように構成された、
第8の局面に記載の装置。
[第10の局面]
前記装置は:
前記使用頻度情報を取得するための要求情報をサーバ側へ送信するように構成された要求送信ユニットと;
前記要求情報に応答して、事前設定期間における、前記サーバ側から送信され前記メインアプリに含まれる前記サブアプリの前記使用頻度情報を受信するように構成された情報受信ユニットと、
前記受信した使用頻度情報を降順にソートし、使用頻度情報が先頭にソートされたサブアプリを、前記ロード対象サブアプリとして決定するように構成された第1の決定ユニットと;
前記ロード対象サブアプリについての前記識別子情報を含むアプリケーションロード情報を生成し、前記アプリケーションロード情報を前記端末の指定されたディレクトリに保存するように構成された第1の生成ユニットと;を更に備え、
前記取得モジュールは、具体的に、前記メインアプリに対応し前記ロード対象サブアプリについての前記識別子情報を含む前記アプリケーションロード情報を、前記端末の前記指定されたディレクトリから読み出すように構成された、
第8の局面に記載の装置。
[第11の局面]
前記装置は:
前記事前設定期間における、前記メインアプリに含まれるサブアプリの使用頻度情報を、前記端末の前記メインアプリのインストールディレクトリから取得するように構成された情報取得ユニットと;
前記受信した前記使用頻度情報を降順にソートし、使用頻度情報が先頭にソートされたサブアプリを、前記ロード対象サブアプリとして決定するように構成された第2の決定ユニットと;
前記ロード対象サブアプリについての前記識別子情報を含むアプリケーションロード情報を生成し、前記アプリケーションロード情報を、前記端末の指定されたディレクトリに保存するように構成された第2の生成ユニットと;を更に備え、
前記取得モジュールは、具体的に、前記メインアプリに対応し前記ロード対象サブアプリについての前記識別子情報を含む前記アプリケーションロード情報を、前記端末の前記指定されたディレクトリから読み出すように構成された、
第8の局面に記載の装置。
[第12の局面]
前記ロードモジュールは:
取得した前記アプリケーションロード情報に含まれる前記ロード対象サブアプリについての前記識別子情報に従って、前記メインアプリ開始プロセスにおける前記ロード対象サブアプリを決定するように構成された第3の決定ユニットと;
前記端末が前記ロード対象サブアプリのインストールディレクトリを持っているかどうかを判断するように構成され判断ユニットと;
前記端末が前記ロード対象サブアプリの前記インストールディレクトリを持っている場合に、前記ロード対象サブアプリの前記インストールディレクトリに対応するストレージパス情報を取得するように構成されたパス取得ユニットと;
前記取得したストレージパス情報に基づいて、前記メインアプリ内の前記ロード対象サブアプリの前記インストールディレクトリ内にあるファイルを呼び出し、前記ロード対象サブアプリをロードするように構成されたアプリケーションロードユニットと;を備える、
第8の局面に記載の装置。
[第13の局面]
前記装置は:、
前記端末が前記ロード対象サブアプリのインストールディレクトリを持っていない場合に、前記ロード対象サブアプリに対応するインストールパッケージを取得し、前記パッケージを前記端末にインストールするように構成されたインストールモジュールと;
前記ロード対象サブアプリの前記インストールディレクトリに対応するストレージパス情報を、前記メインアプリのインストールディレクトリに保存するように構成されたパス情報保存ユニットと;を更に備える、
第8の局面に記載の装置。