(57)【要約】  ユーザインターフェースコンポーネントを処理する方法が提供されており、この方法は、ワイヤレスデバイスに通信され得る１つ以上のユーザインターフェースコンポーネントを受け取ることを含む。１つ以上のユーザインターフェースコンポーネントのそれぞれに対するコンポーネントリスクレベルが、１つ以上のユーザインターフェースコンポーネントのそれぞれに決定され、割り当てられる。割り当てられたリスクレベルを示している組み込まれたリスクコードを使用して、１つ以上のユーザインターフェースコンポーネントのそれぞれにデジタル的に署名できる。さらに、コンポーネントリスクレベルは、複数のコンポーネントリスクレベルから選択できる。特定の実施形態では、コンポーネントリスクレベルは、ユーザインターフェースコンポーネントのタイプに基づいて決定でき、ユーザインターフェースコンポーネントのデベロッパに基づいて決定できる。【選択図】      図４
2009529720.tif 000002
【特許請求の範囲】
【請求項１】
ユーザインターフェースコンポーネントを処理する方法において、
ワイヤレスデバイスに通信されるべき１つ以上のユーザインターフェースコンポーネントを受け取ることと、
前記１つ以上のユーザインターフェースコンポーネントのそれぞれに対するコンポーネントリスクレベルを決定することと、
決定されたコンポーネントリスクレベルを前記１つ以上のユーザインターフェースコンポーネントのそれぞれに割り当てることとを含む方法。
【請求項２】
前記割り当てられたリスクレベルを示している、組み込まれたリスクコードを使用して、前記１つ以上のユーザインターフェースコンポーネントのそれぞれにデジタル的に署名することをさらに含む請求項１記載の方法。
【請求項３】
前記コンポーネントリスクレベルは、複数のコンポーネントリスクレベルから選択される請求項１記載の方法。
【請求項４】
前記コンポーネントリスクレベルは、前記ユーザインターフェースコンポーネントのタイプに少なくとも部分的に基づいて決定される請求項１記載の方法。
【請求項５】
前記コンポーネントリスクレベルは、前記ユーザインターフェースコンポーネントのデベロッパに少なくとも部分的に基づいて決定される請求項１記載の方法。
【請求項６】
より低いリスクレベルは、承認されているデベロッパによって開発された各ユーザインターフェースコンポーネントに割り当てられる請求項５記載の方法。
【請求項７】
より高いリスクレベルは、承認されていないデベロッパによって開発された各ユーザインターフェースコンポーネントに割り当てられる請求項５記載の方法。
【請求項８】
前記１つ以上のユーザインターフェースコンポーネントをワイヤレスデバイスにダウンロードすることをさらに含む請求項１記載の方法。
【請求項９】
ユーザインターフェースバンドルを発生させるために、複数のユーザインターフェースコンポーネントをバンドルすることをさらに含む請求項１記載の方法。
【請求項１０】
前記ユーザインターフェースバンドルに対するバンドルリスクレベルを決定することをさらに含む請求項９記載の方法。
【請求項１１】
前記バンドルリスクレベルは、前記ユーザインターフェースバンドル内のユーザインターフェースコンポーネントの各コンポーネントリスクレベルに少なくとも部分的に基づいて決定される請求項１０記載の方法。
【請求項１２】
前記ユーザインターフェースバンドルにデジタル的に署名することをさらに含む請求項１１記載の方法。
【請求項１３】
前記ユーザインターフェースバンドルを前記ワイヤレスデバイスにダウンロードすることをさらに含む請求項１２記載の方法。
【請求項１４】
前記ユーザインターフェースバンドルを前記ワイヤレスデバイスにダウンロードする料金を課金することをさらに含む請求項１３記載の方法。
【請求項１５】
前記ユーザインターフェースバンドルは、無線によるインターフェースによって前記ワイヤレスデバイスにダウンロードされる請求項１４記載の方法。
【請求項１６】
ワイヤレスデバイスでユーザインターフェースコンポーネントを取得する方法において、
ダウンロードサーバにアクセスすることと、
ユーザインターフェースバンドルを前記ダウンロードサーバから受け取ることとを含み、
前記ユーザインターフェースバンドルは、前記ユーザインターフェースバンドルを前記ワイヤレスデバイス上にロードすることに関係するバンドルリスクレベルを含む方法。
【請求項１７】
前記ユーザインターフェースバンドルを受け取る前に、利用可能なユーザインターフェースバンドルのメニューから前記ユーザインターフェースバンドルを選択することをさらに含む請求項１６記載の方法。
【請求項１８】
前記ダウンロードサーバから受け取った前記ユーザインターフェースバンドルのバンドルデジタル署名を検出して、デコードすることをさらに含む請求項１７記載の方法。
【請求項１９】
前記ユーザインターフェースバンドルのバンドルデジタル署名をデコードした後に、前記バンドルリスクレベルを決定することをさらに含む請求項１８記載の方法。
【請求項２０】
前記バンドルリスクレベルをバンドルしきい値と比較することをさらに含む請求項１９記載の方法。
【請求項２１】
前記バンドルリスクレベルを前記バンドルしきい値と比較した後に、複数のユーザインターフェースコンポーネントのそれぞれを生成するために前記ユーザインターフェースバンドルをアンバンドルすることをさらに含む請求項２０記載の方法。
【請求項２２】
前記複数のユーザインターフェースコンポーネントのそれぞれは、グラフィカルユーザインターフェースコンポーネントと、音声ユーザインターフェースコンポーネントと、タッチスクリーンユーザインターフェースコンポーネントとからなる、グループから選択される請求項２１記載の方法。
【請求項２３】
前記複数のユーザインターフェースコンポーネントのそれぞれは、コンポーネントデジタル署名と、前記ユーザインターフェースコンポーネントを前記ワイヤレスデバイス上にロードすることに関係するコンポーネントリスクレベルとを有する請求項２１記載の方法。
【請求項２４】
前記ユーザインターフェースコンポーネントのうちの少なくとも１つの前記コンポーネントデジタル署名を検出することをさらに含む請求項２３記載の方法。
【請求項２５】
前記コンポーネントリスクレベルをコンポーネントリスクレベルしきい値と比較することをさらに含む請求項２４記載の方法。
【請求項２６】
前記コンポーネントリスクレベルを前記コンポーネントしきい値と比較した結果に少なくとも部分的に基づいて、前記複数のユーザインターフェースコンポーネントのうちの１つ以上を前記ワイヤレスデバイスに選択的に適用することをさらに含む請求項２５記載の方法。
【請求項２７】
ワイヤレスデバイスにおいて、
プロセッサと、
前記プロセッサによってアクセス可能なメモリと、
前記メモリ内に記憶され、前記プロセッサによって実行可能なユーザインターフェースと、
前記メモリ内に組み込まれたユーザインターフェースバンドルとを具備し、
前記ユーザインターフェースバンドルは、バンドルリスクレベルを有するワイヤレスデバイス。
【請求項２８】
前記プロセッサに結合されているディスプレイをさらに具備し、
選択されたユーザインターフェースバンドルが前記ワイヤレスデバイスにダウンロードされて前記メモリ内に記憶される前に、ユーザインターフェースコンポーネントバンドルのメニューが、前記ディスプレイによってユーザに提示される請求項２７記載のワイヤレスデバイス。
【請求項２９】
前記ユーザインターフェースバンドルは、複数のユーザインターフェースコンポーネントを備える請求項２８記載のワイヤレスデバイス。
【請求項３０】
各ユーザインターフェースコンポーネントは、前記プロセッサによる前記ユーザインターフェースコンポーネントの実行に関係するコンポーネントリスクレベルを含む請求項２９記載のワイヤレスデバイス。
【請求項３１】
ユーザインターフェースコンポーネントをダウンロードするシステムにおいて、
セキュリティサーバと、
アプリケーションダウンロードサーバにアクセス可能な記憶されたアプリケーションデータベースと、
前記記憶されたアプリケーションデータベース内に記憶されている少なくとも１つのユーザインターフェースバンドルとを具備し、
前記ユーザインターフェースバンドルは、
複数のインターフェースコンポーネントと、
前記ユーザインターフェースバンドルをワイヤレスデバイスにダウンロードすることに関係する割り当てられたリスクに関係するバンドルリスクレベルとを含むシステム。
【請求項３２】
前記複数のユーザインターフェースコンポーネントのそれぞれは、前記ワイヤレスデバイスにおいて前記ユーザインターフェースコンポーネントを実行することに関係する、割り当てられたコンポーネントリスクレベルを含む請求項３１記載のシステム。
【請求項３３】
前記記憶されたアプリケーションデータベースに結合されているセキュリティサーバと、
前記セキュリティサーバ内に組み込まれたサーバセキュリティモジュールとをさらに具備し、
前記サーバモジュールは第１のコンピュータプログラムを含み、
前記第１のコンピュータプログラムは、前記複数のユーザインターフェースコンポーネントのうちの少なくとも１つを受け取る命令を含む請求項３２記載のシステム。
【請求項３４】
アプリケーションダウンロードサーバと、
前記アプリケーションダウンロードサーバ内の第２のコンピュータプログラムとをさらに含み、
前記コンピュータプログラムは、１つ以上のデジタル的に署名されたユーザインターフェースコンポーネントをワイヤレスデバイスに通信させる命令を含む請求項３３記載のシステム。
【請求項３５】
コンピュータ読取り可能な媒体内に組み込まれたコンピュータプログラムにおいて、
１つ以上のユーザインターフェースコンポーネントを受け取る命令と、
前記１つ以上の受け取られたユーザインターフェースコンポーネントのそれぞれに対するコンポーネントリスクレベルを決定する命令と、
決定されたコンポーネントリスクレベルを前記１つ以上のユーザインターフェースコンポーネントのそれぞれに割り当てる命令とを含み、
前記コンポーネントリスクレベルは、ワイヤレスデバイスにおいてユーザインターフェースコンポーネントを実行することに関係するリスクを示すコンピュータプログラム。
【請求項３６】
コンピュータ読取り可能な媒体内に組み込まれたコンピュータプログラムにおいて、
ユーザインターフェースバンドルを受け取る命令を含み、
前記ユーザインターフェースバンドルは、ワイヤレスデバイスにおいて前記ユーザインターフェースバンドルをアンバンドルするセキュリティリスクを示すデータアイテムを含むコンピュータプログラム。
【請求項３７】
ユーザインターフェースコンポーネントを処理する電子デバイスにおいて、
ワイヤレスデバイスに通信されるべき１つ以上のユーザインターフェースコンポーネントを受け取る手段と、
前記１つ以上のユーザインターフェースコンポーネントのそれぞれに対するコンポーネントリスクレベルを決定する手段と、
決定されたコンポーネントリスクレベルを前記１つ以上のユーザインターフェースコンポーネントのそれぞれに割り当てる手段とを具備する電子デバイス。
【請求項３８】
ワイヤレスデバイスにおいて、
ダウンロードサーバにアクセスする手段と、
ユーザインターフェースバンドルを前記ダウンロードサーバから受け取る手段とを具備し、
前記ユーザインターフェースバンドルは、前記ユーザインターフェースバンドルを前記ワイヤレスデバイス上にロードすることに関係するバンドルリスクレベルを含むワイヤレスデバイス。
【発明の詳細な説明】
【分野】
【０００１】
本開示は、一般的に、ワイヤレスデバイスに対するユーザインターフェースに関する。さらに詳細に説明すると、本開示は、ユーザインターフェースコンポーネントをワイヤレスデバイスにダウンロードすることに関する。
【関連技術の説明】
【０００２】
技術の進歩によって、ワイヤレスデバイスは、より小型になり、より高性能になった。現在、例えば、移動体電話機、パーソナルデジタルアシスタント（ＰＤＡ）、ラップトップ、およびページングデバイスを含むさまざまなワイヤレスデバイスが存在する。これらのデバイスは、小型で、軽量であるので、ユーザによって容易に携帯されている。これらのデバイスは、ワイヤレスネットワークによって音声および／またはデータを送信する能力を含んでいてもよい。さらに、多くのこのようなワイヤレスデバイスは、有効なコンピューティング機能を提供しているので、小型パーソナルコンピュータおよびハンドヘルドＰＤＡと同等になってきている。
【０００３】
一般的に、より小型、かつ、より高性能になったこれらのワイヤレスデバイスは、制約されたリソースであることが多い。例えば、スクリーンサイズ、利用可能なメモリおよびファイルシステムスペースの量、ならびに入力および出力機能の量が、小型サイズのデバイスによって制限されるかもしれない。このような厳しいリソース制約のために、このようなワイヤレスデバイス上に存在しているソフトウェアおよび他の情報の制限されたサイズと品質とを維持することが望まれる。
【０００４】
これらのワイヤレスデバイスのうちのいくつかは、アプリケーションプログラミングインターフェース（ＡＰＩ）を利用しており、ＡＰＩは、実行時環境ソフトウェアプラットフォームと呼ばれることがある。デバイスリソースに対する一般化されたコールを提供することによって、このようなワイヤレスデバイスの動作およびプログラミングを簡単にするために、ＡＰＩをワイヤレスデバイス上にインストールすることができる。さらに、ＡＰＩの中には、このようなワイヤレスデバイス上で実行可能なソフトウェアアプリケーションを生成する能力をソフトウェアデベロッパに提供できるものもある。さらに、ＡＰＩは、ワイヤレスデバイスシステムハードウェアとソフトウェアアプリケーションとの間のインターフェースを提供することができる。このようなことから、ソフトウェアが関数に対する一般的なコールをできることによって、ソフトウェアが実行されている個々のハードウェアまたはデバイスに対してソフトウェアアプリケーションのソースコードを適合させるようにデベロッパに要求することなく、ソフトウェアアプリケーションがワイヤレスデバイス機能を利用可能にすることができる。さらに、ＡＰＩの中には、安全な暗号鍵情報を使用して、クライアントデバイスとサーバシステムとのような、ワイヤレスデバイス間の安全な通信のためのメカニズムを提供できるものもある。
【０００５】
以下で、より詳細に説明するＡＰＩのいくつかの例には、カリフォルニア、サンディエゴのＱｕａｌｃｏｍｍ，Ｉｎｃによって開発された、現在、公的に利用可能なバージョンのワイヤレス向けバイナリ実行時環境（登録商標）（ＢＲＥＷ（登録商標））プラットフォームを含んでいる。ＢＲＥＷ（登録商標）プラットフォームは、ワイヤレスデバイス上で提供されている特定のハードウェアおよびソフトウェア機能に１つ以上のインターフェースを提供することができる。
【０００６】
さらに、終端間ソフトウェア配布システムでは、ワイヤレスサービスオペレータ、ソフトウェアデベロッパ、ならびにワイヤレスデバイス製造業者および消費者にさまざまな利益を提供するために、ＢＲＥＷ（登録商標）プラットフォームを使用できる。カリフォルニア、サンディエゴのＱｕａｌｃｏｍｍ，Ｉｎｃによって開発されたＢＲＥＷ（登録商標）ソリューションと呼ばれる、１つのこのような現在利用可能な終端間ソフトウェア配布システムは、サーバクライアントアーキテクチャによって配布されるロジックを含んでおり、サーバは、請求、セキュリティ、およびアプリケーション配布機能を実行することができ、また、クライアントは、アプリケーション実行、セキュリティ、およびユーザインターフェース機能を実行することができる。
【０００７】
ＢＲＥＷ（登録商標）プラットフォーム上で動作するように開発され、ワイヤレスデバイスにダウンロードできるソフトウェアアプリケーションのうちのいくつかは、ユーザインターフェースコンポーネントを含むことができる。ワイヤレスデバイスにダウンロードされた後、ユーザインターフェースコンポーネントは、以前に存在していたユーザインターフェースコンポーネント、例えば、バックグラウンドやスキンを更新または置換するように実行されてもよい。ユーザインターフェースコンポーネントは１つ以上のプログラムバグを含んでいる可能性があるので、ワイヤレスデバイスにおいてユーザインターフェースコンポーネントを実行すると、ワイヤレスデバイスを動作不能にすることがあるかもしれない。
【０００８】
したがって、ユーザインターフェースコンポーネントをワイヤレスデバイスにダウンロードするための改善されたシステムおよび方法を提供することは、効果的である。
【概要】
【０００９】
ユーザインターフェースコンポーネントを処理する方法が提供され、この方法は、ワイヤレスデバイスに通信され得る１つ以上のユーザインターフェースコンポーネントを受け取ることを含む。１つ以上のユーザインターフェースコンポーネントのそれぞれに対するコンポーネントリスクレベルが決定され、１つ以上のユーザインターフェースコンポーネントのそれぞれに割り当てられる。
【００１０】
特定の実施形態では、割り当てられたリスクレベルを示している組み込まれたリスクコードを使用して、１つ以上のユーザインターフェースコンポーネントのそれぞれにデジタル的に署名する。さらに、コンポーネントリスクレベルを複数のコンポーネントリスクレベルから選択することができる。特定の実施形態では、ユーザインターフェースコンポーネントのタイプに基づいて、コンポーネントリスクレベルを決定することができる。さらに、ユーザインターフェースコンポーネントのデベロッパに基づいて、コンポーネントリスクレベルを決定することができる。例えば、承認されたデベロッパによって開発された各ユーザインターフェースコンポーネントに、より低いリスクレベルを割り当てることができる。一方、承認されていないデベロッパによって開発された各ユーザインターフェースに、より高いリスクレベルを割り当てることができる。
【００１１】
特定の実施形態では、方法は、１つ以上のユーザインターフェースコンポーネントをワイヤレスデバイスにダウンロードすることをさらに含む。さらに、ユーザインターフェースを発生させるために、複数のユーザインターフェースコンポーネントを一緒にバンドルすることができ、ユーザインターフェースバンドルに対するバンドルリスクレベルを決定することができる。特に、ユーザインターフェースバンドル内のユーザインターフェースコンポーネントの各コンポーネントリスクレベルに基づいて、バンドルリスクレベルを決定することができる。また、ユーザインターフェースバンドルにデジタル的に署名することができる。また、ユーザインターフェースバンドルをワイヤレスデバイスにダウンロードすることできる。特定の実施形態では、方法は、ユーザインターフェースバンドルをワイヤレスデバイスにダウンロードする料金を課金することを含む。特に、ケーブルによるダウンロードも実行可能であるが、無線によるインターフェースによって、ユーザインターフェースバンドルをワイヤレスデバイスにダウンロードすることができる。
【００１２】
別の実施形態では、ワイヤレスデバイスにおいてユーザインターフェースコンポーネントを取得する方法が提供されている。方法は、ダウンロードサーバにアクセスすることと、ユーザインターフェースバンドルをダウンロードサーバから受け取ることとを含む。特に、ユーザインターフェースバンドルは、ワイヤレスデバイス上にユーザインタバンドルをロードすることに関係するバンドルリスクレベルを含むことができる。
【００１３】
さらに別の実施形態では、ワイヤレスデバイスが提供され、ワイヤレスデバイスは、プロセッサと、プロセッサによってアクセス可能なメモリとを含む。ユーザインターフェースは、メモリ内に記憶され、プロセッサによって実行可能である。メモリは、メモリに組み込まれたユーザインターフェースバンドルをさらに含んでいる。さらに、ユーザインターフェースバンドルは、バンドルリスクレベルを含む。
【００１４】
さらに別の実施形態では、ユーザインターフェースコンポーネントをダウンロードするシステムが提供され、このシステムは、セキュリティサーバと、アプリケーションダウンロードサーバおよびセキュリティサーバにアクセス可能な記憶されたアプリケーションデータベースとを含む。ユーザインターフェースバンドルは、記憶されたアプリケーションデータベース内に記憶させることができる。また、ユーザインターフェースバンドルは、複数のユーザインターフェースコンポーネントと、ユーザインターフェースバンドルをワイヤレスデバイスにダウンロードすることにさらに関係する割り当てられたリスクに関係するバンドルリスクレベルとを含む。
【００１５】
さらに別の実施形態では、コンピュータプログラムが提供され、このコンピュータプログラムはコンピュータ読取り可能な媒体内に組み込まれている。コンピュータプログラムは、１つ以上のユーザインターフェースコンポーネントを受け取る命令を含む。さらに、コンピュータプログラムは、１つ以上の受け取られたユーザインターフェースコンポーネントのそれぞれに対するコンポーネントリスクレベルを決定する命令を含む。コンポーネントリスクレベルは、ワイヤレスデバイスにおいてユーザインターフェースコンポーネントを実行することに関係するリスクを示している。コンピュータプログラムはまた、１つ以上のユーザインターフェースコンポーネントのそれぞれに、決定されたコンポーネントリスクレベルを割り当てる命令を含む。
【００１６】
さらに、別の実施形態では、コンピュータプログラムが提供され、このコンピュータプログラムは、コンピュータ読取り可能な媒体内に組み込まれている。特に、コンピュータプログラムは、ユーザインターフェースバンドルを受け取る命令を含む。ユーザインターフェースバンドルは、ワイヤレスデバイスにおいてユーザインターフェースバンドルをアンバンドルするセキュリティリスクを示すデータアイテムを含む。
【００１７】
別の実施形態では、ワイヤレスデバイス向けのユーザインターフェースが提供されており、このユーザインターフェースはリスクレベルしきい値のメニューを含む。第１のリスクレベルしきい値はメニューから選択でき、第１のリスクレベルしきい値より下のリスクレベルを持つファイルバンドルは、ワイヤレスデバイスにおいて受け取ることができる。
【００１８】
さらに別の実施形態では、コンピュータ向けのユーザインターフェースが提供されており、このユーザインターフェースはリスクレベルしきい値のメニューを含む。第１のリスクレベルしきい値は、メニューから選択することができる。ワイヤレスデバイスにファイルがダウンロードされて、ワイヤレスデバイスにおいて実行される前に、第１のリスクレベルをファイルに割り当てることができる。
【００１９】
本開示の他の観点、効果および特徴は、以下のセクション、図面の簡単な説明、詳細な説明および特許請求の範囲を含む出願全体を見た後に明らかになるであろう。
【００２０】
ここで説明する実施形態の観点とそれに伴う効果は、添付図面を考慮に入れて、以下の詳細な説明を参照することによりさらに容易に明らかになるであろう。
【詳細な説明】
【００２１】
「例として、事例として、あるいは実例として機能すること」を意味するために、「例示的な」という言葉をここで使用する。「例示的な」ものとして、ここで説明するいずれの実施形態も、他の実施形態と比較して、必ずしも好ましいまたは効果的なものとして解釈されるものではない。さらに、多くの実施形態は、例えば、ワイヤレスデバイスエレメントによって実行されるべきアクションのシーケンスの観点で説明する。例えば、特定用途向け集積回路（ＡＳＩＣ）のような特定の回路によって、１つ以上のプロセッサによって実行されているプログラム命令によって、あるいは、これらの双方を組み合わせたものによってここで説明するさまざまなアクションを実行できることが、認識されるであろう。
【００２２】
さらに、追加的に、ここで説明する実施形態は、コンピュータ読取り可能な記憶媒体の任意の形態内で完全に具体化されると考えることができ、コンピュータ読取り可能な記憶媒体は、実行時に、関係するプロセッサにここで説明する機能を実行させる対応する１組のコンピュータ命令を記憶させている。したがって、本開示のさまざまな観点は、多数の異なる形態で具体化されてもよく、これらのすべては、特許請求の範囲内にあることが意図されている。さらに、ここで説明する実施形態のそれぞれに対して、例えば、あるアクションを実行するように「構成されているロジック」または説明したアクションを実行するように「動作可能なコード」として、このような任意の実施形態の対応する形態をここで説明するかもしれない。以下の詳細な説明では、１つ以上のワイヤレスデバイスに関連して使用される方法、システム、ソフトウェア、および装置について説明している。
【００２３】
１つ以上の実施形態では、ワイヤレスデバイスは、カリフォルニア、サンディエゴのＱＵＡＬＣＯＭＭ，Ｉｎｃ．によって開発されたワイヤレス向けバイナリ実行時環境（登録商標）（ＢＲＥＷ（登録商標））プラットフォームのバージョンのような実行時環境を利用してもよい。以下の説明における少なくとも１つの実施形態では、ワイヤレスデバイスとサーバとの間の通信を提供するために使用されるシステムが、ＢＲＥＷ（登録商標）プラットフォームの現在のバージョンのような実行時環境を実行するワイヤレスデバイス上で実現される。しかしながら、ワイヤレスデバイスとサーバとの間の通信を提供するために使用されるシステムの１つ以上の実施形態は、例えば、ワイヤレスデバイス上のアプリケーションの実行を制御するように動作する、他のタイプの実行時環境での使用に適している。
【００２４】
図１は、制限のない例示的な実施形態のシステム１００のブロック図を図示している。システム１００は、ワイヤレス電話機１０２のようなワイヤレスデバイス上のソフトウェアアプリケーションコンポーネントのロード、再ロード、および削除を実行してもよい。ワイヤレス電話機１０２は、ワイヤレスネットワーク１０４を通して、少なくとも１つのアプリケーションダウンロードサーバ１０６と通信する。さらに、アプリケーションダウンロードサーバ１０６は、ワイヤレス通信ポータル、またはワイヤレスネットワーク１０４に対するデータアクセスを持つ他のノードを通して、１つ以上のソフトウェアアプリケーションおよびコンポーネントを１つ以上のワイヤレスデバイスに選択的に送信することができる。
【００２５】
図１に図示したように、ワイヤレスデバイスは、ワイヤレス電話機１０２、パーソナルデジタルアシスタント１０８、ページャ１１０、あるいはワイヤレス通信ポータブルを持つ独立したコンピュータプラットフォーム１１２であってもよい。特定の実施形態では、ページャ１１０は、２方向テキストページャであってもよい。さらに、代替実施形態では、ワイヤレスデバイスは、ネットワークまたはインターフェースに対するワイヤード接続１１４を有してもよい。制限のない例示的なシステムは、ワイヤレス通信ポータルを含む遠隔モジュールの任意の形態を含んでいてもよい。ワイヤレス通信ポータルは、ワイヤレスモデムや、ＰＣＭＣＩＡカードや、パーソナルコンピュータや、アクセス端末や、ディスプレイまたはキーパッドを持たない電話機や、あるいはこれらの任意のものを組み合わせたものまたは一部組み合わせたものを含むが、これらに限定されるものではない。
【００２６】
図１に図示したように、アプリケーションダウンロードサーバ１０６は、ワイヤレスネットワーク１０４と通信する他のコンピュータエレメントとともに、ネットワーク１１６に結合されている。システム１００は、セキュリティサーバ１２０、スタンドアローン型サーバ１２２とを含み、各サーバは、ワイヤレスネットワーク１０４を通して、別個のサービスおよびプロセスをワイヤレスデバイス１０２、１０８、１１０、１１２に提供することができる。さらに、図１に図示したように、システム１００はまた、ワイヤレスデバイス１０２、１０８、１１０、１１２にダウンロードできるソフトウェアアプリケーションを記憶する、少なくとも１つの記憶されたアプリケーションデータベース１１８を含む。アプリケーションダウンロードサーバ１０６、セキュリティサーバ１２０、およびスタンドアローン型サーバ１２２のうちの任意の１つ以上のものにおいて安全な通信を実行するようにロジックを位置付ける異なる実施形態が意図されている。
【００２７】
特定の実施形態では、１つ以上のユーザインターフェースコンポーネント１２４を、コンピュータ、例えば、コンピュータ１１２上で開発し、ワイヤレスネットワーク１０４またはワイヤード接続１１４によってネットワーク１１６にアップロードすることができる。さらに、セキュリティリスクレベルをユーザインターフェースコンポーネント１２４に割り当てて、デジタル署名で署名することができる。デジタル署名は、ユーザインターフェースコンポーネント１２４に対するリスクレベルを表している組み込まれたコードを含む。特定の実施形態では、リスクレベルは、ユーザインターフェースコンポーネント１２４がダウンロードされるワイヤレスデバイスにおいて、ユーザインターフェースコンポーネント１２４を実行することに関係する動作システムダメージのリスクを表している。その後、複数のデジタル的に署名されたユーザインターフェースコンポーネント１２４を一緒にバンドルして、記憶されたアプリケーションデータベース１１８内に記憶可能なユーザインターフェースバンドル１２６を生成させることができる。セキュリティリスクレベルをユーザインターフェースバンドル１２６に割り当てて、デジタル署名で署名することができる。デジタル署名は、ユーザインターフェースバンドル１２６に対するリスクレベルを含む。特に、ユーザインターフェースバンドル１２６に対するリスクレベルは、ユーザインターフェースバンドル１２６がダウンロードされるワイヤレスデバイスにおいて、ユーザインターフェースバンドル１２６をアンバンドルすることに関係するシステムダメージのリスクを表している。
【００２８】
例示的な実施形態において、ユーザインターフェースコンポーネント１２４は、グラフィカルアイコンや、仮想ボタンや、スキンや、バックグラウンドや、フォントパッケージや、またはグラフィカルメニューのようなグラフィカルユーザインターフェースコンポーネントであってもよく、グラフィカルメニューは、キーパッドボタン、キーボードボタン、またはマウスのような物理的なユーザインターフェースコンポーネントにリンクされている。ユーザインターフェースコンポーネント１２４はまた、グラフィカルユーザインターフェースの集合、例えば、グラフィカルユーザインターフェース全体であってもよい。ユーザインターフェースコンポーネント１２４はまた、タッチスクリーンコンポーネントのようなグラフィカルユーザインターフェースコンポーネントであってもよく、タッチスクリーンコンポーネントは、ワイヤレスデバイスのディスプレイスクリーンを指またはスタイラスでタッチすることによって選択することができる。また、ユーザインターフェースコンポーネント１２４は、タッチスクリーンユーザインターフェース全体であってもよい。さらに、別の例示的な実施形態では、ユーザインターフェースコンポーネント１２４は、例えば、電話番号をダイヤルするといった特定の機能にリンクされている音声コマンドのような音声ユーザインターフェースコンポーネントであってもよい。さらに、ユーザインターフェースコンポーネント１２４は、複数の音声コマンドおよび対応するアクションを有する音声ユーザインターフェース全体であってもよい。特定の実施形態において、ユーザインターフェースコンポーネント１２４は、ワイヤレスデバイスにおいて現行のユーザインターフェースコンポーネント１２４をアップグレードし、以前にロードされたユーザインターフェースコンポーネント１２４を置換することができる。あるいは、ユーザインターフェースコンポーネント１２４は、ワイヤレスデバイスに対するユーザインターフェースコンポーネント１２４の新規なインストールとすることができる。
【００２９】
特定の実施形態では、ユーザインターフェースコンポーネント１２４に対するリスクレベルは、ユーザインターフェースコンポーネント１２４のタイプと、ユーザインターフェースコンポーネント１２４がダウンロードされるワイヤレスデバイスのタイプと、ワイヤレスデバイスにおいてユーザインターフェースコンポーネント１２４を実行することによって生じる、ユーザインターフェースに対する変更の範囲とに基づいて決定することができる。例えば、簡易フォントパッケージには、低度のリスクを割り当てることができ、そして、バックグラウンドまたはスキンのようなユーザインターフェースコンポーネント１２４には、中度のリスクを割り当てることができる。さらに、例えば、ワイヤレスデバイスの登場とともにワイヤレスデバイスの機能を変えるまったく新しいユーザインターフェースのような、さらに普及するユーザインターフェースコンポーネント１２４には、高度のリスクを割り当てることができる。
【００３０】
さらに、ユーザインターフェースコンポーネント１２４に対するリスクレベルは、デベロッパが承認されているか、または信頼されているデベロッパであるか否か、すなわち、意図したとおりに機能し、問題なく実行し、ワイヤレスデバイスが適切に動作することを妨げないユーザインターフェースコンポーネント１２４を生成することについての証明された追跡記録を持つデベロッパであるか否かに基づいて決定することができる。さらに、ワイヤレスデバイスにダウンロードできるユーザインターフェースコンポーネントを開発することは、信頼されたデベロッパに対する特権として考えられる。特定の実施形態では、デベロッパは、料金を支払うことによって承認を得ることが可能である。また、特定の実施形態では、リスクレベルは、特定のワイヤレスデバイス製造業者、企業グループ、または他のいくつかのグループによって割り当てられてもよい。
【００３１】
特定の実施形態では、デベロッパの入力または同意がなくても、リスクは、デベロッパに自動的に割り当てられてもよい。また、リスクは、特定のデベロッパが特定のプロジェクトに従事している期間に基づいて割り当てられてもよい。例えば、開発方針において、より早く開発に加わったデベロッパには、新規またはやがて現れるデベロッパよりも、より低いリスクが割り当てられてもよい。さらに、リスクは、コンポーネントが開発されたとき、またはコンポーネントが配信されるべきときに基づいて割り当てることができる。さらに、特定のユーザインタコンポーネントまたはバンドルが開発されるとき、リスクレベルは、特定のユーザインターフェースコンポーネントまたはバンドルを「取り扱った」さまざまなデベロッパに基づいて変化してもよい。その後の取扱者に対するリスクレベルは、自動的に決定されてもよい。
【００３２】
したがって、特定のユーザインターフェースコンポーネント１２４は、以下の制限のない例示的なリスクレベル、すなわち、低度で信頼されている、低度で承認されていない、中度で信頼されている、中度で承認されていない、高度で承認されている、および高度で承認されていない、のうちの１つを有することができる。特定の実施形態では、ユーザインターフェースバンドル１２６に対するリスクレベルは、バンドル中の個々のユーザインターフェースコンポーネントのリスクレベルを組み合わせたものに基づいて決定される。デジタル署名は、リスクレベルを確実に制御して実施できるようにする。さらに、一度、リスクがユーザインターフェースコンポーネントに割り当てられ、デジタル署名されると、デジタル署名がユーザインターフェースコンポーネントの不正変更を防ぐ。
【００３３】
図２では、ワイヤレスネットワーク１０４のコンポーネントと、システム１００のエレメントの相互関係とを含むシステム１００をさらに完全に図示しているブロック図が示されている。システム１００は単なる例示であり、任意のシステムを含むことができ、それによりワイヤレスデバイス１０２、１０８、１１０、１１２のような遠隔モジュールは無線で相互におよび／またはワイヤレスネットワーク１０４によって接続されているコンポーネント間で通信する。ワイヤレスネットワーク１０４は制限されることなく、ワイヤレスネットワークキャリアおよび／またはサーバを含む。サーバ１２０のような他の任意のサーバとともに、アプリケーションダウンロードサーバ１０６および記憶されたアプリケーションデータベース１１８は、ワイヤレス通信サービスと互換性があり、インターネット、セキュアＬＡＮ、ＷＡＮ、または他のネットワークのようなデータリンクを通してキャリアネットワーク２００と通信することができる。例示的な実施形態では、サーバ１２０は、キャリアネットワーク２００によって安全な通信を提供するように構成されているロジックをさらに含むサーバセキュリティモジュール１２８を含む。特定の実施形態では、サーバセキュリティモジュール１２８は、ワイヤレスデバイス１０２、１０８、１１０、１１２のようなワイヤレスデバイス上に位置付けられているクライアントセキュリティモジュールと関連して動作して、安全な通信を提供することができる。さらに、サーバセキュリティモジュール１２８は、セキュリティサーバ１２０に送信されたユーザインターフェースコンポーネント１２４にリスクレベルを割り当てることができる。また、サーバセキュリティモジュール１２８は、ユーザインターフェースバンドル１２６にリスクレベルを割り当てることができる。
【００３４】
キャリアネットワーク２００は、移動スイッチングセンター（「ＭＳＣ」）２０２に送信される（データパケットとして送信される）メッセージを制御する。キャリアネットワーク２００は、インターネットおよび／またはＰＯＴＳ（「普通の通常電話システム」）のようなネットワークによってＭＳＣ２０２と通信する。一般的に、キャリアネットワーク２００とＭＳＣ２０２との間のネットワーク接続はデータを転送し、ＰＯＴＳは音声情報を転送する。ＭＳＣ２０２は、複数の基地トランシーバ局（「ＢＴＳ」）２０４に接続されている。キャリアネットワークと同様な方法において、ＭＳＣ２０２は、一般的に、データ転送用データネットワークおよび／またはインターネットと、音声情報用ＰＯＴＳとの両方により、ＢＴＳ２０４に接続することができる。ＢＴＳ２０４は、最後に、ショートメッセージングサービス（「ＳＭＳ」）または技術的に知られている他の無線による方法により、ワイヤレス電話機１０２のようなワイヤレスデバイスにワイヤレスでメッセージをブロードキャストする。
【００３５】
ワイヤレスデバイス１０２は、コンピュータプラットフォーム２０６を有する。コンピュータプラットフォーム２０６は、アプリケーションダウンロードサーバ１０６から送信されたソフトウェアアプリケーションを受け取って実行することができる。例示的な実施形態では、コンピュータプラットフォーム２０６は、特定用途向け集積回路（「ＡＳＩＣ２０８」）、プロセッサ、マイクロプロセッサ、ロジック回路、または他のデータ処理デバイスとして実現されてもよい。ＡＳＩＣ２０８は、ワイヤレスデバイスの製造時にインストールすることができる。さらに、ＡＳＩＣ２０８または他のプロセッサは、アプリケーションプログラミングインターフェイス（「ＡＰＩ」）２１０レイヤを実行することができる。ＡＰＩレイヤ２１０は、ワイヤレスデバイスのメモリ２１２中の任意の常駐プログラムとインターフェースする。特定の実施形態では、ＡＰＩ２１０レイヤは、ワイヤレス向けバイナリ実行時環境（登録商標）（（ＢＲＥＷ（登録商標））プラットフォームによって提供される１組のＡＰＩを含む。メモリ２１２は、リードオンリーまたはランダムアクセスメモリ（ＲＯＭまたはＲＡＭ）、ＥＥＰＲＯＭ、フラッシュメモリ、あるいはコンピュータプラットフォームに適切な他の任意のメモリから構成することができる。
【００３６】
ＡＰＩ２１０はまた、キャリアネットワーク２００によって安全な通信を提供するように構成されているロジックを含んでいる、クライアントセキュリティモジュール２１４を備えている。特定の実施形態では、クライアントセキュリティモジュール２１４は、サーバセキュリティモジュール１２８と関連して動作し、安全な通信を提供することができる。さらに、クライアントセキュリティモジュール２１４は、ワイヤレスデバイスにダウンロードされた、ユーザインターフェースコンポーネント１２４とユーザインターフェースバンドル１２６とのデジタル署名を検出してデコードし、ユーザインターフェースバンドル１２６とユーザインターフェースコンポーネント１２４のそれぞれとの割り当てられたリスクレベルを決定することができる。
【００３７】
また、クライアントセキュリティモジュール２１４は、リスクレベルが現在のしきい値より下であるか否かを決定するために、各ユーザインターフェースバンドル１２６に対するリスクレベルおよび各ユーザインターフェースコンポーネント１２４に対するリスクレベルを、例えば、特定のユーザインターフェースコンポーネント１２４に対するしきい値レベル、またはユーザインターフェースバンドル１２６に対するグローバルしきい値レベルといった予め定められたしきい値レベルと比較することができる。ユーザインターフェースバンドル１２６に対するリスクレベルがバンドルしきい値レベルより下である場合、ユーザインターフェースバンドル１２６は、複数のユーザインターフェースコンポーネント１２４を生成するためにアンバンドルされる。さらに、ユーザインターフェースコンポーネント１２４に対するリスクレベルがコンポーネントしきい値レベルより下である場合、ワイヤレスデバイスにおいて各ユーザインターフェースコンポーネント１２４を実行することができる。一方、ユーザインターフェースコンポーネント１２４に対するリスクレベルがコンポーネントしきい値レベルより上である場合、ユーザインターフェースコンポーネント１２４は、ワイヤレスデバイスから削除し、またはさもなければ、除去することができる。
【００３８】
図２で図示したように、コンピュータプラットフォーム２０６は、メモリ２１２中でアクティブに使用されないアプリケーションを保持できるローカルデータベース２１６をさらに含むことができる。例示的な実施形態では、ローカルデータベース２１６は、フラッシュメモリセル内で記憶されるが、磁気メディア、ＥＥＰＲＯＭ、光学メディア、テープ、あるいはフロッピー（登録商標）またはハードディスクのような技術的に知られているような何らかの２次的な記憶データベース内で記憶されていてもよい。ワイヤレスデバイス、例えば、ワイヤレス電話機１０２は、ゲーム、ニュース、株式更新、あるいはこれと同様のもののような１つ以上のソフトウェアアプリケーションをアプリケーションダウンロードサーバ１０６からダウンロードすることができる。さらに、ワイヤレスデバイスは、使用されていないときに、ダウンロードされたアプリケーションをローカルデータベース２１６中に記憶させることができ、また、ユーザによって望まれたときに、ＡＰＩ２１０による実行のために、ローカルデータベース２１６から記憶された常駐アプリケーションをメモリ２１２にロードすることができる。さらに、ワイヤレスデバイス１０４による通信は、クライアントセキュリティモジュール２１４およびサーバセキュリティモジュール１２８の対話および動作のために、少なくとも部分的に安全な方法で実行されてもよい。
【００３９】
図３を参照すると、ユーザインターフェースコンポーネントをワイヤレスデバイスに提供する方法が示されており、この方法はブロック３００で開始している。ブロック３００において、セキュリティサーバが、例えば、ソフトウェアデベロッパからユーザインターフェースコンポーネントを受け取る。ブロック３０２において、セキュリティサーバ内のサーバセキュリティモジュールが、ユーザインターフェースコンポーネントに対するコンポーネントリスクレベルを決定する。その後、ブロック３０４において、サーバセキュリティモジュールが、決定されたコンポーネントリスクレベルをユーザインターフェースコンポーネントに割り当てる。ブロック３０６に進むと、サーバセキュリティモジュールが、ユーザインターフェースコンポーネントにデジタル的に署名する。特定の実施形態では、デジタル署名によって、リスクレベルおよびユーザインターフェースコンポーネントの不正工作を防ぐことができる。
【００４０】
ブロック３０８に続くと、サーバセキュリティモジュールが、複数のユーザインタコンポーネントを互いに結合させ、ユーザインターフェースバンドルを生成させる。ブロック３１０において、サーバセキュリティモジュールが、ユーザインターフェースバンドルに対するバンドルリスクレベルを決定する。そして、ブロック３１２において、サーバセキュリティモジュールが、決定されたバンドルリスクレベルをユーザインターフェースバンドルに割り当てる。ブロック３１４において、サーバセキュリティモジュールが、例示的な実施形態では、組み込まれたリスクコードを使用して、ユーザインターフェースバンドルにデジタル的に署名する。組み込まれたリスクコードは、発生されて、ワイヤレスデバイスに配布されるべきユーザインターフェースバンドルに関係するデータパケットとともに記憶された、割り当てられたリスクレベルを示す。
【００４１】
ブロック３１６に進むと、セキュリティサーバが、デジタル的に署名されたユーザインターフェースバンドルを、記憶されたアプリケーションデータベース中に記憶させる。次に、ブロック３１８において、アプリケーションダウンロードサーバが、ワイヤレスデバイスを通して、ユーザインターフェースバンドル情報をユーザに提示する。特定の実施形態では、アプリケーションダウンロードサーバが、デジタル的に署名されたユーザインターフェースバンドルのメニューと、それぞれデジタル的に署名されたユーザインターフェースバンドルに関連する情報とを提示する。特定の実施形態では、情報は、ユーザインターフェースバンドルに対するバンドルリスクレベルと、ユーザインターフェースバンドル中に含まれている各ユーザインターフェースコンポーネントに対するコンポーネントリスクレベルと、ユーザインターフェースバンドル中に含まれている各ユーザインターフェースコンポーネントのタイプとを含む。
【００４２】
さらに図３を参照すると、ブロック３２０において、アプリケーションダウンロードサーバが、ユーザインターフェースバンドルに対する要求をワイヤレスデバイスから受け取る。特定の実施形態では、ワイヤレスデバイスからの要求は、無線によるインターフェースを通して、アプリケーションダウンロードサーバにおいて受け取られる。ブロック３２２において、アプリケーションダウンロードサーバが、ユーザインターフェースバンドルのコストをワイヤレスデバイスに示す。ブロック３２４において、アプリケーションダウンロードサーバが、ワイヤレスデバイスから購入要求を受け取る。決定ステップ３２６に進むと、アプリケーションダウンロードサーバ１０６が、ワイヤレスデバイスからの支払い情報が受け取られたか否かを決定する。受け取られていなかった場合、方法は状態３２８で終了する。一方、支払い情報がワイヤレスデバイスから受け取られている場合、方法は決定ステップ３３０に進み、アプリケーションダウンロードサーバが、ワイヤレスデバイスからの支払いが承認された否かを決定する。支払いが承認されなかった場合、方法は、ブロック３３２に続き、支払いが承認されなかったことをアプリケーションダウンロードサーバがワイヤレスデバイスに示す。方法は、決定ステップ３２６に戻り、ここで説明したように続く。
【００４３】
決定ステップ３３０では、アプリケーションダウンロードサーバがユーザ支払いを承認した場合、ロジックはブロック３３４に進み、アプリケーションダウンロードサーバが、ワイヤレスデバイスからの支払いが承認されたことをワイヤレスデバイスに示す。次に、ブロック３３６では、アプリケーションダウンロードサーバが、ユーザインターフェースバンドルをワイヤレスデバイスにダウンロードする。特定の実施形態では、ユーザインターフェースバンドルが、無線によるインターフェースを通して、ワイヤレスデバイスにダウンロードされる。割り当てられたリスクレベルを有するユーザインターフェースバンドルをアプリケーションダウンロードサーバからダウンロードする方法は、状態３２８で終了する。
【００４４】
これから図４を参照すると、割り当てられたリスクレベルを有するユーザインターフェースコンポーネントをワイヤレスデバイスにおいて受け取る方法が示されており、この方法はブロック４００で開始している。ブロック４００では、ワイヤレスデバイスが、アプリケーションダウンロードサーバにアクセスする。特定の実施形態では、ワイヤレスデバイスが、無線によるインターフェースを通して、アプリケーションダウンロードサーバと通信することができる。次に、ブロック４０２において、ワイヤレスデバイスのユーザが、アプリケーションダウンロードサーバにおいて入手可能なユーザインターフェースバンドルのメニューを見ることができる。ブロック４０４では、ユーザは、ワイヤレスデバイスを使用して、アプリケーションダウンロードサーバによってダウンロードされるべきユーザインターフェースバンドルを選択することができる。ブロック４０６において、ワイヤレスデバイスが、ユーザインターフェースバンドルに関連する価格情報を受け取る。
【００４５】
ブロック４０８に進むと、ワイヤレスデバイスが、アプリケーションダウンロードサーバに支払い情報を送信することができる。その後、決定ステップ４１０において、支払い情報が受け入れられたか否かをアプリケーションダウンロードサーバがワイヤレスデバイスに示す。支払いが受け入れられなかった場合、方法は、決定ステップ４１２に続いて、ワイヤレスデバイスによって、ユーザが支払いを再試行することを望むか否かについてユーザに問い合わせる。ユーザが再試行を望んだ場合、方法は、ブロック４０８に戻り、新しい支払い情報がアプリケーションダウンロードサーバに送信される。そして、方法は、ここで説明したように続く。
【００４６】
決定ステップ４１２において、ユーザが支払いを再試行することを望まなかった場合、方法は状態４１４で終了する。決定ステップ４１０に戻ると、支払いが受け入れられた場合、ブロック４１６において、ワイヤレスデバイスがユーザインターフェースバンドルを受け取る。ブロック４１８に進むと、ユーザインターフェースバンドルに関係するデジタル署名が、検出されてデコードされる。ブロック４２０において、例えば、セキュリティサーバによって割り当てられた組み込まれたリスクレベルコードを読み取ることによって、バンドルリスクが決定される。決定ステップ４２２に続くと、バンドルリスクレベルが受け入れられるか否か、すなわち、バンドルしきい値よりも、低いか否かを決定するために、ワイヤレスデバイスがバンドルリスクレベルをバンドルリスクレベルしきい値と比較する。バンドルリスクレベルがバンドルしきい値よりも、低くない場合には、リスクレベルが高すぎるので、バンドルは拒絶され、方法は状態４１４で終了する。
【００４７】
逆に、バンドルリスクがバンドルしきい値よりも、低い場合、方法はブロック４２４に進み、ユーザインターフェースバンドルは、複数のユーザインターフェースコンポーネントを生成するために、受け入れられてアンバンドルされる。ブロック４２６において、ワイヤレスデバイスが、ワイヤレスデバイスに適用されるべき１つ以上のインターフェースコンポーネントの選択を検出する。別の実施形態では、どのユーザインターフェースコンポーネントがワイヤレスデバイスに適用されるべきかを、ワイヤレスデバイスが自動的に決定することができる。次に、ブロック４２８において、ユーザインターフェースコンポーネントに関係するデジタル署名が、検出されてデコードされる。ブロック４３０において、コンポーネントリスクレベルが、ユーザインターフェースコンポーネントに対して決定される。決定ステップ４３２に進むと、コンポーネントリスクレベルが受け入れ可能か否か、すなわち、コンポーネントしきい値よりも、低いか否かを決定するために、ワイヤレスデバイスがコンポーネントリスクレベルをコンポーネントリスクレベルしきい値と比較する。特定の実施形態では、リスクレベルしきい値は、ワイヤレスデバイス製造業者によって設定することができる。また、リスクレベルしきい値は、ワイヤレスデバイスのユーザによって設定することができる。
【００４８】
コンポーネントリスクレベルがコンポーネントリスクレベルしきい値よりも、低い場合、コンポーネントは受け入れられ、方法はブロック４３４に進み、ここで、ユーザインターフェースコンポーネントがワイヤレスデバイスに適用される。特定の実施形態では、ユーザインターフェースコンポーネントは、現行のユーザインターフェースに対するアップグレードであってもよい。別の実施形態では、ユーザインターフェースコンポーネントは、ワイヤレスデバイスに適用される新しいコンポーネントである。そして、ロジックは決定ステップ４３６に進む。
【００４９】
決定ステップ４３２に戻ると、コンポーネントリスクレベルがコンポーネントしきい値よりも、低くない場合、方法は決定ステップ４３６に進む。決定ステップ４３６において、ワイヤレスデバイスに対するアプリケーションのために選択された別のユーザインターフェースコンポーネントが存在するか否かを、ワイヤレスデバイスが決定する。存在する場合、方法はブロック４２８に戻り、上記に説明したように続く。他のユーザインターフェースコンポーネントが入手可能でない場合、方法は状態４１４で終了する。特定の実施形態では、ユーザの入力または知識がなくても、ワイヤレスデバイス内のロジックによって、ユーザインターフェースバンドルをアンバンドルする決定、およびユーザインターフェースコンポーネントをワイヤレスデバイスに適用する決定を行うことができる。さもなければ、ユーザが、各決定に対するしきい値を選択設定することができる。また、アンバンドルする決定および適用する決定は、例えば、自動的にダウンロードされた、またはユーザによって要求されたといった、ダウンロードの原因に基づくものであってもよい。
【００５０】
図５は、一般的に設計されているワイヤレスデバイス５００を示している。図５に図示したように、ワイヤレスデバイスは、ディスプレイ５０２と、キーボード５０４とを備えている。図５では、ディスプレイ５０２によって、ダウンロード／実行しきい値メニュー５０６をユーザに提示することができることを示している。ユーザは、キーパッド５０４を使用して、ダウンロード／実行しきい値メニュー５０６をスクロールし、キーパッド５０４やソフトボタン５０８を使用して、特定のしきい値を選択することができる。特定の実施形態では、しきい値は、ユーザインターフェースバンドルをワイヤレスデバイス５００にダウンロードしたり、ワイヤレスデバイス５００においてユーザインターフェースコンポーネントを実行したりすることに適用することができる。代わりに、ユーザは、ユーザインターフェースバンドルをワイヤレスデバイス５００にダウンロードするための第１のしきい値と、ワイヤレスデバイス５００においてユーザインターフェースコンポーネントを実行するための第２のしきい値とを選択することができる。
【００５１】
図６では、ワイヤレスデバイス５００においてユーザインターフェースバンドルのメニュー６００を表示できることを示している。ユーザは、キーパット５０４を使用して、ユーザインターフェースバンドルのメニュー６００をスクロールし、キーパッド５０４や第１のソフトボタン６０２を使用して、ワイヤレスデバイス５００においてアンバンドルする特定のユーザインターフェースバンドルを選択することができる。また、ユーザは、特定のユーザインターフェースバンドルをメニュー６００から選択し、特定のユーザインターフェースバンドルをワイヤレスデバイス５００にダウンロードさせるように第２のソフトボタン６０４をトグル切替することができる。また、図７に示したように、ユーザインターフェースコンポーネントのメニュー７００は、ワイヤレスデバイス５００において表示することができる。ユーザは、キーパッド５０４を使用して、ユーザインターフェースコンポーネントのメニュー７００をスクロールし、キーパッド５０４または第１のソフトボタン７０２を使用して、ワイヤレスデバイス５００において実行する特定のユーザインターフェースコンポーネントを選択する。ユーザはまた、第２のソフトボタン７０４をトグル切替することによって、メニュー７００に提示されている特定のユーザインターフェースコンポーネントをメニュー７００によってダウンロードすることができる。
【００５２】
図８では、一般的に設計されているコンピュータ８００を示している。図８に図示したように、コンピュータは、ディスプレイ８０２と、キーボード８０４と、マウス８０６とを備えている。図８では、ディスプレイ８０２によって、ユーザインターフェースコンポーネントメニュー８０８をユーザに提示できることを示している。ユーザは、第１のソフトボタン８１０上をマウス８０６でクリックすることによって、１つ以上のユーザインターフェースコンポーネントをメニュー８０８から選択することができる。さらに、ユーザは、リスクレベルメニューを出すために第２のソフトボタン８１２上でクリックすることによって、選択されたユーザインターフェースコンポーネントにリスクレベルを割り当てることができる。ユーザは、第３のソフトボタン８１４上でトグル切替することによって、選択されたユーザインターフェースコンポーネントをアプリケーションダウンロードサーバにアップロードすることもできる。さらに、ユーザは、第４のボタン８１６上でクリックすることによって、複数の選択されたユーザインターフェースコンポーネントをバンドルすることができる。
【００５３】
図９では、コンピュータにおいて提示できるリスクレベルメニュー９００を示している。ユーザは、選択ボタン９０２上をマウスでクリックすることによって、リスクレベルを選択することができる。図１０を参照すると、ディスプレイ８０２によって、ユーザインターフェースバンドルメッセージメニュー１０００をユーザに提示することができる。ユーザは、特定のユーザインターフェースバンドルをメニュー１０００から選択して、第１のソフトボタン１００２上をマウス８０４でクリックすることによって、リスクレベルを特定のユーザインターフェースバンドルに選択割り当てすることができる。第１のソフトボタン１００２がトグル切替されたとき、コンピュータ８００においてリスクレベルメニュー９００をユーザに再度提示することができる。ユーザは、コンピュータ８００においてユーザに提示された第２のソフトボタン１００４をクリックすることか、または、さもなければ、トグル切替することによって、選択されたユーザインターフェースバンドルをアプリケーションダウンロードサーバにアップロードすることもできる。
【００５４】
上記で説明した構造の構成では、ユーザインターフェースコンポーネントをワイヤレスデバイスにダウンロードするシステムおよび方法は、実行前に、１つ以上のユーザインターフェースを実行することに関係するリスクレベルを決定する方法をワイヤレスデバイスに提供する。したがって、より高いセキュリティリスクを示していると考えられるユーザインターフェースコンポーネントは、ワイヤレスデバイスによって拒絶することができる。
【００５５】
ここで開示された実施形態に関連して述べられた多様な例示的な論理ブロック、構成、モジュール、回路、およびアルゴリズムステップが、電子ハードウェア、コンピュータソフトウェア、あるいは双方の組み合わせたものとして実現されてもよいことを当業者はさらに正しく認識するであろう。ハードウェアおよびソフトウェアのこの交換可能性を明確に図示するために、さまざまな例示的な構成要素、ブロック、構成、モジュール、回路、およびステップを概してこれらの機能に関して上述した。そのような機能がハードウェアあるいはソフトウェアとして実現されるか否かは、特定の応用およびシステム全体に課せられた設計の制約に依存する。当業者は、それぞれの特定の応用に対して方法を変化させて、説明した機能を実現してもよいが、そのような実現決定は、本発明の範囲からの逸脱を生じさせるものとして解釈されるべきではない。
【００５６】
ここに開示した実施形態と関連して説明した方法またはアルゴリズムのステップは、ハードウェアで、プロセッサにより実行されるソフトウェアモジュールで、あるいは、２つのものを組み合わせたもので直接的に具体化されてもよい。ソフトウェアモジュールは、ＲＡＭメモリ、フラシュメモリ、ＲＯＭメモリ、ＰＲＯＭメモリ、ＥＰＲＯＭメモリ、ＥＥＰＲＯＭメモリ、レジスタ、ハードディスク、リムーブバルディスク、ＣＤ−ＲＯＭ、あるいは技術的に知られている他の何らかの形態の記憶媒体に存在していてもよい。例示的な記憶媒体は、プロセッサが記憶媒体から情報を読み取り、記憶媒体に情報を書き込むことができるようにプロセッサに結合されていてもよい。代替実施形態では、記憶媒体はプロセッサと一体化されてもよい。プロセッサおよび記憶媒体は、ＡＳＩＣに存在していてもよい。ＡＳＩＣは、ワイヤレスデバイスまたはユーザ端末に存在していてもよい。代替実施形態では、プロセッサおよび記憶媒体は、ワイヤレスデバイスまたはユーザ端末において、ディスクリート構成部品として存在していてもよい。
【００５７】
開示された実施形態の前の説明は、当業者が本開示を作り、または使用できるように提供されている。これらの実施形態に対するさまざま改良は、当業者に容易に明らかとなり、ここに規定された一般的な原理は、本開示の精神または範囲を逸脱することなく、他の実施形態に適用されてもよい。したがって、本開示はここに示された実施形態に限定されることを意図しているものではなく、ここで開示されている原理および新しい特徴と一致した最も広い範囲に一致させるべきである。
【図面の簡単な説明】
【００５８】
【図１】図１は、ワイヤレスデバイスとサーバとの間の通信を提供するシステムの特定の実施形態の一般的な図である。
【図２】図２は、図１のシステムの特定の実施形態をさらに詳細に図示している一般的な図である。
【図３】図３は、ユーザインターフェースコンポーネントをワイヤレスデバイスに提供する方法を図示しているフローチャートである。
【図４】図４は、ワイヤレスデバイスにおいてユーザインターフェースコンポーネントを受け取る方法を図示しているフローチャートである。
【図５】図５は、第１のユーザインターフェースを示しているワイヤレスデバイスの図である。
【図６】図６は、第２のユーザインターフェースを示しているワイヤレスデバイスの図である。
【図７】図７は、第３のユーザインターフェースを示しているワイヤレスデバイスの図である。
【図８】図８は、第１のユーザインターフェースを示しているコンピュータの図である。
【図９】図９は、第２のユーザインターフェースを示しているコンピュータの図である。
【図１０】図１０は、第３のユーザインターフェースを示しているコンピュータの図である。
【図１】
2009529720.tif 000003
【図２】
2009529720.tif 000004
【図３】
2009529720.tif 000005
【図４】
2009529720.tif 000006
【図５】
2009529720.tif 000007
【図６】
2009529720.tif 000008
【図７】
2009529720.tif 000009
【図８】
2009529720.tif 000010
【図９】
2009529720.tif 000011
【図１０】
2009529720.tif 000012
【国際調査報告】
2009529720.tif 000013
2009529720.tif 000014
2009529720.tif 000015