(57)【特許請求の範囲】
【請求項１】
モバイルアプリケーションページを処理するための方法であって、
コンピューティングデバイスの１つまたは複数のプロセッサによって、モバイルアプリケーションページのアクセス要求を受信することと、
前記１つまたは複数のプロセッサによって、前記アクセス要求のユニフォームリソースロケータ（ＵＲＬ）に基づいてサーバから前記モバイルアプリケーションページを要求することと、
前記１つまたは複数のプロセッサによって、前記サーバから前記モバイルアプリケーションページを受信することであって、前記モバイルアプリケーションページがページレイアウト及びページコンポーネントを含む、前記サーバから前記モバイルアプリケーションページを受信することと、
前記モバイルアプリケーションページをクライアント端末によって認識可能なオブジェクトに変換するために、前記１つまたは複数のプロセッサによって前記モバイルアプリケーションページを解析することと、
前記１つまたは複数のプロセッサによって、前記オブジェクトの前記ページコンポーネントをトラバースすることと、
前記ページコンポーネントの内の１つのタイプ、及び前記クライアント端末のベースコンポーネントライブラリに基づいて、前記１つまたは複数のプロセッサによって、前記ページコンポーネントのそれぞれのインスタンスを生成することと、
前記ページコンポーネントの内の１つの１つまたは複数の属性に基づいて、前記１つまたは複数のプロセッサによって前記ページコンポーネントの内の１つの前記インスタンスを構成することと、
前記１つまたは複数のプロセッサによって、前記ページコンポーネントのそれぞれの前記インスタンスをレンダリングすることと、
前記クライアント端末上の前記モバイルアプリケーションページに対応するローカルオブジェクトを生成するために、前記１つまたは複数のプロセッサによって前記オブジェクトに前記レンダリングされたインスタンスを返すことと、
前記ローカルオブジェクトに基づいて、前記１つまたは複数のプロセッサによって前記モバイルアプリケーションページを表示することと、
を含む、前記方法。
【請求項２】
前記ページコンポーネントのそれぞれの前記インスタンスを前記生成する前に、前記クライアント端末に事前に記憶されるコンポーネントレジストリを取得することと、
前記コンポーネントレジストリに基づいて前記クライアント端末の前記ベースコンポーネントライブラリを初期化することであって、前記コンポーネントレジストリが、ベースコンポーネントのタイプと前記ベースコンポーネントのカテゴリの間の対応する関係性を示し、前記ベースコンポーネントがボタンコンポーネント、画像コンポーネント、ラベリングコンポーネント、及びテキストコンポーネントの内の少なくとも１つを含む、前記クライアント端末の前記ベースコンポーネントライブラリを初期化することと、
をさらに含む、請求項１に記載の方法。
【請求項３】
前記ページコンポーネントの内の１つの前記インスタンスを前記生成する前に、前記ページコンポーネントの内の１つのタイプに基づいて前記クライアント端末の前記ベースコンポーネントライブラリから前記ページコンポーネントの内の１つのカテゴリを取得することと、
前記ページコンポーネントの内の１つのカテゴリに基づいて前記ページコンポーネントの内の１つの前記インスタンスを生成することと、
をさらに含む、請求項１に記載の前記方法。
【請求項４】
前記ページコンポーネントの前記１つまたは複数の属性がスタイル属性、コンポーネント属性、論理属性、編集属性、または結合属性の内の少なくとも１つを含み、前記コンポーネント属性がコンポーネントの文字記述を含み、前記スタイル属性が幅、高さ、または色の内の少なくとも１つを含んだ前記コンポーネントのスタイル記述を含み、前記論理属性が、条件文またはループ実行文を含んだ前記コンポーネントによってサポートされる制御文を含み、前記編集属性が前記コンポーネントの編集規則を含み、前記結合属性が、前記コンポーネントに結合されるイベント、動画、動的データ、スタイル、または埋め込み点データを含む、請求項１に記載の方法。
【請求項５】
前記ページコンポーネント内の１つの前記１つまたは複数の属性に基づいて前記ページコンポーネントの内の１つの前記インスタンスを前記構成することが、
前記スタイル属性、前記コンポーネント属性、前記論理属性、前記編集属性、または前記結合属性の内の少なくとも１つを取得するために前記モバイルアプリケーションページを解析することと、
前記スタイル属性、前記コンポーネント属性、前記論理属性、前記編集属性、または前記結合属性の内の前記少なくとも１つに基づいて前記ページコンポーネントの内の１つの前記インスタンスを構成することと、
を含む、請求項４に記載の方法。
【請求項６】
前記結合属性の動的データの結合方法は、動的結合、静的結合、または従属結合の内の少なくとも１つを含む、請求項４に記載の方法。
【請求項７】
１つまたは複数のプロセッサによって実行されるとき、前記１つまたは複数のプロセッサに、
クライアント端末からモバイルアプリケーションページのＵＲＬを受信することと、
前記ＵＲＬに基づいて前記モバイルアプリケーションページのページ識別子を取得することと、
前記ページ識別子に基づいて前記モバイルアプリケーションページのカスタムページフラグメント、テンプレート、前記モバイルアプリケーションページのページコンポーネントの内の少なくとも１つを取得することと、
前記モバイルアプリケーションページの前記カスタムページフラグメント、前記テンプレート、前記モバイルアプリケーションページの前記ページコンポーネントの内の少なくとも１つに基づいて前記モバイルアプリケーションページを生成することと、
前記モバイルアプリケーションページにページコンポーネントの結合属性の動的データ及びスタイルを含むことと、
前記クライアント端末に前記モバイルアプリケーションページを返すことであって、前記モバイルアプリケーションページがページレイアウト及び前記ページコンポーネントを含む、前記モバイルアプリケーションページを返すことと、
を含む行為を実行させる実行可能な命令を記憶する１つまたは複数のコンピュータ可読媒体。
【請求項８】
前記ＵＲＬが、前記モバイルアプリケーションページの名前、前記モバイルアプリケーションページのネームスペース、または前記モバイルアプリケーションページのユーザーアカウントの内の少なくとも１つを含む、請求項７に記載の１つまたは複数のコンピュータ可読媒体。
【請求項９】
前記ＵＲＬに基づいて前記モバイルアプリケーションページの前記ページ識別子を前記取得することが、
前記ＵＲＬに基づいて、前記モバイルアプリケーションページの前記名前、前記モバイルアプリケーションページの前記ネームスペース、または前記モバイルアプリケーションページの前記ユーザーアカウントの内の少なくとも１つを取得することと、
前記モバイルアプリケーションページ、前記モバイルアプリケーションページの前記ネームスペース、または前記モバイルアプリケーションページの前記ユーザーアカウントの内の前記少なくとも１つに基づいて前記モバイルアプリケーションページのページ識別子を取得することと、
を含む、請求項８に記載の１つまたは複数のコンピュータ可読媒体。
【請求項１０】
前記ＵＲＬに基づいて前記モバイルアプリケーションページの前記ページ識別子を前記取得することが、
前記モバイルアプリケーションページの前記ページ識別子及びサーバ端末で事前に設定されるＡ／Ｂ試験の構成ファイルに基づいて、前記モバイルアプリケーションページに対して評価テンプレートを使用するのか、それとも評価ページを使用するのかを判断することと、
前記評価テンプレートまたは前記評価ページを使用することに応えて、前記モバイルアプリケーションページの前記ページ識別子として、前記評価テンプレートのテンプレート識別子または前記評価ページのページ識別子を指定することと、
を含む、請求項７に記載の１つまたは複数のコンピュータ可読媒体。
【請求項１１】
前記ページコンポーネントの内の１つの前記１つまたは複数の属性が、スタイル属性、コンポーネント属性、論理属性、編集属性、または結合属性の内の少なくとも１つを含み、前記コンポーネント属性がコンポーネントの文字記述を含み、前記スタイル属性が、幅、高さ、または色を含んだ前記コンポーネントのスタイル記述を含み、前記論理属性が、条件文またはループ実行文を含んだ前記コンポーネントによってサポートされた制御文を含み、前記編集属性が前記コンポーネントの編集規則を含み、前記結合属性が、前記コンポーネントに結合されるイベント、動画、動的データ、スタイルまたは埋め込み点データの内の少なくとも１つを含む、請求項７に記載の１つまたは複数のコンピュータ可読媒体。
【請求項１２】
前記行為が、前記モバイルアプリケーションページの前記カスタムページフラグメント、前記テンプレート、または前記モバイルアプリケーションページの前記ページコンポーネントの内の前記少なくとも１つをデータベースに記憶することをさらに含む、請求項７に記載の１つまたは複数のコンピュータ可読媒体。
【請求項１３】
前記行為が、前記クライアント端末に前記モバイルアプリケーションページを前記返す前に、Ｊｓｏｎデータ交換フォーマットまたはＸＭＬマークアップ拡張言語を使用し、表されるページに前記モバイルアプリケーションページを変換することをさらに含む、請求項７に記載の１つまたは複数のコンピュータ可読媒体。
【請求項１４】
前記クライアント端末に前記モバイルアプリケーションページを前記返す前に、前記クライアント端末の前記ベースコンポーネントライブラリのバージョンに基づいて、前記モバイルアプリケーションページが前記クライアント端末のベースコンポーネントライブラリによってサポートされない高バージョンのベースコンポーネントを含むかどうかを判断することと、
前記モバイルアプリケーションページが、前記クライアント端末の前記ベースコンポーネントライブラリによってサポートされない前記高バージョンの前記ベースコンポーネントを含む旨の判断に応えてＨＴＭＬ５を使用し前記高バージョンで前記ベースコンポーネントを表すことと、
をさらに含む請求項７に記載の１つまたは複数のコンピュータ可読媒体。
【請求項１５】
前記行為が、
前記クライアント端末に前記モバイルアプリケーションページを前記返す前に、前記クライアント端末のクライアントマシンモデル、及び前記クライアント端末のベースコンポーネントライブラリのバージョンを取得することと、
前記クライアント端末のクライアントマシンモデル及び前記クライアント端末のベースコンポーネントライブラリのバージョンに基づいて、サーバ端末が、前記クライアント端末のベースコンポーネントライブラリの前記バージョンに互換性のある構成論理を含むかどうかを判断することと、
前記サーバ端末が前記クライアント端末の前記ベースコンポーネントの前記バージョンに互換性のある構成論理を含む旨の判断に応えて、前記クライアント端末によって認識可能なベースコンポーネントに前記ベースコンポーネントを変換するために、前記構成論理に基づいて前記モバイルアプリケーションページの高バージョンのベースコンポーネントに対して互換性プロセスを実行することと、
をさらに含む、請求項７に記載の１つまたは複数のコンピュータ可読媒体。
【請求項１６】
前記モバイルアプリケーションページを前記サーバ端末によって前記記憶することが、
前記クライアント端末からページ構成命令を受信することと、
前記ページ構成命令に基づいて、前記モバイルアプリケーションページのコンテンツ、及び前記アプリケーションページの名前、前記モバイルアプリケーションページのネームスペース、または前記アプリケーションページのユーザーアカウントの内の少なくとも１つを取得することと、
前記モバイルアプリケーションページの前記名前、前記モバイルアプリケーションページの前記ネームスペース、または前記モバイルアプリケーションページの前記ユーザーアカウントの内の少なくとも１つに基づいて前記モバイルアプリケーションページのページ識別子を生成することと、
前記モバイルアプリケーションページの前記ページ識別子及び前記コンテンツを記憶することと、
を含む、請求項７に記載の１つまたは複数のコンピュータ可読媒体。
【請求項１７】
クライアント端末でモバイルアプリケーションページを更新するための装置であって、
１つまたは複数のプロセッサと、
前記１つまたは複数のプロセッサによって実行可能な複数のコンポーネントを維持するためのメモリであって、前記複数のコンポーネントが、
クライアント端末からモバイルアプリケーションページのＵＲＬを受信するように構成された要求受信モジュールと、
前記ＵＲＬに基づいて前記モバイルアプリケーションページのページ識別子を取得するように構成された第１の取得モジュールと、
前記ページ識別子に基づいて、前記モバイルアプリケーションページのカスタムページフラグメント、テンプレート、または前記モバイルアプリケーションページのページコンポーネントの内の少なくとも１つを取得するように構成された第２の取得モジュールと、
前記モバイルアプリケーションページの前記カスタムページフラグメント、テンプレート、または前記モバイルアプリケーションページのページコンポーネントの内の少なくとも１つに基づいて、前記モバイルアプリケーションページを生成するように構成された生成モジュールと、
前記モバイルアプリケーションページに動的データ、及びページコンポーネントの結合属性のスタイルを含むように構成された構成モジュールと、
サーバ端末から前記モバイルアプリケーションページを受信するように構成されたページ送信モジュールであって、前記モバイルアプリケーションページがページレイアウト及びページコンポーネントを含む、前記ページ送信モジュールと、
を備える前記メモリと、
を備える前記装置。
【請求項１８】
前記モバイルアプリケーションページの前記カスタムページフラグメント、前記テンプレート、または前記モバイルアプリケーションページの前記ページコンポーネントの内の前記少なくとも１つが、Ｊｓｏｎデータ交換フォーマットまたはＸＭＬマークアップ拡張言語を使用し、表される、請求項１７に記載の装置。
【請求項１９】
前記複数のコンポーネントが、前記モバイルアプリケーションページを構成するように構成された構成ページモジュールをさらに備え、前記構成ページモジュールが、
前記モバイルアプリケーションページのコンテンツ、前記モバイルアプリケーションページの名前、前記モバイルアプリケーションページのネームスペース、または前記モバイルアプリケーションページのユーザーアカウントの内の少なくとも１つを含んだページ構成命令を、前記クライアント端末を介して受信するように構成された命令受信モジュールであって、前記モバイルアプリケーションページの前記コンテンツが前記モバイルアプリケーションページのカスタムページフラグメント、テンプレート、または前記モバイルアプリケーションページのページコンポーネントの内の少なくとも１つを含む、前記命令受信モジュールと、
前記サーバ端末によって前記モバイルアプリケーションページを記憶することを要求するために前記サーバ端末に前記ページ構成命令を送信するように構成された要求記憶モジュールと、
を備える、請求項１７に記載の装置。
【請求項２０】
前記複数のコンポーネントが、
前記サーバ端末によって事前に設定されるページコンポーネントライブラリ及びテンプレートライブラリを取得するように構成された取得ライブラリモジュールと、
前記ページコンポーネントライブラリの前記ページコンポーネント及び前記テンプレートライブラリの前記テンプレートを表示するように構成されたコンポーネントテンプレート取得モジュールと、
をさらに備える、請求項１９に記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
本願は、参照することによりその全体が本明細書に組み込まれる「Ｍｅｔｈｏｄｓ，  Ｄｅｖｉｃｅｓ，  ａｎｄ  Ｓｙｓｔｅｍｓ  ｆｏｒ  Ｐｒｏｃｅｓｓｉｎｇ  Ｍｏｂｉｌｅ  Ａｐｐｌｉｃａｔｉｏｎ  Ｐａｇｅｓ」と題する２０１４年１０月３０日に出願された中国特許出願第２０１４１０５９６９６５．１号の優先権を主張する。
【０００２】
本開示はモバイルインターネット技術に関し、より詳細にはモバイルアプリケーションのページを処理し、クライアント端末でモバイルアプリケーションのページを更新するための方法、装置、及びシステムに関する。
【背景技術】
【０００３】
モバイルインターネット技術の連続的な開発により、企業は多様なレベルでの必要性のためにモバイル開発モードを選ぶ必要がある。現在、モバイル開発モデルはネイティブ開発モデル、ウェブ開発モデル、及び混合開発モードを含む。モバイルアプリケーションのページの表示は、対応するモバイルアプリケーション（例えば、モバイルアプリ）の開発モード、及びモバイルアプリケーションのタイプによって決まる。
【０００４】
モバイルアプリケーションのタイプは、ネイティブアプリケーション、ウェブアプリケーション、及びハイブリッドアプリケーションを含む。ネイティブアプリは、プラットフォーム特有のアプリケーション開発言語を使用し、開発されるアプリケーションである。ネイティブアプリに関して、クライアント端末は異なるモジュールを有し、特定のコンテンツを提示するための決定はサーバ端末からデータを要求することによって下される。ウェブアプリは統一規格ハイパーテキストマークアップ言語（ＨＴＭＬ）、ＪＡＶＡＳＣＲＩＰＴ（登録商標）、カスケーディングスタイルシート（ＣＳＳ）、及び開発用の他のウェブ技術を採用する。異なるプラットフォームにアクセスするためのブラウザを通して、ウェブアプリはクロスプラットフォームのビジットを達成できる。ハイブリッドアプリは、ネイティブアプリ及びウェブアプリの欠陥を補うために使用される。混合アプリケーションでは、ハイブリッドアプリは、動的領域の代わりにＨＴＭＬ５を使用する。
【０００５】
ウェブ開発言語及びプログラミング言語を使用する間に、ハイブリッドアプリは多様なアプリストアを通してパッケージ化され、分散される。ハイブリッドアプリの特徴はネイティブアプリに近く、ウェブアプリとは異なる。ネイティブアプリ、ウェブアプリ、及びハイブリッドアプリの優位点及び不利な点は、表１に示される。
【０００６】
【表１】
0006629848.tif 000002
【０００７】
表１に示されるように、ネイティブアプリは多大な開発費を必要とし、各クライアントプラットフォームが対応するコンポーネントライブラリだけではなく、独立した開発及び保守も必要とする。それらのコンポーネントは異なり、複数の固定されたいくつかのスタイルを含むことがある。ユーザーが新しいアプリケーションパッケージをダウンロードしなければならないので、ネイティブアプリの更新は困難である。したがって、クライアント端末上のこれらのハードコーディングされたコンポーネントはスケーラビリティを欠く。一方、アプリケーションパッケージコンポーネントの増加に伴い、設備、ユーザー、及び開発者は追加費用を追加してよい。ネイティブアプリは最適なユーザー経験を有するが、ネイティブアプリは最高の開発費及び保守費を有する。
【０００８】
ウェブアプリは、統一規格ＨＴＭＬ、ＪＡＶＡＳＣＲＩＰＴ、ＣＳＳ、及び開発用の他の技術を採用する。したがって、ウェブアプリの開発費用は最小である。他方、ウェブアプリに関してページを処理し、表示することはクライアント端末上のブラウザに依存するため、ウェブアプリは最悪のユーザー経験を有する。ハイブリッドアプリのページはＷｅｂＶｉｅｗ技法に依存し、したがってハイブリッドアプリの操作性はジェスチャ及び動画休止等、ネイティブアプリの操作性よりも悪い。ハイブリッドアプリはウェブアプリよりも優れたユーザー経験を有するが、ネイティブアプリよりも悪い。またはハイブリッドアプリの開発は、開発者が多様なクライアント端末（例えば、ｉＯＳ、Ａｎｄｒｏｉｄ等）を理解し、ウェブ開発者がハイブリッドアプリケーションを知っていることを必要とする。したがって、ハイブリッドアプリは、ネイティブアプリよりも低い開発費及び保守費を有するが、ウェブアプリよりも高い開発費及び保守費を有する。
【０００９】
要約すると、現在の技術では、開発費及び保守費を相対的に低く保つ一方で、互換性及びユーザー経験の改善の余地がある。
【００１０】
本明細書の実施態様は、モバイルアプリケーションページを処理するための方法及び装置に関する。実施態様は開発費を削減し、ユーザー経験を改善し得る。実施態様は、クライアント端末でモバイルアプリケーションページを更新するための方法及び装置、ならびにモバイルアプリケーションページを処理するためのシステムにさらに関する。本発明の概要は、主張されている主題のすべての重要な特徴または不可欠な特徴を識別することを目的としているわけではなく、本発明の概要は主張されている主題の範囲を決定する上での補助として単独で使用されることを目的としているわけでもない。
【００１１】
実施態様は、モバイルアプリケーションページを処理するための方法を含む。方法は、コンピューティング装置によってモバイルアプリケーションページのためのアクセス要求を受信することを含んでよい。コンピューティング装置は、アクセス要求のユニフォームリソースロケータ（ＵＲＬ）に基づいてサーバ端末にモバイルアプリケーションページを要求し、サーバからモバイルアプリケーションページを受信してよい。モバイルアプリケーションページはページレイアウト及びページコンポーネントを含んでよい。コンピューティング装置は、モバイルアプリケーションページをクライアント端末によって認識可能なオブジェクトに変換するためにモバイルアプリケーションページをさらに解析し、次いでページコンポーネントの内の１つのタイプ及びクライアント端末のベースコンポーネントライブラリに基づいてページコンポーネントのそれぞれのインスタンスを生成するためにオブジェクトのページコンポーネントをトラバースしてよい。
【００１２】
コンピューティング装置は、ページコンポーネントの内の１つの１つまたは複数の属性に基づいてページコンポーネントのそれぞれのインスタンスをさらに構成し、ページコンポーネントの内の１つのインスタンスをレンダリングしてよい。コンピューティング装置はオブジェクトにレンダリングされたインスタンスを返し、クライアント端末上のモバイルアプリケーションページに対応するローカルオブジェクトを生成し、ローカルオブジェクトに基づいてモバイルアプリケーションページを表示してよい。
【００１３】
実施態様では、ページコンポーネントの内の１つのタイプ及びクライアント端末のベースコンポーネントライブラリに基づいてページコンポーネントのそれぞれのインスタンスを生成する前に、コンピューティング装置は、クライアント端末に事前に記憶されるコンポーネントレジストリを取得し、コンポーネントレジストリに基づいてクライアント端末のベースコンポーネントライブラリを初期化してよい。これらのインスタンスでは、コンポーネントレジストリは、ベースコンポーネントのタイプとベースコンポーネントのカテゴリの間の対応関係を示してよく、ベースコンポーネントはボタンコンポーネント、画像コンポーネント、ラベリングコンポーネント、及びテキストコンポーネントを含んでよい。例えば、モバイルアプリケーションページは、Ｊｓｏｎデータ交換フォーマットまたはＸＭＬマークアップ拡張言語を使用し、表されたページを含んでよい。
【００１４】
実施態様では、コンピューティング装置は、Ｊｓｏｎデータ交換フォーマットを使用し、表されたページを解析して、クライアント端末によって認識可能なオブジェクトにページを変換することによって、モバイルアプリケーションページをクライアント端末によって認識可能なオブジェクトに変換するためにモバイルアプリケーションページを解析してよい。
【００１５】
実施態様では、コンピューティング装置は、ＸＭＬマークアップ拡張言語を使用し、表されたページを解析して、クライアント端末によって認識可能なページにページを変換することによって、モバイルアプリケーションページをクライアント端末によって認識可能なオブジェクトに変換するためにモバイルアプリケーションページを解析してよい。
【００１６】
実施態様では、ページコンポーネントの内の１つのタイプ及びクライアント端末のベースコンポーネントライブラリに基づいてページコンポーネントのそれぞれのインスタンスを生成する前に、コンピューティング装置は、ページコンポーネントのタイプに基づいてクライアント端末のベースコンポーネントライブラリからページコンポーネントのカテゴリを取得し、ページコンポーネントのカテゴリに基づいてページコンポーネントのインスタンスを生成してよい。
【００１７】
実施態様では、ページコンポーネントの１つまたは複数の属性は、スタイル属性、コンポーネント属性、論理属性、編集属性、及び／または結合属性を含んでよい。コンポーネント属性は、コンポーネントの文字記述を含んでよい。スタイル属性は、幅、高さ、及び／または色を含むコンポーネントのスタイル記述を含んでよい。論理属性は、条件文及び／またはループ実行文を含んだコンポーネントによってサポートされる制御文を含んでよい。編集属性は、コンポーネントの編集規則を含んでよい。結合属性は、コンポーネントに結合されるイベント、動画、動的データ、スタイル、及び／または埋め込み点データを含んでよい。
【００１８】
実施態様では、ページコンポーネントの内の１つの１つまたは複数の属性に基づいてページコンポーネントの内の１つのインスタンスを構成することは、スタイル属性、コンポーネント属性、論理属性、編集属性、及び／または結合属性を取得するためにモバイルアプリケーションページを解析すること、及びスタイル属性、コンポーネント属性、論理属性、編集属性、及び／または結合属性に基づいてページコンポーネントの１つのインスタンスを構成することを含んでよい。実施態様では、結合属性の動的データの結合方法は、動的結合、静的結合、及び従属結合を含んでよい。
【００１９】
実施態様は、上記に表された方法に対応する装置を含む。装置は、モバイルアプリケーションページのアクセス要求を受信するように構成された要求受信モジュール、アクセス要求のユニフォームリソースロケータ（ＵＲＬ）に基づいてモバイルアプリケーションページをサーバに対して要求するように構成された要求送信モジュール、及びサーバからモバイルアプリケーションページを受信するように構成されたページ受信モジュールを含んでよい。モバイルアプリケーションページは、ページレイアウト及びページコンポーネントを含んでよい。
【００２０】
装置は、モバイルアプリケーションページをクライアント端末によって認識可能なオブジェクトに変換するためにモバイルアプリケーションページを解析するように構成された解析モジュール、ページコンポーネントの内の１つのタイプ及びクライアント端末のベースコンポーネントライブラリに基づいてページコンポーネントのそれぞれのインスタンスを生成するため、及びページコンポーネントの内の１つの１つまたは複数の属性に基づいてページコンポーネントの内の１つのインスタンスを構成するためにオブジェクトのページコンポーネントをトラバースするように構成されたトラバースモジュールをさらに含んでよい。
【００２１】
装置は、オブジェクトにレンダリングされたインスタンスを返し、クライアント端末でモバイルアプリケーションページに対応するローカルオブジェクトを生成するように構成された生成モジュール、及びローカルオブジェクトに基づいてモバイルアプリケーションページを表示するように構成された表示モジュールをさらに含んでよい。
【００２２】
実施態様では、装置は、クライアント端末で事前に記憶されるコンポーネントレジストリを取得するように構成されたレジストリ取得モジュール、コンポーネントレジストリに基づいてクライアント端末のベースコンポーネントライブラリを初期化するように構成された初期化コンポーネントライブラリモジュールを含んでよい。これらのインスタンスでは、コンポーネントレジストリはベースコンポーネントのタイプとベースコンポーネントのカテゴリの間の対応関係を示してよく、ベースコンポーネントは、ボタンコンポーネント、画像コンポーネント、ラベリングコンポーネント、及びテキストコンポーネントを含んでよい。例えば、Ｊｓｏｎデータ交換フォーマットまたはＸＭＬマークアップ拡張言語を使用し、表されるページを含んだモバイルアプリケーションページ。
【００２３】
例えば、モバイルアプリケーションページをクライアント端末によって認識可能なオブジェクトに変換するためにモバイルアプリケーションページを解析することは、ページをクライアント端末によって認識可能なオブジェクトに変換するためにＪｓｏｎデータ交換フォーマットを使用し、表されるページを解析することを含んでよい。例えば、モバイルアプリケーションページをクライアント端末によって認識可能なオブジェクトに変換するためにモバイルアプリケーションページを解析することは、ページをクライアント端末によって認識可能なページに変換するためにＸＭＬマークアップ拡張言語で表されるページを解析することを含んでよい。
【００２４】
実施態様では、トラバースモジュールは、ページコンポーネントの内の１つのタイプ及びクライアント端末のベースコンポーネントライブラリに基づいてページコンポーネントのそれぞれのインスタンスを生成するように構成されたコンポーネントインスタンス生成モジュールを含んでよい。コンポーネントインスタンス生成モジュールは、ページコンポーネントのタイプに基づいてクライアント端末のベースコンポーネントライブラリからページコンポーネントのカテゴリを取得するように構成されたコンポーネントクラス取得サブモジュール、及びページコンポーネントのカテゴリに基づいてページコンポーネントのインスタンスを生成するように構成されたコンポーネントインスタンス生成サブモジュールを含んでよい。
【００２５】
例えば、ページコンポーネントの１つまたは複数の属性はスタイル属性、コンポーネント属性、論理属性、編集属性、及び／または結合属性を含んでよい。コンポーネント属性は、コンポーネントの文字記述を含んでよい。スタイル属性は、幅、高さ、及び／または色を含んだコンポーネントのスタイル記述を含んでよい。
【００２６】
論理属性は、条件文及び／またはループ実行文を含んだコンポーネントによってサポートされる制御文を含んでよい。編集属性は、コンポーネントの編集規則を含んでよい。結合属性は、コンポーネントに結合されるイベント、動画、動的データ、スタイル、及び／または埋め込み点データを含んでよい。
【００２７】
実施態様では、トラバースモジュールは、ページコンポーネントの内の１つまたは複数の属性に基づいてページコンポーネントのインスタンスを構成するように構成された構成コンポーネントモジュールを含んでよい。これらのインスタンスでは、構成コンポーネントモジュールは、モバイルアプリケーションページを解析して、スタイル属性、コンポーネント属性、論理属性、編集属性、及び／または結合属性を取得するように構成されたプロパティ取得サブモジュール、及びスタイル属性、コンポーネント属性、論理属性、編集属性、及び／または結合属性に基づいてページコンポーネントのインスタンスを構成するように構成された構成コンポーネントサブモジュールを含んでよい。例えば、結合属性の動的データの結合方法は、動的結合、静的結合、及び従属結合を含んでよい。
【００２８】
実施態様は、クライアント端末でモバイルアプリケーションページを更新するための方法を含む。方法は、コンピューティング装置によってクライアント端末からモバイルアプリケーションページのＵＲＬを受信すること、ＵＲＬに基づいてモバイルアプリケーションページのページ識別子を取得すること、ならびにページ識別子に基づいてモバイルアプリケーションページのカスタムページフラグメント、テンプレート、及び／またはモバイルアプリケーションのすべてのページコンポーネントを取得することを含んでよい。
【００２９】
コンピューティング装置は、モバイルアプリケーションページのカスタムページフラグメント、テンプレート、及び／またはモバイルアプリケーションページのすべてのページコンポーネントに基づいてモバイルアプリケーションページを生成してよい。これらの例では、動的データ及びページコンポーネントの結合属性のスタイルはモバイルアプリケーションページに含まれる。コンピューティング装置は、サーバからのモバイルアプリケーションページ、ならびにページレイアウト及びページコンポーネントを含んだモバイルアプリケーションページをさらに受信してよい。
【００３０】
例えば、ＵＲＬは、モバイルアプリケーションページの名前、モバイルアプリケーションページのネームスペース、及び／またはモバイルアプリケーションページのユーザーアカウントを含んでよい。
【００３１】
例えば、ＵＲＬに基づいてモバイルアプリケーションページのページ識別子を取得することは、ＵＲＬに基づいてモバイルアプリケーションページの名前、モバイルアプリケーションページのネームスペース、及び／またはモバイルアプリケーションページのユーザーアカウントを取得すること、ならびにモバイルアプリケーションページの名前、モバイルアプリケーションページのネームスペース、及び／またはモバイルアプリケーションページのユーザーアカウントに基づいてモバイルアプリケーションページのページ識別子を取得することを含んでよい。
【００３２】
例えば、ＵＲＬに基づいてモバイルアプリケーションページのページ識別子を取得することは、モバイルアプリケーションページのページ識別子及びサーバ端末で事前に設定されるＡ／Ｂ試験の構成ファイルに基づいてモバイルアプリケーションページに対して評価テンプレートを使用するのか、それとも評価ページを使用するのかを決定することと、評価テンプレートまたは評価ページを使用することに応えて、モバイルアプリケーションページのページ識別子として評価テンプレートのテンプレート識別子または評価ページのページ識別子を指定することを含んでよい。
【００３３】
例えば、モバイルアプリケーションページのカスタムページフラグメント、テンプレート、及び／またはモバイルアプリケーションページのすべてのページコンポーネントは、Ｊｓｏｎデータ交換フォーマットまたはＸＭＬマークアップ拡張言語を使用し、表される。例えば、Ｊｓｏｎデータ交換フォーマットまたはＸＭＬマークアップ言語を使用し、表されるページを含んだモバイルアプリケーションページ。
【００３４】
例えば、ページコンポーネントの１つまたは複数の属性は、スタイル属性、コンポーネント属性、論理属性、編集属性、及び／または結合属性を含んでよい。コンポーネント属性は、コンポーネントの文字記述を含んでよい。スタイル属性は、幅、高さ、及び／または色を含んだコンポーネントのスタイル記述を含んでよい。論理属性は、条件文及び／またはループ実行文を含んだコンポーネントによってサポートされる制御文を含んでよい。編集属性は、コンポーネントの編集規則を含んでよい。結合属性は、コンポーネントに結合されるイベント、動画、動的データ、スタイル、及び／または埋め込み点データを含んでよい。
【００３５】
例えば、モバイルアプリケーションページのカスタムページフラグメント、テンプレート、及び／またはモバイルアプリケーションページのすべてのページコンポーネントはデータベースに記憶される。
【００３６】
例えば、クライアント端末にモバイルアプリケーションを返す前に、コンピューティング装置はモバイルアプリケーションページを、Ｊｓｏｎデータ交換フォーマットまたはＸＭＬ拡張言語を使用し、表されるページに変換してよい。
【００３７】
例えば、クライアント端末にモバイルアプリケーションページを返す前に、コンピューティング装置は、クライアント端末のベースコンポーネントライブラリのバージョンに基づいて、モバイルアプリケーションページがクライアント端末のベースコンポーネントライブラリによってサポートされない高バージョンのベースコンポーネントを含むかどうかを判断してよい。モバイルアプリケーションページが高バージョンでのベースコンポーネントを含む旨の判断に応えて、コンピューティング装置は、ＨＴＭＬ５を使用し、高バージョンのベースコンポーネントを表現してよい。
【００３８】
例えば、ＨＴＭＬ５を使用し、高バージョンでベースコンポーネントを表現することは、ＷｅｂＶｉｅｗを使用し、高バージョンのベースコンポーネントをＨＴＭＬ表現に変換することを含んでよい。
【００３９】
例えば、クライアント端末にモバイルアプリケーションページを返す前に、方法は、クライアント端末のクライアントマシンモデル及びクライアント端末のベースコンポーネントライブラリのバージョンを取得することを含み、クライアント端末のクライアントマシンモデル及びクライアント端末のベースコンポーネントライブラリのバージョンに基づいて、サーバ端末がクライアント端末のベースコンポーネントライブラリのバージョンに互換性のある構成論理を含むかどうかを判断してよい。
【００４０】
サーバ端末がクライアント端末のベースコンポーネントライブラリのバージョンに互換性のある構成論理を含む旨の判断に応えて、コンピューティング装置は、ベースコンポーネントをクライアント端末によって認識可能なベースコンポーネントに変換するために、構成論理に基づいてモバイルアプリケーションページの高バージョンのベースコンポーネントに対して互換性プロセスを実行してよい。
【００４１】
実施態様では、モバイルアプリケーションページは、少なくともモバイルアプリケーションページのコンテンツ、モバイルアプリケーションページの名前、モバイルアプリケーションページのネームスペース、及び／またはモバイルアプリケーションページのユーザーアカウントを含んだページ構成命令をクライアント端末によって受信するように構成されてよい。モバイルアプリケーションページのコンテンツは、モバイルアプリケーションページのカスタムページフラグメント、テンプレート、及びモバイルアプリケーションページのすべてのページコンポーネントを含んでよい。モバイルアプリケーションページは、サーバ端末によってモバイルアプリケーションページを記憶することを要求するためにサーバ端末にページ構成命令を送信するようにさらに構成されてよい。
【００４２】
例えば、クライアント端末によってページ構成命令を受信する前に、方法は、サーバ端末によって事前に設定されるページコンポーネントライブラリ及びテンプレートライブラリを取得すること、ならびにページコンポーネントライブラリのすべてのページコンポーネント及びテンプレートライブラリのすべてのテンプレートを表示することを含んでよい。
【００４３】
例えば、サーバ端末によってモバイルアプリケーションページを記憶することは、クライアント端末からページ構成命令を受信すること、ページ構成命令に基づいてモバイルアプリケーションページのコンテンツ、モバイルアプリケーションページの名前、モバイルアプリケーションページのネームスペース、及び／またはユーザーアカウントを取得することと、モバイルアプリケーションページの名前、モバイルアプリケーションページのネームスペース、及び／またはモバイルアプリケーションページのユーザーアカウントに基づいてモバイルアプリケーションページのページ識別子を生成することと、モバイルアプリケーションページのページ識別子及びコンテンツを記憶することを含んでよい。例えば、モバイルアプリケーションページのページ識別子及びコンテンツはデータベースに記憶される。
【００４４】
実施態様は、クライアント端末でモバイルアプリケーションページを更新するための方法に対応する装置に関する。装置は、クライアント端末からモバイルアプリケーションページのＵＲＬを受信するように構成された要求受信モジュール、ＵＲＬに基づいてモバイルアプリケーションページのページ識別子を取得するように構成された第１の取得モジュール、ならびにページ識別子に基づいてモバイルアプリケーションページのカスタムページフラグメント、テンプレート、及び／またはモバイルアプリケーションページのすべてのページコンポーネントを取得するように構成された第２の取得モジュールを含んでよい。
【００４５】
装置は、モバイルアプリケーションページのカスタムページフラグメント、テンプレート、及び／またはモバイルアプリケーションページのすべてのページコンポーネントに基づいてモバイルアプリケーションページを生成するように構成された生成モジュール、動的データ及びモバイルアプリケーションページのページコンポーネントの結合属性のスタイルを含むように構成された構成モジュール、ならびにサーバからモバイルアプリケーションページを受信するように構成されたページ送信モジュールであって、モバイルアプリケーションページがページレイアウト及びページコンポーネントを含む、ページ送信モジュールをさらに含んでよい。
【００４６】
例えば、ＵＲＬは、モバイルアプリケーションページの名前、モバイルアプリケーションページのネームスペース、及び／またはモバイルアプリケーションページのユーザーアカウントを含んでよい。
【００４７】
実施態様では、第１の取得モジュールは、ＵＲＬに基づいてモバイルアプリケーションページの名前、モバイルアプリケーションページのネームスペース、及び／またはモバイルアプリケーションページのユーザーアカウントを取得するように構成されたビジネスセマンティックス取得サブモジュール、ならびにモバイルアプリケーションページの名前、モバイルアプリケーションページのネームスペース、及び／またはモバイルアプリケーションページのユーザーアカウントに基づいてモバイルアプリケーションページのページ識別子を取得するように構成された取得サブモジュールを含んでよい。
【００４８】
実施態様では、装置はモバイルアプリケーションページのページ識別子及びサーバ端末で事前に設定されるＡ／Ｂ試験の構成ファイルに基づいて、モバイルアプリケーションページに対して評価テンプレートを使用するのか、それとも評価ページを使用するのかを判断するように構成されたＡ／Ｂ試験モジュールをさらに含んでよく、評価テンプレートまたは評価ページを使用することに応えて、装置はモバイルアプリケーションページのページ識別子として評価テンプレートのテンプレート識別子または評価ページのページ識別子を指定してよい。
【００４９】
例えば、モバイルアプリケーションページのカスタムページフラグメント、テンプレート、及び／またはモバイルアプリケーションページのすべてのページコンポーネントは、Ｊｓｏｎデータ交換フォーマットまたはＸＭＬマークアップ拡張言語を使用し、表される。例えば、Ｊｓｏｎデータ交換フォーマットまたはＸＭＬマークアップ拡張言語を使用し、表されるページを含んだモバイルアプリケーション。
【００５０】
例えば、ページコンポーネントの１つまたは複数の属性は、スタイル属性、コンポーネント属性、論理属性、編集属性、及び／または結像属性を含んでよい。コンポーネント属性はコンポーネントの文字記述を含んでよい。スタイル属性は、幅、高さ、及び／または色を含んだコンポーネントのスタイル記述を含んでよい。論理属性は、条件文及び／またはループ実行文を含んだコンポーネントによってサポートされる制御文を含んでよい。編集属性は、コンポーネントの編集規則を含んでよい。結合属性は、コンポーネントに結合されるイベント、動画、動的データ、スタイル、及び／または埋め込み点データを含んでよい。
【００５１】
例えば、モバイルアプリケーションページのカスタムページフラグメント、テンプレート、及び／またはモバイルアプリケーションページのすべてのページコンポーネントはデータベースに記憶される。
【００５２】
実施態様では、装置は、モバイルアプリケーションページをＪｓｏｎデータ交換フォーマットまたはＸＭＬマークアップ拡張言語を使用し、表されるページに変換するように構成されたフォーマット変換モジュール、及びクライアント端末のベースコンポーネントライブラリのバージョンに基づいて、モバイルアプリケーションページがクライアント端末のベースコンポーネントライブラリによってサポートされない高バージョンのベースコンポーネントを含むかどうかを判断するように構成されたダウングレードモジュールをさらに含んでよい。
【００５３】
モバイルアプリケーションページが高バージョンのベースコンポーネントを含む旨の判断に応えて、ダウングレードモジュールは、ＨＴＭＬ５を使用し、高バージョンでベースコンポーネントを表現してよい。
【００５４】
例えば、ＨＴＭＬ５を使用し、高バージョンでベースコンポーネントを表現することは、ＷｅｂＶｉｅｗを使用し、高バージョンのベースコンポーネントをＨＴＭＬ表現に変換することを含んでよい。
【００５５】
実施態様では、装置は、クライアント端末のクライアントマシンモデル及びクライアント端末のベースコンポーネントライブラリのバージョンを取得するように構成された第３の取得モジュール、及びクライアント端末のクライアントマシンモデル及びクライアント端末のベースコンポーネントライブラリのバージョンに基づいて、サーバ端末がクライアント端末のベースコンポーネントライブラリのバージョンに互換性のある構成論理を含むかどうかを判断するように構成されたパッチングモジュールをさらに含んでよい。
【００５６】
サーバ端末がクライアント端末のベースコンポーネントライブラリのバージョンに互換性のある構成論理を含む旨の判断に応えて、パッチングモジュールは、ベースコンポーネントをクライアント端末によって認識可能なベースコンポーネントに変換するために、構成論理に基づいてモバイルアプリケーションページの高バージョンのベースコンポーネントに対して互換性プロセスを実行してよい。
【００５７】
例えば、装置は、モバイルアプリケーションページを構成するように構成された構成ページモジュールを含んでよい。これらのインスタンスでは、構成ページモジュールは、クライアント端末によって少なくともモバイルアプリケーションページのコンテンツ、モバイルアプリケーションページの名前、モバイルアプリケーションページのネームスペース、及び／またはモバイルアプリケーションページのユーザーアカウントを含んだページ構成命令を受信するように構成された命令受信モジュールを含んでよい。
【００５８】
例えば、モバイルアプリケーションページのコンテンツは、モバイルアプリケーションページのカスタムページフラグメント、テンプレート、及び／またはモバイルアプリケーションページのすべてのページコンポーネントを含んでよい。
【００５９】
実施態様では、装置は、サーバ端末によってモバイルアプリケーションページを記憶することを要求するためにサーバ端末にページ構成命令を送信するように構成された要求記憶モジュール、サーバ端末によって事前に設定されるページコンポーネントライブラリ及びテンプレートライブラリを取得するように構成されたライブラリ取得モジュール、ページコンポーネントライブラリのすべてのページコンポーネント及びテンプレートライブラリのすべてのテンプレートを表示するように構成されたコンポーネントテンプレート取得モジュールをさらに含んでよい。
【００６０】
実施態様では、装置は、サーバ端末でモバイルアプリケーションページを記憶するように構成されたページ記憶モジュールをさらに含んでよい。これらのインスタンスでは、ページ記憶モジュールは、クライアント端末からページ構成命令を受信するように構成された受信サブモジュール、ページ構成命令に基づいてモバイルアプリケーションページのコンテンツ、モバイルアプリケーションページの名前、モバイルアプリケーションページのネームスペース、及び／またはモバイルアプリケーションページのユーザーアカウントを取得するように構成された取得サブモジュール、及びモバイルアプリケーションページの名前、モバイルアプリケーションページのネームスペース、及び／またはモバイルアプリケーションページのユーザーアカウントに基づいてモバイルアプリケーションページのページ識別子を生成するように構成された生成サブモジュールを含んでよい。
【００６１】
記憶モジュールは、モバイルアプリケーションページのページ識別子及びコンテンツを記憶するように構成された記憶サブモジュールをさらに含んでよい。例えば、モバイルアプリケーションページのページ識別子及びコンテンツはデータベースに記憶される。
【００６２】
実装態様は、モバイルアプリケーションページを処理するためのシステムを含む。システムは、モバイルアプリケーションページを処理するための上述の装置、及び／またはクライアント端末でモバイルアプリケーションページを更新するための上述の装置を含んでよい。先行技術と比較すると、本願の一態様は以下の優位点を有する。
【００６３】
実施態様は、モバイルアプリケーションページを処理するため、及び／またはクライアント端末でモバイルアプリケーションページを更新するための方法、装置、及びシステムに関する。実施態様は、モバイルアプリケーションに事前に設定されたページプロトコル構成を使用する。言い換えると、実施態様は、モバイルアプリケーションページがページコンポーネント及びページレイアウトを含み、次いで新しいページをリリースするためにサーバ端末を促進できるようにするために事前に設定されたページプロトコル構成の多様なページコンポーネント及びページプロトコルを使用する。
【００６４】
これらのインスタンスでは、モバイルクライアント端末は解析エンジンのプロトコルを解析し、事前に設定されたページプロトコル構成を使用し、表されたページをレンダリングし、表示する。
【００６５】
実施態様は、以下の結果を達成し得る。
【００６６】
１）事前に設定されたページプロトコルは、シンタックス及びセマンティックスに関してＨＴＭＬ／ＣＳＳ開発を使用し、開発された従来のＷＥＢページに類似している。開発者はクライアント端末の専門的な知識を学習する必要はなく、モバイルアプリケーションを開発できるだろう。アプリケーションを開発するための費用は、ウェブページを含んだアプリケーションを開発するための費用に類似している。これが開発費を削減する。
【００６７】
２）サーバ端末でアプリケーションの新しいページをリリースすると、クライアント端末上のアプリケーションのコンテンツ全体が変更される。これは、ユーザーがダウンロードするためのアプリケーションパッケージの新しいアップグレードを発表する必要を回避し、したがってアップグレードの速度を大幅に加速する。ユーザーは、ページがサーバ端末でリリースされた後ページの最も新しいバージョンを経験し得る。
【００６８】
３）クライアント端末はページをローカルコードページに変換し、ページがクライアントプロトコル解析エンジンによってローカルコードページに変換された後サービスを受ける。したがって、ユーザー経験は変更されておらず、ネイティブアプリケーションの経験及び性能が維持される。
【００６９】
４）ネイティブアプリケーションと比較すると、ページ組みのためのページコンポーネント及びテンプレートはクライアントにとってトランスペアレントである。ページコンポーネント及びテンプレートの性質はページプロトコルである。したがって、クライアントはページを解析するためにはページプロトコルに対処しさえすればよい。ページコンポーネント及びテンプレートは、例えばページコンポーネント及びテンプレートを動的に追加するために、ページのページプロトコルに基づいて無限に拡張できる。
【００７０】
５）同じページは、クロスプラットフォームの効果を達成するために異なるプラットフォーム（例えば、ｉＯＳ、Ａｎｄｒｏｉｄ、及びＨ５）によって表示されてよい。これが、アプリケーションコードのための複数の異なるオペレーティングシステムの開発及び保守を回避し、このようにしてプログラム開発及び保守の作業負荷を効果的に削減する。
【００７１】
要するに、実施態様は、モバイルアプリケーションページを低コストで開発し、ネイティブアプリケーションのユーザー経験に類似する優れたユーザー経験を有することを可能にする。
【００７２】
発明を実施するための形態は添付の図を参照して説明される。異なる図中の同じ参照番号の使用は、類似する品目または同一の品目を示す。
【図面の簡単な説明】
【００７３】
【図１】モバイルアプリケーションページを処理するための例示的なプロセスのフローチャートである。
【図２】図１に説明される操作１１０の前の例示的なプロセスのフローチャートである。
【図３】図１に説明される操作１１０の例示的なプロセスのフローチャートである。
【図４】モバイルアプリケーションページを処理するための例示的な装置の概略図である。
【図５】クライアント端末でモバイルアプリケーションページを更新するための例示的なプロセスのフローチャートである。
【図６】図５に説明される操作５０４のための例示的なプロセスのフローチャートである。
【図７】図５に説明される操作５１２の前にダウングレードし、互換にするための例示的なプロセスのフローチャートである。
【図８】モバイルアプリケーションページを構成するための例示的なプロセスのフローチャートである。
【図９】モバイルアプリケーションページを更新するための例示的な装置の概略図である。
【図１０】モバイルアプリケーションページを処理するための例示的なシステムの概略図である。
【発明を実施するための形態】
【００７４】
以下の説明では、本開示を完全に理解するために多数の詳細が説明される。しかしながら、本開示は、実施形態に表される本明細書での方法以外の多くの方法で実装でき、当業者は、本願が暗示的意味のケースから逸脱することなく類似したプロモーションを行うことができる。したがって、本開示は以下に開示される特定の実施形態に制限されない。
【００７５】
実施態様は、本明細書でモバイルアプリケーションの開発、公開、及び操作を含んだモバイルアプリケーションに関する作業に関する。モバイルアプリケーションとは、複数のユーザーインタフェースを含んだアプリケーションである。したがって、モバイルアプリケーションを開発し、公開し、操作することは、これらのユーザーインタフェースと対話することによって実施されてよい。
【００７６】
実施態様は、モバイルアプリケーションページを処理するため、及び／またはクライアント端末でモバイルアプリケーションページを更新するための方法、装置、及びシステムに関する。
【００７７】
図１は、モバイルアプリケーションページを処理するための例示的なプロセス１００のフローチャートである。１０２で、コンピューティング装置（例えば、モバイル機器）はモバイルアプリケーションページのアクセス要求を受信してよい。
【００７８】
１０４で、コンピューティング装置はアクセス要求のユニフォームリソースロケータ（ＵＲＬ）に基づいてモバイルアプリケーションページをサーバ端末に要求してよい。
【００７９】
実施態様は、モバイルアプリケーションページを処理するための方法を含む。クライアント端末は、ユニフォームリソースロケータ（ＵＲＬ）を傍受し、サーバ端末にＵＲＬを送信してよい。サーバ端末はページ識別子を得るためにＵＲＬを解析してよい。ページ識別子に基づいて、サーバ端末はページのプロトコルデータの場所を見つけてよい。
【００８０】
実施態様では、ＵＲＬは、モバイルアプリケーションページの名前、モバイルアプリケーションページのネームスペース、及び／またはモバイルアプリケーションページのユーザーアカウントを含んでよい。ネームスペースはページ組織の形をとる。例えば、ネームスペースを使用し、ページはこれらのページの機能に基づいて分類されてよい。また、ネームスペースはモバイルアプリケーションと関連付けられるすべてのページのフルネームの一部である。ページのフルネームは、少なくともページが属するネームスペース及びページの名前を含んでよい。例えば、同じ名前を有するが、異なるネームスペースの下のページは異なるページである。
【００８１】
例えば、ＵＲＬは、モバイルアプリケーションページの名前、モバイルアプリケーションページのネームスペース、及び／またはモバイルアプリケーションページのユーザーアカウントを含んでよい。例えば、ＵＲＬは「ｎａｍｅｓｐａｃｅ＝ｓｈｏｐ」、「ｐａｔｈ＝ｉｎｄｅｘ」、「ｕｓｅｒ＝１２３４５」を含む。これらのインスタンスでは、「ネームスペース」値はページが属するネームスペースを示し、「経路」値はページの名前を示し、「ユーザー」値はページが属するユーザーアカウントを示す。上記の情報に基づいて、サーバ端末は、例えば電子商取引サービスプロバイダと関連付けられたウェブサイトで、売主「１２３４５」のホームページの場所を見つけ得る。
【００８２】
１０６で、コンピューティング装置はサーバ端末からモバイルアプリケーションページを受信してよい。モバイルアプリケーションページはページレイアウト及びページコンポーネントを含んでよい。モバイルアプリケーションページは、Ｊｓｏｎデータ交換フォーマットまたはＸＭＬマークアップ拡張言語を使用するページを含んでよい。ページレイアウトはページのフォーマット構成を示す。ページコンポーネントはコンポーネント要素を含んでよい。
【００８３】
例えば、ＸＭＬマークアップ拡張言語を使用するページは、以下の通りに示されてよい。
【００８４】
0006629848.tif 000003
【００８５】
0006629848.tif 000004
【００８６】
0006629848.tif 000005
【００８７】
0006629848.tif 000006
【００８８】
0006629848.tif 000007
【００８９】
上述されたように、ＸＭＬマークアップ拡張言語を使用し、Ｊｓｏｎデータ交換フォーマットを使用するページコンポーネントは同じページコンポーネント、つまり電話コンポーネントである。これらの２つのフォーマット間で、Ｊｓｏｎデータ交換フォーマットを使用するページはクライアント端末上のエンジン解析プロトコルに対してより率直である。したがって、サーバ端末は概してページをレンダリングするためにＪｓｏｎデータ交換フォーマットを採用し、クライアント端末にページを返す。ＸＭＬマークアップ拡張言語を使用するページは、ページを開発する開発者用に生成される。
【００９０】
１０８で、コンピューティング装置は、モバイルアプリケーションページをクライアント端末によって認識可能なオブジェクトに変換するためにモバイルアプリケーションページを解析してよい。ＸＭＬマークアップ拡張言語を使用するページの場合、コンピューティング装置は、ページをクライアント端末によって認識可能なページに変換するためにＸＭＬマークアップ拡張言語でページを解析することによって、モバイルアプリケーションページをクライアント端末によって認識可能なオブジェクトに変換するためにモバイルアプリケーションページを解析してよい。
【００９１】
実施態様では、Ｊｓｏｎデータ交換フォーマットを使用するページが使用されてよい。したがって、コンピューティング装置はページをクライアント端末によって認識可能なオブジェクトに変換するためにＪｓｏｎデータ交換フォーマットのページを解析することによって、モバイルアプリケーションページをクライアント端末によって認識可能なオブジェクトに変換するためにモバイルアプリケーションページを解析してよい。
【００９２】
クライアント端末によって認識可能なオブジェクトは、クライアント端末のローカルコンパイルモデルの論理ユニットを含んでよい。Ｊｓｏｎデータ交換フォーマットを使用し、記述されるページは、本来プレーンテキストファイルである。したがって、ファイルを解析するためには、ファイルの全レベルの要素が残りの手順のためにクライアント端末によって認識可能なオブジェクトに変換される。
【００９３】
１１０で、コンピューティング装置は、ページコンポーネントの内の１つの１つまたは複数のタイプ、及びクライアント端末のベースコンポーネントライブラリに基づいてページコンポーネントのそれぞれのインスタンスを生成するためにオブジェクトのページコンポーネントをトラバースし、ページコンポーネントの内の１つの１つまたは複数の属性に基づいてページコンポーネントのインスタンスを構成し、インスタンスをレンダリングしてよい。
【００９４】
実施態様では、ページコンポーネントのそれぞれのインスタンスを生成するための前提条件として、ページコンポーネントのすべてのカテゴリがクライアント端末のベースコンポーネントライブラリに記憶される。クライアント端末でのエンジン解析プロトコルは、ページコンポーネントの内の１つのタイプに基づいてページコンポーネントの内の１つのインスタンスを生成するために、ベースコンポーネントライブラリからページコンポーネントに対応するカテゴリを取得してよい。
【００９５】
図２は、図１に説明される操作１１０の前の例示的なプロセス２００のフローチャートである。２０２で、コンピューティング装置は、クライアント端末に事前に記憶されるコンポーネントレジストリを取得してよい。
【００９６】
２０４で、コンピューティング装置は、コンポーネントレジストリに基づいてクライアント端末のベースコンポーネントライブラリを初期化してよい。コンポーネントレジストリは、ベースコンポーネントのタイプとベースコンポーネントのカテゴリの間の対応する関係性を示してよい。例えば、コンポーネントレジストリは表２に示されてよい。
【００９７】
【表２】
0006629848.tif 000008
【００９８】
実施態様のベースコンポーネントはＨＴＭＬタグに類似している。ベースコンポーネントは、ボタンコンポーネント、画像コンポーネント、ラベリングコンポーネント、及びテキストコンポーネントを含んでよい。ベースコンポーネントライブラリは、ＨＴＭＬタグに対応し、形式コンポーネント、ナビゲーションリンクコンポーネント、及びオプションコンポーネントをさらに含んでよい。
【００９９】
図３は、図１に説明される操作１１０のための例示的なプロセス３００のフローチャートである。いくつかの実施態様では、ページコンポーネントの内の１つの１つまたは複数のタイプ及びクライアント端末のベースコンポーネントライブラリに基づいてページコンポーネントのそれぞれのインスタンスを生成する前に、コンピューティング装置は、３０２でページコンポーネントのタイプに基づいてクライアント端末のベースコンポーネントライブラリからページコンポーネントのカテゴリを取得してよい。
【０１００】
３０４で、コンピューティング装置は、ページコンポーネントの内の１つのカテゴリに基づいてページコンポーネントのそれぞれのインスタンスを生成してよい。
【０１０１】
実施態様では、ページコンポーネントの１つまたは複数の属性は、スタイル属性、コンポーネント属性、論理属性、編集属性、及び／または結合属性を含んでよい。コンポーネント属性は、コンポーネントの文字記述を含んでよい。スタイル属性は、幅、高さ、及び／または色を含んだコンポーネントのスタイル記述を含んでよい。論理属性は、条件文及び／またはループ実行文を含んだ、コンポーネントによってサポートされる制御文を含んでよい。編集属性はコンポーネントの編集規則を含んでよい。結合属性は、コンポーネントに結合されるイベント、動画、動的データ、スタイル、及び／または埋め込み点データを含んでよい。コンポーネント属性は、コンポーネントの文字属性を含んでよい。例えば、写真コンポーネントのコンポーネント属性は、ＵＲＬによって示される写真のアドレスである。
【０１０２】
スタイル属性は、幅、高さ、及び／または色を含んだコンポーネントのスタイル記述（例えば、ＣＳＳ）を含んでよい。論理属性は、条件文及び／またはループ実行文（例えば、条件、仮説、及び他）を含んだコンポーネントによってサポートされる制御文を含んでよい。編集属性は、エディタと対話するプロトコルを含んでよく、メインコンテンツは編集中に従うためにｄａｔａＤｅｆｉｎｅｓに合意してよい。例えば、写真コンポーネントは最高で５つの編集規則を使用してよい。結合属性はページプロトコルの動的データの形式を含んでよい。返却データはＨＴＴＰ要求を介して対応した位置に記入されてよい。
【０１０３】
実施態様では、結合属性の動的データの結合方法は、動的結合、静的結合、及び従属結合を含んでよい。例えば、ＡＰＩ結合：動的データ取得のためのインタフェース、静的データ：ユーザーがページを構成するときに充填されるデータ、及びデータ基準：データ依存レンダリングは、速度に類似した方法を使用し、実行される。
【０１０４】
実施態様では、コンピューティング装置は、３０６でスタイル属性、コンポーネント属性、論理属性、編集属性、及び／または結合属性を取得するためにモバイルアプリケーションページを解析し、３０８でスタイル属性、コンポーネント属性、論理属性、編集属性、及び／または結合属性に基づいてページコンポーネントの内の１つのインスタンスを構成することによって、ページコンポーネントの１つまたは複数の属性に基づいてページコンポーネントのインスタンスを構成してよい。
【０１０５】
３１０で、コンピューティング装置はページコンポーネントの内の１つのインスタンスをレンダリングしてよい。
【０１０６】
図１を参照し直すと、コンピューティング装置は１１２でオブジェクトにレンダリングされたインスタンスを返し、クライアント端末でモバイルアプリケーションページに対応するローカルオブジェクトを生成してよい。
【０１０７】
１１４で、コンピューティング装置はローカルオブジェクトに基づいたモバイルアプリケーションページを表示してよい。
【０１０８】
実施態様は、モバイルアプリケーションページを処理するための方法に関する。方法は、ページレイアウト及びページコンポーネントによって示されるモバイルアプリケーションページをクライアント端末によって認識可能なオブジェクトに変換してよい。方法は、コンピューティング装置によって、クライアント端末によって認識可能なオブジェクトの個々のページコンポーネントをトラバースすること、及びページコンポーネントの内の１つのタイプ及びクライアント端末のベースコンポーネントライブラリに基づいてページコンポーネントのそれぞれのインスタンスを生成することを含む。コンピューティング装置はさらに、ページコンポーネントの１つまたは複数の属性に基づいてページコンポーネントのインスタンスを構成し、ページコンポーネントのインスタンスをレンダリングし、オブジェクトにレンダリングされたインスタンスを返し、クライアント端末上でモバイルアプリケーションページに対応するローカルオブジェクトを生成してよい。このようにして、クライアント端末はページレイアウト及びページコンポーネントを含んだモバイルアプリケーションページを表示してよい。
【０１０９】
実装態様は、上述されたモバイルアプリケーションページを処理するための方法に対応する装置を含む。実施形態の装置は実質的には説明された方法の例に類似するので、実施形態の装置は命令の方法実施形態の一部を参照して説明される。実施形態の以下の説明は単に例示的である。
【０１１０】
図４は、モバイルアプリケーションページを処理するための例示的な装置４００の概略図である。コンピューティング装置４００はモバイルアプリケーションページを処理するためのユーザー装置またはサーバであってよい。例示的な構成では、コンピューティング装置４００は１つまたは複数のプロセッサ４０２、入／出力インタフェース４０４、ネットワークインタフェース４０６、及びメモリ４０８を含む。
【０１１１】
メモリ４０８は、ランダムアクセスメモリ（ＲＡＭ）等の揮発性メモリ、及び／または読出し専用メモリ（ＲＯＭ）またはフラッシュＲＡＭ等の不揮発性メモリの形をとるコンピュータ可読媒体を含んでよい。メモリ４０８はコンピュータ可読媒体の例である。
【０１１２】
コンピュータ可読媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、または他のデータ等の情報の記憶のための任意の方法または技術で実装される揮発性及び不揮発性の取外し可能な及び取外しできない媒体を含む。コンピュータ記憶媒体の例は、相変化メモリ（ＰＲＡＭ）、スタティックランダムアクセスメモリ（ＳＲＡＭ）、ダイナミックランダムアクセスメモリ（ＤＲＡＭ）、他のタイプのランダムアクセスメモリ（ＲＡＭ）、読出し専用メモリ（ＲＯＭ）、電気的消去可能ＲＯＭ（ＥＥＰＲＯＭ）、フラッシュメモリまたは他のメモリ技術、コンパクトディスク読出し専用メモリ（ＣＤ−ＲＯＭ）、デジタル多用途ディスク（ＤＶＤ）もしくは他の光学記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置もしくは他の磁気記憶装置、またはコンピューティング装置によるアクセスのための情報を記憶するために使用されてよい他の非伝送媒体を含むが、これらに限定されない。本明細書に定義されるように、コンピュータ可読媒体は、変調済みデータ信号及び搬送波等の一過性の媒体を含まない。
【０１１３】
より詳細にメモリ４０８を参照すると、メモリ４０８は要求受信モジュール４１０、要求送信モジュール４１２、ページ受信モジュール４１４、解析モジュール４１６、トランスバースモジュール４１８、生成モジュール４２０、及び表示モジュール４２２を含んでよい。
【０１１４】
要求受信モジュール４１０は、モバイルアプリケーションページのアクセス要求を受信するように構成されてよい。要求送信モジュール４１２は、アクセス要求のＵＲＬに基づいてモバイルアプリケーションページをサーバに対して要求するように構成されてよい。ページ受信モジュール４１４は、サーバからモバイルアプリケーションページを受信するように構成されてよく、モバイルアプリケーションページはページレイアウト及びページコンポーネントを含む。解析モジュール４１６は、モバイルアプリケーションページをクライアント端末によって認識可能なオブジェクトに変換するためにモバイルアプリケーションページを解析するように構成されてよい。トラバースモジュール４１８は、クライアント端末によって認識可能で、ページコンポーネントの内の１つのタイプ及びクライアント端末のベースコンポーネントライブラリに基づいてページコンポーネントのそれぞれのインスタンスを生成するオブジェクトの個々のページコンポーネントをトラバースし、ページコンポーネントの内の１つの１つまたは複数の属性に基づいてページコンポーネントの内の１つのインスタンスを構成し、ページコンポーネントの内の１つのインスタンスをレンダリングするように構成されてよい。
【０１１５】
生成モジュール４２０は、オブジェクト及びクライアント端末上のモバイルアプリケーションページに対応するローカルオブジェクトにレンダリングされたインスタンスを返すように構成されてよい。表示モジュール４２２は、ローカルオブジェクトに基づいてモバイルアプリケーションページを表示するように構成されてよい。
【０１１６】
実施態様では、メモリ４０８は、クライアント端末に事前に記憶されるコンポーネントレジストリを取得するように構成されたレジストリ取得モジュール、コンポーネントレジストリに基づいてクライアント端末のベースコンポーネントライブラリを初期化するように構成された初期化コンポーネントライブラリモジュールをさらに含んでよい。これらのインスタンスでは、コンポーネントレジストリはベースコンポーネントのタイプとベースコンポーネントのカテゴリの間の対応する関係性を示してよい。ベースコンポーネントはボタンコンポーネント、画像コンポーネント、ラベリングコンポーネント、及びテキストコンポーネントを含んでよい。
【０１１７】
例えば、モバイルアプリケーションページは、Ｊｓｏｎデータ交換フォーマットまたはＸＭＬマークアップ拡張言語を使用し、表されるページを含んでよい。したがって、装置４００は、ページをクライアント端末によって認識可能なオブジェクトに変換するためにＪｓｏｎデータ交換フォーマットのページを解析する、またはページをクライアント端末によって認識可能なページに変換するためにＸＭＬマークアップ拡張言語のページを解析することによって、モバイルアプリケーションページをクライアント端末によって認識可能なオブジェクトに変換するためにモバイルアプリケーションページを解析してよい。
【０１１８】
実施態様では、メモリ４０８は、ページコンポーネントの内の１つのタイプ及びクライアント端末のベースコンポーネントライブラリに基づいてページコンポーネントのそれぞれのインスタンスを生成するように構成されたコンポーネントインスタンス生成モジュールをさらに含んでよい。これらのインスタンスでは、コンポーネントインスタンス生成モジュールは、ページコンポーネントのタイプに基づいてクライアント端末のベースコンポーネントライブラリからページコンポーネントのカテゴリを取得するように構成されたコンポーネントクラス取得サブモジュール、及びページコンポーネントのカテゴリに基づいてページコンポーネントのインスタンスを生成するように構成されたコンポーネントインスタンス生成サブモジュールを含んでよい。
【０１１９】
例えば、ページコンポーネントの１つまたは複数の属性は、スタイル属性、コンポーネント属性、論理属性、編集属性、及び／または結合属性を含んでよい。コンポーネント属性は、コンポーネントの文字記述を含んでよい。スタイル属性は、幅、高さ、及び／または色を含んだコンポーネントのスタイル記述を含んでよい。論理属性は、条件文及び／またはループ実行文を含んだコンポーネントによってサポートされる制御文を含んでよい。編集属性は、コンポーネントの編集規則を含んでよい。結合属性は、コンポーネントに結合されるイベント、動画、動的データ、スタイル、及び／または埋め込み点データを含んでよい。
【０１２０】
実施態様では、メモリ４０８は、ページコンポーネントの内の１つまたは複数の属性に基づいてページコンポーネントのインスタンスを構成するように構成された構成コンポーネントモジュールをさらに含んでよい。これらのインスタンスでは、構成コンポーネントモジュールは、スタイル属性、コンポーネント属性、論理属性、編集属性、及び／または結合属性を取得するためにモバイルアプリケーションページを解析するように構成されたプロパティ取得サブモジュール、スタイル属性、コンポーネント属性、論理属性、編集属性、及び／または結合属性に基づいてページコンポーネントの内の１つのインスタンスを構成するように構成された構成コンポーネントサブモジュールを含んでよい。例えば、結合属性の動的データの結合方法は、動的結合、静的結合、及び従属結合を含んでよい。
【０１２１】
実施態様は、クライアント端末でモバイルアプリケーションページを処理するための方法に対応してモバイルアプリケーションページを更新するための方法を含む。図５は、クライアント端末でモバイルアプリケーションページを更新するための例示的なプロセス５００のフローチャートである。
【０１２２】
５０２で、コンピューティング装置（例えば、サーバ）はクライアント端末からモバイルアプリケーションページのＵＲＬを受信してよい。
【０１２３】
５０４で、コンピューティング装置はＵＲＬに基づいてモバイルアプリケーションページのページ識別子を取得してよい。実施態様では、コンピューティング装置は、外部ルート及び内部ルートを介してサーバ端末によってＵＲＬに基づいたモバイルアプリケーションページのページ識別子を取得してよい。ページ識別子はデータベース内で個々のレコードの場所を見つけてよい。
【０１２４】
図６は、図５に説明される操作５０４のための例示的なプロセス６００のフローチャートである。コンピューティング装置は、６０２でＵＲＬに基づいてモバイルアプリケーションページの名前、モバイルアプリケーションページのネームスペース、及び／またはモバイルアプリケーションページのユーザーアカウントを取得することによって、ならびに６０４でモバイルアプリケーションページの名前、モバイルアプリケーションページのネームスペース、及び／またはモバイルアプリケーションページのユーザーアカウントに基づいてモバイルアプリケーションページのページ識別子を取得することによって、ＵＲＬに基づいてモバイルアプリケーションページのページ識別子を取得してよい。
【０１２５】
実施態様では、ＵＲＬは、モバイルアプリケーションページの名前、モバイルアプリケーションページのネームスペース、及び／またはモバイルアプリケーションページのユーザーアカウントを含んでよい。ＵＲＬはモバイルアプリケーションページの名前、モバイルアプリケーションページのネームスペース、及び／またはモバイルアプリケーションページのユーザーアカウントを含んでよい。例えば、ＵＲＬは「ｎａｍｅｓｐａｃｅ＝ｓｈｏｐ」、「ｐａｔｈ＝ｉｎｄｅｘ」、「ｕｓｅｒ＝１２３４５」を含む。これらのインスタンスでは、「ネームスペース」値はページが属するネームスペースを示し、「経路」値はページの名前を示し、「ユーザー」値はページが属するユーザーアカウントを示す。上記の状況では、上記の情報に基づいて、サーバ端末は、売主「１２３４５」のホームページの場所を見つけ得る。
【０１２６】
実施態様では、コンピューティング装置は、モバイルアプリケーションページのページ識別子及びサーバ端末で事前に設定されるＡ／Ｂ試験の構成ファイルに基づいてモバイルアプリケーションページに対して評価テンプレートを使用するのか、それとも評価ページを使用するのかを決定することによって、ＵＲＬに基づいてモバイルアプリケーションページのページ識別子を取得してよい。評価テンプレートまたは評価ページを使用することに応えて、コンピューティング装置は、モバイルアプリケーションページのページ識別子として評価テンプレートのテンプレート識別子または評価ページのページ識別子を指定してよい。
【０１２７】
Ａ／Ｂ試験は新しいページ最適化方法である。Ａ／Ｂ試験は、変換速度、加入率、及び他のウェブインジケータを増加するために使用されてよい。Ａ／Ｂ試験は、実験の別々のセットを含む。これまでは、Ａ／Ｂ試験の技術費用及びリソース費用は相対的に高い。しかし現在、一連の専門的な視覚化実験ツールにより、Ａ／Ｂ試験はウェブサイト最適化の一般的な方法になっている。Ａ／Ｂ試験の構成ファイルは、異なるニーズに基づいて異なるページを表示することを示す。例えば、ページが表示されるとき、異なるスタイルの特定のページが要求側のユーザーの性別に基づいて表示されてよい。
【０１２８】
図５を参照し直すと、コンピューティング装置（例えば、サーバ）は、５０６でページ識別子に基づいて、モバイルアプリケーションページのカスタムページフラグメント、テンプレート、及び／またはモバイルアプリケーションページのすべてのページコンポーネントを取得してよい。
【０１２９】
実施態様では、モバイルアプリケーションページのカスタムページフラグメント、テンプレート、及び／またはモバイルアプリケーションページのすべてのページコンポーネントを含んだモバイルアプリケーションページのコンテンツ。１ページは複数のカスタムページフラグメント、テンプレート、及び／または複数のページコンポーネントを含んでよい。モバイルアプリケーションページのカスタムページフラグメント、テンプレート、及び／またはモバイルアプリケーションページのすべてのページコンポーネントは、Ｊｓｏｎデータ交換フォーマットまたはＸＭＬマークアップ拡張言語を使用し、表される。モバイルアプリケーションページのカスタムページフラグメント、テンプレート、及び／またはモバイルアプリケーションページのすべてのページコンポーネントはデータベースに記憶される。
【０１３０】
５０８で、コンピューティング装置は、モバイルアプリケーションページのカスタムページフラグメント、テンプレート、及び／またはモバイルアプリケーションページのすべてのページコンポーネントに基づいてモバイルアプリケーションページを生成してよい。モバイルアプリケーションページは、Ｊｓｏｎデータ交換フォーマットまたはＸＭＬマークアップ拡張言語を使用し、表されるページを含んでよい。
【０１３１】
実施態様では、ページコンポーネントの１つまたは複数の属性は、スタイル属性、コンポーネント属性、論理属性、編集属性、及び／または結合属性を含んでよい。コンポーネント属性はコンポーネントの文字記述を含んでよい。スタイル属性は、幅、高さ、及び／または色を含んだコンポーネントのスタイル記述を含んでよい。論理属性は、条件文及び／またはループ実行文を含んだコンポーネントによってサポートされる制御文を含んでよい。編集属性はコンポーネントの編集規則を含んでよい。結合属性は、コンポーネントに結合されるイベント、動画、動的データ、スタイル、及び／または埋め込み点データを含んでよい。
【０１３２】
５１０で、コンピューティング装置は、モバイルアプリケーションページに動的データ、及びページコンポーネントの結合属性のスタイルを含んでよい。
【０１３３】
５１２で、コンピューティング装置はクライアント端末にモバイルアプリケーションページを返してよい。モバイルアプリケーションページは、ページレイアウト及びページコンポーネントを含んでよい。
【０１３４】
実施態様では、クライアント端末にモバイルアプリケーションページを返す前に、コンピューティング装置はモバイルアプリケーションページを、Ｊｓｏｎデータ交換フォーマットまたはＸＭＬマークアップ拡張言語で表されるページに変換してよい。
【０１３５】
実施態様では、これらの２つのフォーマットの間で、Ｊｓｏｎデータ交換フォーマットを使用するページはクライアント端末上のエンジン解析プロトコルに対してより率直である。したがって、サーバ端末は概してページをレンダリングし、クライアント端末にページを返すためにＪｓｏｎデータ交換フォーマットを採用する。ＸＭＬマークアップ拡張言語を使用するページは、ページを開発する開発者用に生成される。サーバ端末のベースコンポーネントライブラリはクライアント端部のベースコンポーネントライブラリよりも高いことがあるため、図７に示される操作は操作５１２の前に実行されることがある。
【０１３６】
図７は、図５に説明される操作５１２の前にダウングレードし、互換にするための例示的なプロセス７００のフローチャートである。クライアント端末にモバイルアプリケーションページを返す前に、コンピューティング装置は、モバイルアプリケーションページがクライアント端末のベースコンポーネントライブラリのバージョンに基づいてクライアント端末のベースコンポーネントライブラリによってサポートされない高バージョンのベースコンポーネントを含むかどうかを判断してよい。
【０１３７】
モバイルアプリケーションページが高バージョンのベースコンポーネントを含む場合、コンピューティング装置は、７０４でＨＴＭＬ５を使用し、高バージョンのベースコンポーネントを表現してよい。いくつかの実施態様では、ＨＴＭＬ５を使用し、高バージョンでベースコンポーネントを表現することは、ＷｅｂＶｉｅｗを使用し、高バージョンのベースコンポーネントをＨＴＭＬ表現に変換することを含んでよい。
【０１３８】
実施態様では、クライアント端末にモバイルアプリケーションを返す前に、コンピューティング装置は、７０２でクライアント端末のクライアントマシンモデル及びクライアント端末のベースコンポーネントライブラリのバージョンを取得し、クライアント端末のクライアントマシンモデル及びクライアント端末のベースコンポーネントライブラリのバージョンに基づいて、サーバ端末がクライアント端末のベースコンポーネントライブラリのバージョンに互換性のある構成論理を含むかどうかを判断してよい。
【０１３９】
サーバ端末がクライアント端末のベースコンポーネントライブラリのバージョンに互換性のある構成論理を含む場合、コンピューティング装置は、７０６でベースコンポーネントを、クライアント端末によって認識可能なベースコンポーネントに変換するために構成論理に基づいてモバイルアプリケーションページの高バージョンでベースコンポーネントに対して互換性プロセスを実行してよい。
【０１４０】
図８は、モバイルアプリケーションページを構成するための例示的なプロセス８００のフローチャートである。実施態様では、モバイルアプリケーションは、８０６でクライアント端末によって少なくともモバイルアプリケーションページのコンテンツ、モバイルアプリケーションページの名前、モバイルアプリケーションページのネームスペース、及び／またはモバイルアプリケーションページのユーザーアカウントを含んだページ構成命令を受信するように構成されてよい。モバイルアプリケーションページのコンテンツは、モバイルアプリケーションページのカスタムページフラグメント、テンプレート、及び／またはモバイルアプリケーションページのすべてのページコンポーネントを含んでよい。
【０１４１】
モバイルアプリケーションは、８０８でサーバ端末によってモバイルアプリケーションページを記憶することを要求するためにクライアント端末によってサーバ端末にページ構成命令をさらに送信するように構成されてよい。
【０１４２】
コンピューティング装置は、クライアント端末からページ構成命令を受信し、ページ構成命令に基づいてモバイルアプリケーションページのコンテンツ、モバイルアプリケーションページの名前、モバイルアプリケーションページのネームスペース、及び／またはモバイルアプリケーションページのユーザーアカウントを取得し、モバイルアプリケーションページの名前、モバイルアプリケーションページのネームスペース、及び／またはモバイルアプリケーションページのユーザーアカウントに基づいてモバイルアプリケーションページのページ識別子を生成し、モバイルアプリケーションページのページ識別子及びコンテンツ記憶することによって、サーバ端末によってモバイルアプリケーションページを記憶してよい。いくつかの実施態様では、モバイルアプリケーションページのページ識別子及びコンテンツはデータベースに記憶される。
【０１４３】
実施態様では、クライアント端末によってページ構成命令を受信する前に、コンピューティング装置は、８０２でサーバ端末によって事前に設定されるページコンポーネントライブラリ及びテンプレートライブラリを取得し、８０４でページコンポーネントライブラリのすべてのページコンポーネント及びテンプレートライブラリのすべてのテンプレートを表示してよい。
【０１４４】
実施態様では、コンピューティング装置は、ページ識別子に基づいてモバイルアプリケーションページのカスタムページフラグメント、テンプレート、及び／またはモバイルアプリケーションページのすべてのページコンポーネントをさらに取得し、モバイルアプリケーションページのカスタムページフラグメント、テンプレート、及び／またはモバイルアプリケーションページのすべてのページコンポーネントに基づいたモバイルアプリケーションページを生成し、サーバ端末がページレイアウト及びページコンポーネントを含んだモバイルアプリケーションページを生成し、クライアント端末にモバイルアプリケーションページを返し得るように、動的データ及びモバイルアプリケーションページのページコンポーネントの結合属性のスタイルを含んでよい。
【０１４５】
実施態様は、クライアント端末でモバイルアプリケーションページを更新するための方法に対応する装置を含む。図９はモバイルアプリケーションページを更新するための例示的な装置９００の概略図である。コンピューティング装置９００は、モバイルアプリケーションページを更新するためのユーザー装置またはサーバであってよい。１つの例示的な構成では、コンピューティング装置９００は１つまたは複数のプロセッサ９０２、入出力インタフェース９０４、ネットワークインタフェース９０６、及びメモリ９０８を含む。
【０１４６】
メモリ９０８は、ランダムアクセスメモリ（ＲＡＭ）等の揮発性メモリ及び／または読出し専用メモリ（ＲＯＭ）またはフラッシュＲＡＭ等の不揮発性メモリの形をとるコンピュータ可読媒体を含んでよい。メモリ９０８はコンピュータ可読媒体の例である。
【０１４７】
コンピュータ可読媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、または他のデータ等の情報の記憶のための任意の方法または技術で実装される揮発性及び不揮発性の取外し可能な及び取外しできない媒体を含む。コンピュータ記憶媒体の例は、相変化メモリ（ＰＲＡＭ）、スタティックランダムアクセスメモリ（ＳＲＡＭ）、ダイナミックランダムアクセスメモリ（ＤＲＡＭ）、他のタイプのランダムアクセスメモリ（ＲＡＭ）、読出し専用メモリ（ＲＯＭ）、電気的消去可能ＲＯＭ（ＥＥＰＲＯＭ）、フラッシュメモリまたは他のメモリ技術、コンパクトディスク読出し専用メモリ（ＣＤ−ＲＯＭ）、デジタル多用途ディスク（ＤＶＤ）もしくは他の光学記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置、もしくは他の磁気記憶装置、またはコンピューティング装置によるアクセスのための情報を記憶するために使用されてよい他の非伝送媒体を含むが、これに限定されるものではない。本明細書に定義されるように、コンピュータ可読媒体は、変調済みデータ信号及び搬送波等の一過性の媒体を含まない。
【０１４８】
メモリ９０８をより詳細に参照すると、メモリ９０８は要求受信モジュール９１０、第１の取得モジュール９１２、第２の取得モジュール９１４、生成モジュール９１６、構成モジュール９１８、及びページ送信モジュール９２０を含んでよい。
【０１４９】
要求受信モジュール９１０は、クライアント端末からモバイルアプリケーションページのＵＲＬを受信するように構成されてよい。第１の取得モジュール９１２は、ＵＲＬに基づいてモバイルアプリケーションページのページ識別子を取得するように構成されてよい。第２の取得モジュール９１４は、ページ識別子に基づいてモバイルアプリケーションページのカスタムページフラグメント、テンプレート、及び／またはモバイルアプリケーションページのすべてのページコンポーネントを取得するように構成されてよい。生成モジュール９１６は、モバイルアプリケーションページのカスタムページフラグメント、テンプレート、及び／またはモバイルアプリケーションページのすべてのページコンポーネントに基づいてモバイルアプリケーションページを生成するように構成されてよい。構成モジュール９１８は、動的データ及びモバイルアプリケーションページのページコンポーネントの結合属性のスタイルを含むように構成されてよい。ページ送信モジュール９２０は、サーバからモバイルアプリケーションページを受信するように構成されてよい。これらのインスタンスでは、モバイルアプリケーションページはページレイアウト及びページコンポーネントを含んでよい。例えば、ＵＲＬはモバイルアプリケーションページの名前、モバイルアプリケーションページのネームスペース、及び／またはモバイルアプリケーションページのユーザーアカウントを含んでよい。
【０１５０】
実施態様では、第１の取得モジュール９１２は、ＵＲＬに基づいてモバイルアプリケーションページの名前、モバイルアプリケーションページのネームスペース、及び／またはモバイルアプリケーションページのユーザーアカウントを取得するように構成されたビジネスセマンティックス取得サブモジュール、及びモバイルアプリケーションページの名前、モバイルアプリケーションページのネームスペース、及びモバイルアプリケーションページのユーザーアカウントに基づいてモバイルアプリケーションページのページ識別子を取得するように構成されたページ識別子取得サブモジュールを含んでよい。
【０１５１】
実施態様では、メモリ９０８は、モバイルアプリケーションページのページ識別子及びサーバ端末上で事前に設定されるＡ／Ｂ試験の構成ファイルに基づいてモバイルアプリケーションページに対して評価テンプレートを使用するのか、それとも評価ページを使用するのかを判断するように構成されたＡ／Ｂ試験モジュールをさらに含んでよい。評価テンプレートまたは評価ページを使用することに応えて、コンピューティング装置９００はモバイルアプリケーションページのページ識別子として評価テンプレートのテンプレート識別子または評価ページのページ識別子を指定してよい。
【０１５２】
例えば、モバイルアプリケーションページのカスタムページフラグメント、テンプレート、及び／またはモバイルアプリケーションページのすべてのページコンポーネントは、Ｊｓｏｎデータ交換フォーマットまたはＸＭＬマークアップ拡張言語を使用し、表される。
【０１５３】
例えば、モバイルアプリケーションページはＪｓｏｎデータ交換フォーマットまたはＸＭＬマークアップ拡張言語を使用するページを含んでよい。ページコンポーネントの１つまたは複数の属性は、スタイル属性、コンポーネント属性、論理属性、編集属性、及び／または結合属性を含んでよい。コンポーネント属性はコンポーネントの文字記述を含んでよい。スタイル属性は、幅、高さ、及び／または色を含んだコンポーネントのスタイル記述を含んでよい。論理属性は、条件文及び／またはループ実行文を含んだコンポーネントによってサポートされる制御文を含んでよい。編集属性はコンポーネントの編集規則を含んでよい。結合属性は、コンポーネントに結合されるイベント、動画、動的データ、スタイル、及び／または埋込み点データを含んでよい。
【０１５４】
例えば、モバイルアプリケーションページのカスタムページフラグメント、テンプレート、及び／またはモバイルアプリケーションページのすべてのページコンポーネントはデータベースに記憶される。
【０１５５】
実施態様では、メモリ９０８は、モバイルアプリケーションページをＪｓｏｎデータ交換フォーマットまたはＸＭＬマークアップ拡張言語のページに変換するように構成されたフォーマット変換モジュールをさらに含んでよい。
【０１５６】
実施態様では、メモリ９０８は、クライアント端末のベースコンポーネントライブラリのバージョンに基づいて、モバイルアプリケーションページがクライアント端末のベースコンポーネントライブラリによってサポートされない高バージョンのベースコンポーネントを含むかどうかを判断するように構成されたダウングレードモジュールをさらに含んでよい。
【０１５７】
モバイルアプリケーションページが高バージョンのベースコンポーネントを含む場合、コンピューティング装置９００はＨＴＭＬ５を使用し、高バージョンでベースコンポーネントを表現してよい。例えば、ＨＴＭＬ５を使用し、高バージョンでベースコンポーネントを表現することは、ＷｅｂＶｉｅｗを使用し、高バージョンのベースコンポーネントをＨＴＭＬ表現に変換することを含んでよい。
【０１５８】
実施態様では、メモリ９０８は、クライアント端末のクライアントマシンモデル及びクライアント端末のベースコンポーネントライブラリのバージョンを取得するように構成された第３の取得モジュールをさらに含んでよい。
【０１５９】
実施態様では、メモリ９０８は、クライアント端末のクライアントマシンモデル及びクライアント端末のベースコンポーネントライブラリのバージョンに基づいて、サーバ端末がクライアント端末のベースコンポーネントライブラリのバージョンに互換性のある構成論理を含むかどうかを判断するように構成されたパッチングモジュールをさらに含んでよい。
【０１６０】
サーバ端末がクライアント端末のベースコンポーネントライブラリのバージョンに互換性のある構成論理を含む場合、コンピューティング装置９００は、ベースコンポーネントをクライアント端末によって認識可能なベースコンポーネントに変換するために構成論理に基づいてモバイルアプリケーションページの高バージョンのベースコンポーネントに対して互換性プロセスを実行してよい。
【０１６１】
実施態様では、メモリ９０８は、モバイルアプリケーションページを構成するように構成された構成ページモジュールをさらに含んでよい。これらのインスタンスでは、構成ページモジュールは、クライアント端末によって、少なくともモバイルアプリケーションページのコンテンツ、モバイルアプリケーションページの名前、モバイルアプリケーションページのネームスペース、及び／またはモバイルアプリケーションページのユーザーアカウントを含んだページ構成命令を受信するように構成された命令受信モジュールを含んでよい。モバイルアプリケーションページのコンテンツは、モバイルアプリケーションページのカスタムページフラグメント、テンプレート、及び／またはモバイルアプリケーションページのすべてのページコンポーネントを含んでよい。
【０１６２】
実施態様では、メモリ９０８は、サーバ端末によってモバイルアプリケーションページを記憶することを要求するためにサーバ端末にページ構成命令を送信するように構成された要求記憶モジュールをさらに含んでよい。
【０１６３】
実施態様では、メモリ９０８は、サーバ端末によって事前設定されるページコンポーネントライブラリ及びテンプレートライブラリを取得するように構成されたライブラリ取得モジュールをさらに含んでよい。
【０１６４】
実施態様では、メモリ９０８は、ページコンポーネントライブラリのすべてのページコンポーネント及びテンプレートライブラリのすべてのテンプレートを表示するように構成されたコンポーネントテンプレート取得モジュールをさらに含んでよい。
【０１６５】
実施態様では、メモリ９０８は、サーバ端末にモバイルアプリケーションページを記憶するように構成されたページ記憶モジュールをさらに含んでよい。これらのインスタンスでは、ページ記憶モジュールは、クライアント端末からページ構成命令を受信するように構成された受信サブモジュール、ページ構成命令に基づいてモバイルアプリケーションページのコンテンツ、モバイルアプリケーションページの名前、モバイルアプリケーションページのネームスペース、及び／またはモバイルアプリケーションページのユーザーアカウントを取得するように構成された取得サブモジュール、モバイルアプリケーションページの名前、モバイルアプリケーションページのネームスペース、及び／またはモバイルアプリケーションページのユーザーアカウントに基づいてモバイルアプリケーションページのページ識別子を生成するように構成された生成サブモジュール、ならびにモバイルアプリケーションページのページ識別子及びコンテンツを記憶するように構成された記憶サブモジュールを含んでよい。モバイルアプリケーションページのページ識別子及びコンテンツはデータベースに記憶される。
【０１６６】
実施態様は、モバイルアプリケーションページを処理するためのシステムを含む。図１０は、モバイルアプリケーションページを処理するための例示的なシステム１０００の概略図である。システムは、装置１００２及び装置１００４を含んでよい。クライアント端末上でモバイルアプリケーションページを更新するための装置１００４は、サーバまたは他の装置に配備されてよい。モバイルアプリケーションページを処理するための装置１００２は、モバイル機器に配備されてよい。例えば、スマートフォンはＵＲＬをアップロードし、サーバからページを要求してよい。
【０１６７】
システム１０００は、ページレイアウト及びページコンポーネントによって示されるモバイルアプリケーションページを、クライアント端末によって認識可能なオブジェクトに変換してよい。システム１０００は、次いでクライアント端末によって認識可能なオブジェクトの個々のページコンポーネントをトラバースし、ページコンポーネントの内の１つのタイプ及びクライアント端末のベースコンポーネントライブラリに基づいてページコンポーネントのそれぞれのインスタンスを生成してよい。
【０１６８】
システム１０００は、ページコンポーネントの１つまたは複数の属性に基づいたページコンポーネントのインスタンスを構成し、ページコンポーネントのインスタンスをレンダリングし、オブジェクトにレンダリングされたインスタンスを返し、クライアント端末上のモバイルアプリケーションページに対応するローカルオブジェクトを生成してよい。このようにして、クライアント端末はページレイアウト及びページコンポーネントを含んだモバイルアプリケーションページを表示してよい。
【０１６９】
モバイルアプリケーションページを更新するための装置１００４は、サーバ上に配備されてよい。システム１０００は、ページ識別子に基づいてモバイルアプリケーションページのカスタムページフラグメント、テンプレート、及び／またはモバイルアプリケーションページのすべてのページコンポーネントを取得してよい。システム１０００は、モバイルアプリケーションページのカスタムページフラグメント、テンプレート、及び／またはモバイルアプリケーションページのすべてのページコンポーネントに基づいてモバイルアプリケーションページを生成し、サーバ端末がページレイアウト及びページコンポーネントを含んだモバイルアプリケーションページを生成し、クライアント端末にモバイルアプリケーションページを返し得るように、モバイルアプリケーションページに動的データ及びページコンポーネントの結合属性のスタイルを含んでよい。
【０１７０】
実施形態は、モバイルアプリケーションページを処理するため、及び／またはクライアント端末でモバイルアプリケーションページを更新するための方法、装置、及びシステムに関する。言い換えると、実施態様は、モバイルアプリケーションページがページコンポーネント及びページレイアウトを含み、次いでサーバ端末が新しいページをリリースしやすくするために事前に設定されたページプロトコル構成の多様なページコンポーネント及びページプロトコルを使用する。
【０１７１】
これらのインスタンスでは、モバイルクライアント端末は、以下の効果の１つまたは複数を達成するために解析エンジンのプロトコルを解析し、事前に設定されたページプロトコル構成を使用し、ページをレンダリングし、表示するプロトコルを解析する。
【０１７２】
１）事前に設定されたページプロトコルは、シンタックス及びセマンティックスに関してＨＴＭＬ／ＣＳＳ開発を使用し、開発された従来のＷＥＢページに類似している。開発者はクライアント端末の専門的な知識を学習する必要はなく、モバイルアプリケーションを開発できるだろう。アプリケーションを開発するための費用は、ウェブページを含んだアプリケーションを開発するための費用に類似している。これが開発費を削減する。
【０１７３】
２）サーバ端末でアプリケーションの新しいページをリリースすると、クライアント端末上のアプリケーションのコンテンツ全体が変更される。これは、ユーザーがダウンロードするためのアプリケーションパッケージの新しいアップグレードを発表する必要を回避し、したがってアップグレードの速度を大幅に加速する。ユーザーは、ページがサーバ端末でリリースされた後ページの最も新しいバージョンを経験し得る。
【０１７４】
３）クライアント端末はページをローカルコードページに変換し、ページがクライアントプロトコル解析エンジンによってローカルコードページに変換された後サービスを受ける。したがって、ユーザー経験は変更されておらず、ネイティブアプリケーションの経験及び性能が維持される。
【０１７５】
４）ネイティブアプリケーションと比較すると、ページ組みのためのページコンポーネント及びテンプレートはクライアントにとってトランスペアレントである。ページコンポーネント及びテンプレートの性質はページプロトコルである。したがって、クライアントはページを解析するためにはページプロトコルに対処しさえすればよい。ページコンポーネント及びテンプレートは、例えばページコンポーネント及びテンプレートを動的に追加するために、ページのページプロトコルに基づいて無限に拡張できる。
【０１７６】
５）同じページは、クロスプラットフォームの効果を達成するために３つの異なるプラットフォーム（例えば、ｉＯＳ、Ａｎｄｒｏｉｄ、及びＨＳ）によって表示されてよい。これが、アプリケーションコードのための複数の異なるオペレーティングシステムの開発及び保守を回避し、このようにしてプログラム開発及び保守の作業負荷を効果的に削減する。
【０１７７】
要するに、実施態様は、モバイルアプリケーションページを低コストで開発し、ネイティブアプリケーションのユーザー経験に類似する優れたユーザー経験を有することを可能にする。
【０１７８】
実施形態は単に本開示を説明するためだけであり、本開示の範囲を制限することを目的としていない。当業者にとって、特定の変更形態及び改善策が行われ得ること、ならびに本開示の原理を逸脱することなく、本開示の保護の元で検討される必要があることが理解されるべきである。
【図１】
0006629848.tif 000009
【図２】
0006629848.tif 000010
【図３】
0006629848.tif 000011
【図４】
0006629848.tif 000012
【図５】
0006629848.tif 000013
【図６】
0006629848.tif 000014
【図７】
0006629848.tif 000015
【図８】
0006629848.tif 000016
【図９】
0006629848.tif 000017
【図１０】
0006629848.tif 000018