JP2021121972A - ミニプログラム処理方法、サーバー、設備、記憶媒体、及びプログラム - Google Patents

ミニプログラム処理方法、サーバー、設備、記憶媒体、及びプログラム Download PDF

Info

Publication number
JP2021121972A
JP2021121972A JP2021086931A JP2021086931A JP2021121972A JP 2021121972 A JP2021121972 A JP 2021121972A JP 2021086931 A JP2021086931 A JP 2021086931A JP 2021086931 A JP2021086931 A JP 2021086931A JP 2021121972 A JP2021121972 A JP 2021121972A
Authority
JP
Japan
Prior art keywords
program
mini
download
opening command
page opening
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2021086931A
Other languages
English (en)
Other versions
JP7232866B2 (ja
Inventor
チェン トゥー
Du Chen
チェン トゥー
チェン ユイチェン
Yuzhen Chen
チェン ユイチェン
ツァオ チェンシン
Zhenxing Cao
ツァオ チェンシン
ウェイ チア
Wei Jia
ウェイ チア
ポン ウェイ
Wei Peng
ポン ウェイ
ヤオ ホン
Heng Yao
ヤオ ホン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Publication of JP2021121972A publication Critical patent/JP2021121972A/ja
Application granted granted Critical
Publication of JP7232866B2 publication Critical patent/JP7232866B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44568Immediately runnable code
    • G06F9/44584Portable applications, i.e. making applications self-contained, e.g. U3 standard
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • Stored Programmes (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

【課題】ユーザーの待ち時間を短縮し、ユーザー体験を向上させる、クラウドコンピューティング分野及びミニプログラム処理分野におけるミニプログラム処理方法、サーバー、設備、記憶媒体及びプログラムを提供する。【解決手段】方法は、ホストアプリケーションプログラムの送信するミニプログラムの事前ダウンロード要求を受信することを含む。ミニプログラムの事前ダウンロード要求は、ホストアプリケーションプログラムがユーザー閲覧データに基づいて生成し、少なくともミニプログラムのページ開き指令を含む。方法はさらに、ミニプログラムのページ開き指令を解析して、ミニプログラムのページ開き指令の実行に要するダウンロード情報を得ることと、ホストアプリケーションプログラムがミニプログラムを事前にダウンロードするように、ダウンロード情報をホストアプリケーションプログラムに送信することと、を含む。【選択図】図1

Description

本開示はデータ処理分野に関し、特に、クラウドコンピューティング分野、ミニプログラム処理分野に関する。
ミニプログラムの発展に伴い、既存の多くのH5(HTML5)サイトがミニプログラムに移行されるようになる。従来のH5サイトと比べて、ミニプログラムは実行する前にミニプログラムパッケージをダウンロードする必要があるため、ミニプログラムの利用体験を向上させるために、事前にミニプログラムのメインパッケージをダウンロードすることで、ミニプログラムを開く時にパッケージのダウンロードで待ち時間が長くなるという問題を解決する。
しかし、実際のシーンでは、ミニプログラムの多くではメインパッケージの前にサブパッケージ等が存在し、例えば、ユーザーが開く画面がサブパッケージに位置する場合に、従来のようにメインパッケージをダウンロードするという事前ダウンロード方法では、サブパッケージなどが事前にダウンロードされないため待ち時間が長くなる問題が依然としてあり、ユーザー体験が悪くなる。
本開示は、ミニプログラム処理方法、装置、設備及び記憶媒体を提供する。
本開示の第1態様では、
ホストアプリケーションプログラムの送信するミニプログラムの事前ダウンロード要求であって、前記ホストアプリケーションプログラムがユーザー閲覧データに基づいて生成し、少なくともミニプログラムのページ開き指令を含む前記ミニプログラムの事前ダウンロード要求を受信することと、
前記ミニプログラムのページ開き指令を解析して、前記ミニプログラムのページ開き指令の実行に要するダウンロード情報を得ることと、
前記ホストアプリケーションプログラムがミニプログラムを事前にダウンロードするように、前記ダウンロード情報を前記ホストアプリケーションプログラムに送信することとを含むミニプログラム処理方法を提供する。
本開示の第2態様では、
ホストアプリケーションプログラムに基づいてユーザー閲覧データを取得することと、
前記ユーザー閲覧データに基づいてミニプログラムのページ開き指令を収集することと、
前記ミニプログラムのページ開き指令を含むミニプログラムの事前ダウンロード要求を生成し、前記ミニプログラムの事前ダウンロード要求を送信することと、
前記ミニプログラムのページ開き指令の実行に要するダウンロード情報を受信し、ミニプログラム事前ダウンロード動作を行うこととを含む、ミニプログラム処理方法を提供する。
本開示の第3態様では、
ホストアプリケーションプログラムの送信するミニプログラムの事前ダウンロード要求であって、前記ホストアプリケーションプログラムがユーザー閲覧データに基づいて生成し、少なくともミニプログラムのページ開き指令を含む前記ミニプログラムの事前ダウンロード要求を受信するための要求受信ユニットと、
前記ミニプログラムのページ開き指令を解析して、前記ミニプログラムのページ開き指令の実行に要するダウンロード情報を得るための解析ユニットと、
前記ホストアプリケーションプログラムがミニプログラムを事前にダウンロードするように、前記ダウンロード情報を前記ホストアプリケーションプログラムに送信するための送信ユニットとを備える、サーバーを提供する。
本開示の第4態様では、
ホストアプリケーションプログラムに基づいてユーザー閲覧データを取得するための閲覧データ取得ユニットと、
前記ユーザー閲覧データに基づいてミニプログラムのページ開き指令を収集するための収集ユニットと、
前記ミニプログラムのページ開き指令を含むミニプログラムの事前ダウンロード要求を生成するための要求生成ユニットと、
前記ミニプログラムの事前ダウンロード要求を送信するための要求送信ユニットと、
前記ミニプログラムのページ開き指令の実行に要するダウンロード情報を受信し、ミニプログラム事前ダウンロード動作を行うためのダウンロード情報受信ユニットとを備える、電子設備を提供する。
本開示の第5態様では、
少なくとも1つのプロセッサと、
前記少なくとも1つのプロセッサと通信接続されるメモリとを備え、
前記メモリには、前記少なくとも1つのプロセッサによって実行可能なコマンドが記憶されており、前記コマンドは、前記少なくとも1つのプロセッサによって実行されると、前記少なくとも1つのプロセッサに前記サーバー側に対応する方法を実行させる、サーバーを提供する。
本開示の第6態様では、
少なくとも1つのプロセッサと、
前記少なくとも1つのプロセッサと通信接続されるメモリとを備え、
前記メモリには、前記少なくとも1つのプロセッサによって実行可能なコマンドが記憶されており、前記コマンドは、前記少なくとも1つのプロセッサによって実行されると、前記少なくとも1つのプロセッサに前記電子設備側に対応する方法を実行させる、電子設備を提供する。
本開示の第7態様では、コンピュータコマンドが記憶されている非一時的なコンピュータ可読記憶媒体であって、前記コンピュータコマンドはコンピュータに前記サーバー側に対応する方法を実行させる、非一時的なコンピュータ可読記憶媒体を提供する。
本開示の第8態様では、コンピュータコマンドが記憶されている非一時的なコンピュータ可読記憶媒体であって、前記コンピュータコマンドはコンピュータに前記電子設備側に対応する方法を実行させる、非一時的なコンピュータ可読記憶媒体を提供する。
本開示の発明はサブパッケージなどが事前にダウンロードされないため待ち時間が長くなるという従来の問題を解決し、ユーザー体験が向上する。
なお、上述した内容が本開示の実施形態の重要な特徴を示すためではなく、本開示の範囲の限定にもならない。本開示の他の特徴は下記の説明から理解しやすくなる。
次に記載の各図面は本開示の理解を促すためのもので、本開示の限定にならない。
本開示の第1実施形態によるミニプログラム処理方法の模式図である。 本開示の第2実施形態によるミニプログラム処理方法の模式図である。 本開示の第3実施形態によるミニプログラム処理方法の模式図である。 本開示の第4実施形態によるミニプログラム処理方法の模式図である。 本開示の第5実施形態によるミニプログラム処理方法の模式図である。 本開示の第6実施形態によるミニプログラム処理方法の模式図である。 本開示の実施形態によるサーバーの構造模式図その1である。 本開示の実施形態によるサーバーの構造模式図その2である。 本開示の実施形態による電子設備の構造模式図である。 本開示の実施形態を実現できる設備の模式図である。
次に、図面を参照して本開示の例示的な実施形態を説明し、中には理解を促すために本開示の実施形態の様々な詳細が含まれるが、それが例示的な内容に過ぎない。したがって、当業者が理解したように、本開示の範囲や趣旨から逸脱せずここに記載の実施形態に対し様々な変更や修正を行うことができる。また、次の説明では簡素化の観点上、周知の機能及び構造の説明は省略する。
実際のシーンでは、開発者がミニプログラムにサブパッケージ、独立したサブパッケージ、動的リンクライブラリなどの多くの動的な機能を付与することができる。ここで、ミニプログラムのメインダウンロードパッケージ(メインパッケージ)、サブパッケージ、独立したサブパッケージ、動的リンクライブラリの間の相互関係は次のとおりである。メインパッケージにはサブパッケージの情報が含まれ、サブパッケージがメインパッケージにおけるスクリプトを呼び出し、メインパッケージに依存して実行され、独立したサブパッケージはメインパッケージ又は他のサブパッケージの実行に依存せず独立的に実行され、つまり、独立したサブパッケージに対応する画面からミニプログラムに入る場合は、メインパッケージをダウンロードする必要はないが、サブパッケージに対応する画面からミニプログラムに入る場合は、メインパッケージ及び当該サブパッケージの両方をダウンロードする必要がある。動的リンクライブラリとは、ミニプログラムに追加して直接的に利用できる機能コンポーネントに対応するコンポーネントライブラリであり、メインパッケージに依存して実行される。
ミニプログラムに前記動的な機能が導入されると、ミニプログラムが事前にメインパッケージをダウンロードする従来の方法は前記シーンには効果的に適用されない。動的な機能が加わると、ユーザーが開く画面はメインパッケージ以外にも他のパッケージでサポートする必要がある場合があり、従来のように事前にダウンロードする方法ではメインパッケージ以外の他のパッケージはダウンロードされないため、前記動的な機能の導入がミニプログラムの性能と利用体験を損なう。また、動的な機能が導入されるとミニプログラムの利用体験が悪くなるため、動的な機能のインタフェースを開発する上で難点があり、動的な構築機能の普及に支障をきたし、ミニプログラムの開発及び反復の効率を損なう。
例えば、ユーザーが開く画面がサブパッケージに対応する場合に、事前にダウンロードするのがミニプログラムのメインパッケージであるため、ユーザーがミニプログラムを開いた後、再び要求を送信してサブパッケージをダウンロードする必要があり、ダウンロードに待ち時間が伴うため、ユーザー体験に影響がある。
あるいは、ユーザーが開く画面が独立したサブパッケージに対応する場合に、事前にダウンロードするのがメインパッケージであるため、そのまま使用できず、改めて独立したサブパッケージをダウンロードする必要があり、ダウンロードに待ち時間が伴うため、ユーザー体験に影響がある。また、独立したサブパッケージが独立的に動作するため、事前にダウンロードしたメインパッケージは使用できないだけでなく、メインパッケージリソースの要求及びダウンロードに無駄を生じる。
あるいは、ユーザーが開く画面が、動的リンクライブラリに対応する機能コンポーネントのページに対応する場合に、事前にダウンロードするのがメインパッケージであり、そのまま使用できないため、依然として待ち時間の問題がある。また、現状では動的リンクライブラリが非同期更新であるため、ユーザーが使用するのが前回更新した旧バージョンであるため、ページの動的リンクライブラリの収束効果が優れず、すぐにはバージョンに更新できないため、利用体験を損なう。
本開示の発明は上記実情に鑑みて、ミニプログラムパッケージに関連するコンポーネントの事前ダウンロード方法を提供し、依存性の分析でユーザーが開く画面に対応するミニプログラムパッケージに関連する動的なコンポーネント(例えば、サブパッケージ、独立したサブパッケージ、動的リンクライブラリなど)を同時にダウンロードすることにより、動的なコンポーネントの導入で性能を損なうという従来の問題を解決し、動的なコンポーネントの適用範囲を広げるとともに、動的なコンポーネントの利用体験を向上させる。
具体的には、図1に示すとおり、前記方法は、ステップS101〜S103を含む。
ステップS101で、サーバーが、ホストアプリケーションプログラムの送信するミニプログラムの事前ダウンロード要求を受信し、ここで、前記ミニプログラムの事前ダウンロード要求は前記ホストアプリケーションプログラムがユーザー閲覧データに基づいて生成し、少なくともミニプログラムのページ開き指令を含む。
ステップS102で、サーバーが前記ミニプログラムのページ開き指令を解析して、前記ミニプログラムのページ開き指令の実行に要するダウンロード情報を得る。
ステップS103で、サーバーは前記ホストアプリケーションプログラムがミニプログラムを事前にダウンロードするように、前記ダウンロード情報を前記ホストアプリケーションプログラムに送信する。
ここで、前記ホストアプリケーションプログラムはミニプログラムのページ開き指令に対応するミニプログラムが実行するクライアントである。前記サーバーはミニプログラムに対応するサーバーである。
このようにして、本開示の発明でサーバーがミニプログラムのページ開き指令に基づいて、前記ミニプログラムのページ開き指令の実行に要する全てのダウンロード情報を得、ホストアプリケーションプログラムがミニプログラムを事前にダウンロードするように、前記ミニプログラムのページ開き指令の実行に要する全てのダウンロード情報をホストアプリケーションプログラムに送信するため、サブパッケージなどが事前にダウンロードされないため待ち時間が長くなるという従来の問題を解決し、ユーザー体験が向上する。
一具体例として、図2に示すとおり、前記ホストアプリケーションプログラムがインストールされた電子設備はホストアプリケーションプログラムに基づいてユーザー閲覧データ、例えば、ユーザーのクリックデータなどを取得し、次に前記電子設備が前記ユーザー閲覧データに基づいてミニプログラムのページ開き指令を収集し、前記ミニプログラムのページ開き指令を含むミニプログラムの事前ダウンロード要求を生成し、前記ミニプログラムの事前ダウンロード要求をミニプログラムに対応するサーバーに送信する。これに対応して、前記サーバーが、前記ホストアプリケーションプログラムの送信するミニプログラムの事前ダウンロード要求を受信した後、前記ミニプログラムのページ開き指令を解析して、前記ミニプログラムのページ開き指令の実行に要するダウンロード情報を得、サーバーが前記ダウンロード情報を前記ホストアプリケーションプログラムに送信し、前記電子設備が前記ミニプログラムのページ開き指令の実行に要するダウンロード情報を受信し、ミニプログラム事前ダウンロード動作を行い、これによりユーザーが前記ミニプログラムのページ開き指令に対応する機能画面をクリックした後、ダウンロードを待つことなく当該機能画面に移行することができる。このようにして、サブパッケージなどが事前にダウンロードされないため待ち時間が長くなるという従来の問題を解決し、ユーザー体験が向上する。
本開示の発明の一具体例として、図3に示すとおり、ステップS102で前記ミニプログラムのページ開き指令を解析した後、前記ミニプログラムのページ開き指令の実行に要するダウンロード情報を得る前記ステップは、ステップS102−1〜S102−3を含む。
ステップS102−1で、前記ミニプログラムのページ開き指令に対応するミニプログラムの説明情報を取得する。
ステップS102−2で、問い合わせにより前記ミニプログラムのページ開き指令に対応するパス情報を得る。
ステップS102−3で、前記説明情報及び前記パス情報に基づいて、前記ミニプログラムのページ開き指令の実行に要するダウンロード情報を得る。
ここで、前記説明情報は前記ミニプログラムのメインパッケージ、サブパッケージ、独立したサブパッケージ、動的リンクライブラリの機能コンポーネントなどの基本情報、及び相関関係情報を含む。前記パス情報はミニプログラムのページ開き指令に対応する機能画面に移行する具体的なパスを示し、例えば、当該パス情報に基づいて、ミニプログラムのページ開き指令に対応するサブパッケージ、独立したサブパッケージ又は機能コンポーネントなどを得ることができ、そして説明情報におけるパッケージ、独立したサブパッケージ、メインパッケージなどの間の相関関係と結び付けて、前記ミニプログラムのページ開き指令に対応する機能画面に移行するために必要な全てのダウンロード情報を得、後に効率的にミニプログラムの事前ダウンロードを行うための条件が整備される。
このようにして、ミニプログラムの説明情報、及びミニプログラムのページ開き指令に対応するパス情報を利用して前記ミニプログラムのページ開き指令の実行に要する全てのダウンロード情報を正確に取得することができ、後の効率的にミニプログラムの事前ダウンロードを行うための条件が整備されるとともに、無効なダウンロードでリソースが無駄になるという問題を解決するための条件、そしてユーザー体験を向上させるための条件が整備される。
本開示の発明の一具体例として、サーバーは前記ミニプログラムのページ開き指令を解析した後、次の方法でダウンロード情報を得てもよい。具体的には、前記ミニプログラムのページ開き指令を解析して、前記ミニプログラムのページ開き指令に対応するターゲットダウンロードパッケージを決定するステップであって、前記ターゲットダウンロードパッケージは前記ミニプログラムのページ開き指令に対応する機能画面に移行するためのダウンロードパッケージであるステップと、前記ミニプログラムのページ開き指令に対応する機能画面がミニプログラムの他のダウンロードパッケージに依存するか否かに基づいて、前記ミニプログラムのページ開き指令の実行に要するトータルダウンロードパッケージリストを決定するステップとを含む。実際のシーンでは、前記ターゲットダウンロードパッケージとは独立的に実行できる独立したサブパッケージであってもよいし、メインパッケージに依存して実行されるサブパッケージであってもよいし、メインパッケージであってもよく、当該ターゲットダウンロードパッケージ以外にも他のパッケージをダウンロードする必要があるか否かを正確に決定するために、前記ミニプログラムのページ開き指令に対応する機能画面への移行がミニプログラムの他のダウンロードパッケージに依存するか否かを判断する必要があり、つまり、前記ターゲットダウンロードパッケージの実行が他のパッケージに依存するか否かを判断する必要があり、このようにして正確なトータルダウンロードリストを得れば、効率的な事前ダウンロードを実現し、無効なダウンロードでリソースが無駄になる問題を避けるとともに、ユーザー体験を向上させる。
別の具体例として、図4に示すとおり、前記ミニプログラムのページ開き指令を解析して、前記ミニプログラムのページ開き指令に対応するミニプログラムの説明情報を取得し、問い合わせにより前記ミニプログラムのページ開き指令に対応するパス情報を得た後、次のステップS102−3−1、S102−3−2を実行する。
ステップS102−3−1で、前記パス情報に基づいて前記ミニプログラムのページ開き指令に対応するターゲットダウンロードパッケージを決定し、ここで、前記ターゲットダウンロードパッケージは前記ミニプログラムのページ開き指令に対応する機能画面に移行するためのダウンロードパッケージである。
ステップS102−3−2で、前記説明情報に基づいて、前記ミニプログラムのページ開き指令に対応する機能画面への移行がミニプログラムの他のダウンロードパッケージに依存するか否かを決定し、つまり、前記説明情報に基づいて、前記ターゲットダウンロードパッケージの実行が他のパッケージに依存するか否かを決定し、トータルダウンロードリストを得る。
このようにして、効率的な事前ダウンロードを実現し、無効なダウンロードでリソースが無駄になる問題を避けるとともに、ユーザー体験を向上させる。
本開示の発明の一具体例として、前記トータルダウンロードパッケージリストはターゲットダウンロードパッケージに対応するダウンロード情報を含み、又は、前記トータルダウンロードパッケージリストは前記ターゲットダウンロードパッケージに対応するダウンロード情報、及びミニプログラムのメインダウンロードパッケージに対応するダウンロード情報を含む。つまり、前記ミニプログラムのページ開き指令に対応する機能画面がミニプログラムの他のダウンロードパッケージに依存することが決定した後、依存関係を備える全てのダウンロードパッケージのダウンロード情報に基づいてトータルダウンロードパッケージリストを生成し、これによりホストアプリケーションプログラムに対応する電子設備が事前にトータルダウンロードパッケージリストにおける全てのダウンロードパッケージをダウンロードすることで、ユーザーが速やかにミニプログラムのページ開き指令に対応する機能画面に移行することが保証され、ユーザー体験が向上する。そうではなく、前記ミニプログラムのページ開き指令に対応する機能画面への移行がミニプログラムの他のダウンロードパッケージに依存しないことが決定した場合に、直接的にターゲットダウンロードパッケージを前記トータルダウンロードパッケージリストにおけるダウンロード内容とし、この場合に、ホストアプリケーションプログラムに対応する電子設備は事前に当該ターゲットダウンロードパッケージをダウンロードするだけで速やかにミニプログラムのページ開き指令に対応する機能画面に移行することができ、このようにして速やかにミニプログラムのページ開き指令に対応する機能画面に移行することが実現するとともに、メインパッケージをダウンロードする従来の方法と比べて、無効なダウンロードでリソースが無駄になる問題が避けられる。例えば、本開示の発明で当該ターゲットダウンロードパッケージが独立したサブパッケージである場合に、メインパッケージの代わりに、当該ターゲットダウンロードパッケージをダウンロードするだけでよい。
本開示の発明の一具体例として、本開示の発明では、ミニプログラムにおける機能コンポーネントが最新のバージョンであることを保証するために、例えば、動的リンクライブラリにおける機能コンポーネントのバージョン更新に従ってすぐに更新されることを保証するために、前記ホストアプリケーションプログラムにおけるミニプログラムの機能コンポーネントのインストールバージョン情報を取得するステップと、前記インストールバージョン情報に基づいて前記ミニプログラムにおける機能コンポーネントの更新処理を行うか否かを決定するステップとをさらに含む。つまり、ミニプログラムがインストールされたホストアプリケーションプログラムである場合に、ホストアプリケーションプログラムに対応する電子設備によってミニプログラムの各機能コンポーネントのインストールバージョン情報を取得する必要がある。例えば、定時的にインストールバージョン情報を取得した後、サーバーが取得したミニプログラムの各機能コンポーネントのインストールバージョン情報とそれに記憶していたミニプログラムの各機能コンポーネントのバージョン情報を比較し、ホストアプリケーションプログラムにおけるミニプログラムの機能コンポーネントが最新のバージョンではないことが決定すると、ミニプログラムの機能コンポーネントを更新し、このようにして最新のバージョンの機能コンポーネントがすぐにユーザーに届くことが保証され、ユーザー体験を損なうことが避けられる。
このようにして、本開示の発明でサーバーがミニプログラムのページ開き指令に基づいて、前記ミニプログラムのページ開き指令の実行に要する全てのダウンロード情報を得、ホストアプリケーションプログラムがミニプログラムを事前にダウンロードするように、前記ミニプログラムのページ開き指令の実行に要する全てのダウンロード情報をホストアプリケーションプログラムに送信するため、サブパッケージなどが事前にダウンロードされないため待ち時間が長くなるという従来の問題を解決し、ユーザー体験が向上する。また、動的なコンポーネントの使用でミニプログラムの機能体験が悪くなる問題を解決したため、動的な構築機能の普及のための条件が整備され、そしてミニプログラムの開発及び反復の效率を高めるための条件が整備される。
さらに、本開示の発明は前記ミニプログラムのページ開き指令の実行に要する全てのダウンロード情報を正確に決定できるため、メインパッケージを事前にダウンロードすることでメインパッケージリソースの要求及びダウンロードに無駄を生じるという従来の問題を解決し、ダウンロードリソース及びユーザー電子設備の実行リソースの節約のための条件が整備される。
さらに、本開示の発明はミニプログラム処理方法を提供し、図5に示すとおり、前記方法はステップS501〜S504を含む。
ステップS501で、電子設備がホストアプリケーションプログラムに基づいてユーザー閲覧データを取得する。
ステップS502で、電子設備が前記ユーザー閲覧データに基づいてミニプログラムのページ開き指令を収集する。
ステップS503で、電子設備が前記ミニプログラムのページ開き指令を含むミニプログラムの事前ダウンロード要求を生成し、前記ミニプログラムの事前ダウンロード要求を送信する。
ステップS504で、電子設備が前記ミニプログラムのページ開き指令の実行に要するダウンロード情報を受信し、ミニプログラム事前ダウンロード動作を行う。
このようにして、本開示の発明の電子設備は前記ミニプログラムのページ開き指令の実行に要する全てのダウンロード情報を取得し、当該ダウンロード情報に基づいてミニプログラムを事前にダウンロードすることにより、サブパッケージなどが事前にダウンロードされないため待ち時間が長くなるという従来の問題を解決し、ユーザー体験が向上する。
本開示の発明の一具体例として、前記ユーザー閲覧データに基づいてミニプログラムのページ開き指令を収集する前記ステップは、前記ユーザー閲覧データに基づいて情報表示画面に移行するステップであって、前記情報表示画面に少なくともミニプログラムの入口画面が表示されるステップと、前記ミニプログラムの入口画面に基づいてミニプログラムのページ開き指令を収集するステップとを含む。つまり、前記電子設備がユーザー閲覧データに基づいて入る情報表示画面から、直接的にミニプログラムの入口画面に対応するミニプログラムのページ開き指令をキャプチャするため、ユーザーが入る機能画面を効率的でかつ速やかに取得でき、当該機能画面はミニプログラムのホーム画面であってもよいし、他の画面であってもよく、本開示の発明でいずれも取得できるため、後に効率的に全てのダウンロード情報を取得するための条件が整備され、しかも当該プロセスがシンプルで、電子設備の分析処理を必要とせず、情報をキャプチャした後、直接的にサーバーに報告するだけで効率的な事前ダウンロード動作を実現でき、大規模なプロジェクトへの適用のための条件が整備される。
なお、スマート設備に係る実際のシーンでは、いくつかのアプリケーションが親プログラムとして1つ以上の子プログラムを実行でき、当該子プログラムは本開示の発明にいうミニプログラムであり、親プログラムは本開示の発明にいうホストアプリケーションプログラムである。ミニプログラムは独立的に実行できず、親プログラムに依存して実行される。例えば、ミニプログラムはソフトウェア開発キット(SDK)としてホストアプリケーションプログラムに集積される。
次に、具体的な適用シーンを踏まえて、本開示の発明を詳細に説明する。
具体的には、本例では従来のミニプログラム事前ダウンロードインタフェースの機能を拡張し、ミニプログラム事前ダウンロードインタフェースに開きたい画面の呼び出しプロトコルの一式を加え、ミニプログラムパッケージ管理サービス側(前記サーバー側)に依存性分析方法を導入することにより、動的コンポーネント(例えば、サブパッケージ又は他の機能コンポーネント)を含め、ユーザーが開くページ(ミニプログラムのページ開き指令に対応する機能画面)が依存する全てのコンポーネントを組み合わせて配ることによって、本開示の発明が従来の技術ではサブパッケージなどが事前にダウンロードされないため待ち時間が長い問題、速やかに更新できない問題を解決する。また、本開示の発明はホストアプリケーションプログラム及びミニプログラムサービス側がミニプログラムの動的な機能を柔軟に拡張し対応するという一般的な解決手段を提供することにより、事前にダウンロードする場合にメインパッケージダウンロードに対応できるが拡張はできないという従来の問題を根本的に解決するため、ミニプログラムサービスの動的な性能の高速な反復を促すことができる。
具体的には、図6に示すとおり、ミニプログラムパッケージに関連するコンポーネントの事前ダウンロード方法は、以下のステップを含む。
ステップ1で、ミニプログラムに対応するクライアント(ホストアプリケーションプログラム)がミニプログラムの入口から、例えば、クライアントが表示画面に表示されるミニプログラムの入口によって、ミニプログラム事前ダウンロード情報を収集し、当該ミニプログラム事前ダウンロード情報は具体的にはミニプログラムを開く指令(ミニプログラムのページ開き指令)を含んでもよい。例えば、既存のミニプログラム事前ダウンロードインタフェースを拡張し、JSONオブジェクトの形式でミニプログラム事前ダウンロード情報を表示し、ミニプログラムの事前ダウンロードインタフェース全体がオブジェクト配列として表示される。JSONの構造形態は次のテンプレートに示すとおりである。
Figure 2021121972
ここで、AppListは収集したミニプログラム事前ダウンロードリストであり、AppListの値はオブジェクト配列であり、オブジェクト配列の各オブジェクトは事前にダウンロードするミニプログラムエントリーであり、例えば、ミニプログラムの一意識別子(例えば、AppKey)によって表現する。ここで、後に効果的に拡張するために、拡張予約フィールドを設定してもよい。ミニプログラム事前ダウンロード情報の収集を完了した後、ミニプログラムの事前ダウンロードAPIを呼び出すことで前記情報をトランスペアレント伝送する。
ステップ2で、ミニプログラムに対応するクライアントがミニプログラム事前ダウンロード情報をアップロードする。
具体的には、前記情報をミニプログラムが事前にダウンロードするC−S(クライアント−サービス側)パッケージインタフェースのアップリンクパラメータに付随し、サービス側はこれを取得する。ここで、アップリンクパラメータにおけるミニプログラムオブジェクト情報は各ミニプログラムがクライアントにローカルに記憶するパッケージ情報を含む。例えば:
Figure 2021121972
ここで、
listオブジェクトはクライアントに関連する全てのコンポーネントのバージョンを記録する。
AppKeyは特定のミニプログラムを決定するために用いられ、pathは事前ダウンロードをトリガーとする特定のミニプログラムページ、即ちミニプログラムのページ開き指令に対応する機能画面を記録するために用いられる。
sub_infoはクライアントがローカルに記憶する各動的コンポーネントのバージョンであり、サービス側はこれに基づいて更新動作をトリガーするか否かを表示する。
extensionはミニプログラム拡張フレームワークのバージョン番号、frameworkはミニプログラム実行フレームワークのバージョン番号であり、サービス側は対象フレームワークバージョンにおいて動作するミニプログラムバージョンを選択する。
ここで、特にステップ1で受信したミニプログラムを開く指令に正規化の処理を行う必要がある。前記ミニプログラムを開く指令に開く先のパスフィールドが付随され、例えば、百度アプリ(App)のミニプログラムによってプロトコルにおけるbaiduboxapp://swan/appKey/path?queryを開いてパス情報を取得する。サービス側はこれを解析して関連するパッケージ、例えば、サブパッケージ、機能コンポーネントパッケージ等を得る。
ステップ3で、ミニプログラムに対応するサービス側は受信したミニプログラム事前ダウンロード情報に基づいて、ミニプログラム事前ダウンロードリストを配り、当該ミニプログラム事前ダウンロードリストに基本的な説明情報が含まれる。
具体的には、サービス側はミニプログラム事前ダウンロードリストを受信しこれを解析し、リストを走査し、リストにおける各エントリーのAppKeyに基づいて、対応するミニプログラムパッケージを見つける。AppKeyに対応するミニプログラムを開くプロトコルにおけるパス情報に基づいて、ミニプログラムパッケージにおけるapp.json説明情報と結び付けて分析することにより、次の内容を決定する。
ミニプログラムがサブパッケージを使用したか否かを決定する。
ミニプログラムが独立したサブパッケージを使用したか否かを決定する。
ミニプログラムが動的リンクライブラリにおける機能コンポーネントを使用したか否かを決定する。
ミニプログラムが他の動的コンテンツを引用し、関連のダウンロードを行えるか否かを決定する。
また、サービス側はクライアントの当該ミニプログラムにおける対応するコンポーネントのバージョン情報を取得し、AppKeyに対応するミニプログラムを開くプロトコルにおけるサブパッケージ、独立したサブパッケージ及び動的リンクライブラリにおける機能コンポーネント、又は他の関連できるコンポーネントのバージョン情報が最新のバージョンであるか否かを決定し、例えば、サービス側における対応するバージョン情報と比較して得る。
バージョンが一致する場合に、空を返し、又は当該コンポーネントバージョンが最新であることを伝える。
バージョンが一致しない場合に、サービス側は問い合わせにより対応する最新のコンポーネント情報を得、少なくともコンポーネントのバージョン番号、コンポーネントに対応するコンテンツデリバリネットワーク(Content Delivery Network、略称CDN)のダウンロードアドレス、コンポーネントの他の基本的な説明情報(例えば、コンポーネントの名称、設定等)を返す。
次に、前記決定した情報を順に組み合わせてリストを得て、クライアントに返す。
ステップ4で、ミニプログラムに対応するクライアントがミニプログラム事前ダウンロードリストの内容を実行し、事前ダウンロード動作を完了する。具体的には、ミニプログラムに対応するクライアントが、サービス側が返す結果に基づいて対応するコンポーネントを事前にダウンロードする。これにより、ユーザーがミニプログラムの入口によってミニプログラムを開く場合に、ダウンロードを待つことなく対応する機能画面に移行することができる。
さらに、本開示の実施形態では、サーバーを提供し、図7に示すとおり、
ホストアプリケーションプログラムの送信するミニプログラムの事前ダウンロード要求であって、前記ホストアプリケーションプログラムがユーザー閲覧データに基づいて生成し、少なくともミニプログラムのページ開き指令を含む前記ミニプログラムの事前ダウンロード要求を受信するための要求受信ユニット701と、
前記ミニプログラムのページ開き指令を解析して、前記ミニプログラムのページ開き指令の実行に要するダウンロード情報を得るための解析ユニット702と、
前記ホストアプリケーションプログラムがミニプログラムを事前にダウンロードするように、前記ダウンロード情報を前記ホストアプリケーションプログラムに送信する送信ユニット703とを備える。
本開示の発明の一具体例として、前記解析ユニット702は、
前記ミニプログラムのページ開き指令に対応するミニプログラムの説明情報を取得するための取得サブユニットと、
問い合わせにより前記ミニプログラムのページ開き指令に対応するパス情報を得るための問い合わせサブユニットと、
前記説明情報及び前記パス情報に基づいて、前記ミニプログラムのページ開き指令の実行に要するダウンロード情報を得るための第1情報決定サブユニットとを備える。
本開示の発明の一具体例として、前記解析ユニット702は、
前記ミニプログラムのページ開き指令に対応するターゲットダウンロードパッケージであって、前記ミニプログラムのページ開き指令に対応する機能画面に移行するためのダウンロードパッケージである前記ターゲットダウンロードパッケージを決定するための第2情報決定サブユニットと、
前記ミニプログラムのページ開き指令に対応する機能画面への移行がミニプログラムの他のダウンロードパッケージに依存するか否かに基づいて、前記ミニプログラムのページ開き指令の実行に要するトータルダウンロードパッケージリストを決定するための判断サブユニットとを含む。
本開示の発明の一具体例として、前記トータルダウンロードパッケージリストはターゲットダウンロードパッケージに対応するダウンロード情報を含み、
又は、前記トータルダウンロードパッケージリストは前記ターゲットダウンロードパッケージに対応するダウンロード情報、及びミニプログラムのメインダウンロードパッケージに対応するダウンロード情報を含む。
本開示の発明の一具体例として、図8に示すとおり、
前記ホストアプリケーションプログラムにおけるミニプログラムの機能コンポーネントのインストールバージョン情報を取得するためのインストールバージョン取得ユニット704と、
前記インストールバージョン情報に基づいて前記ミニプログラムにおける機能コンポーネントの更新処理を行うか否かを決定するための更新ユニット705とをさらに含む。
さらに、本開示の実施形態では、電子設備を提供し、図9に示すとおり、
ホストアプリケーションプログラムに基づいてユーザー閲覧データを取得するための閲覧データ取得ユニット901と、
前記ユーザー閲覧データに基づいてミニプログラムのページ開き指令を収集するための収集ユニット902と、
前記ミニプログラムのページ開き指令を含むミニプログラムの事前ダウンロード要求を生成するための要求生成ユニット903と、
前記ミニプログラムの事前ダウンロード要求を送信するための要求送信ユニット904と、
前記ミニプログラムのページ開き指令の実行に要するダウンロード情報を受信し、ミニプログラム事前ダウンロード動作を行うためのダウンロード情報受信ユニット905とを含む。
本開示の発明の一具体例として、前記収集ユニット902は、
前記ユーザー閲覧データに基づいて、少なくともミニプログラムの入口画面が表示される情報表示画面に移行するための画面表示サブユニットと、
前記ミニプログラムの入口画面に基づいてミニプログラムのページ開き指令を収集するための収集サブユニットとを備える。
さらに、本開示の実施形態では、サーバー、電子設備及び可読記憶媒体を提供する。
図10は、本開示の実施形態によるミニプログラム処理方法を実現するための電子設備のブロック図である。なお、実際のシーンでは、ミニプログラム処理方法に対応するサーバーは電子設備に類似するため、説明の簡素化のために、本開示の発明で詳細に説明するのは電子設備のみであり、サーバーについては電子設備を参照すれば理解できる。
具体的には、図10に示すとおり、電子設備としては、ラップトップコンピュータ、デスクトップコンピュータ、ワークステーション、パーソナルデジタルアシスタント、サーバー、ブレードサーバー、大型コンピュータ、他の適切なコンピュータなど、様々な形態のデジタルコンピュータであってもよい。また、パーソナルデジタルアシスタント、セルラーホン、スマートフォン、ウェアラブルデバイス、他の類似の計算設備など、様々な形態の移動設備であってもよい。本明細書に記載のコンポーネント、その接続関係、及びその機能は例示的なものに過ぎず、本開示の実施に関して本明細書に記載及び/又は主張された内容に限定を加えるためではない。
図10に示すとおり、当該電子設備は、1つ以上のプロセッサ1001と、メモリ1002と、各コンポーネントを接続するためのインタフェース(高速インタフェース及び低速インタフェース)とを含む。各コンポーネントは異なるバスによって互いに接続され、共通のマザーボードに取り付けられ、又は所望の方式で取り付けられてもよい。プロセッサは外部の入力/出力装置(例えば、インタフェースによって接続された表示設備)にグラフィカルユーザーインタフェース(GUI)のグラフィック情報を表示するようにメモリに記憶されているコマンドなど、電子設備において実行されるコマンドを処理することができる。他の実施形態では、必要ならば、複数のプロセッサ及び/又は複数のバスと複数のメモリを複数のメモリと一緒に使用してもよい。同様に、複数の電子設備を接続させ、各設備が必要な操作の一部を提供するようにしてもよい(例えば、サーバーアレイ、1群のブレードサーバー、又はマルチプロセッサシステムとする)。図10では、例示的にプロセッサ1001が1つあるものである。
メモリ1002は、本開示に係る非一時的なコンピュータ可読記憶媒体である。前記メモリには、少なくとも1つのプロセッサが本開示に係るミニプログラム処理方法を実行するように、前記少なくとも1つのプロセッサによって実行可能なコマンドが記憶されている。本開示に係る非一時的なコンピュータ可読記憶媒体にはコンピュータコマンドが記憶されており、当該コンピュータコマンドはコンピュータに本開示に係るミニプログラム処理方法を実行させる。
メモリ1002は非一時的なコンピュータ可読記憶媒体として、非一時的ソフトウェアプログラム、非一時的なコンピュータ実行可能プログラム及びモジュール、例えば、本開示の実施形態に係るミニプログラム処理方法に対応するプログラムコマンド/モジュール(例えば、図9に示す閲覧データ取得ユニット901、収集ユニット902、要求生成ユニット903、要求送信ユニット904及びダウンロード情報受信ユニット905である。ここで、サーバーにおいて、当該ミニプログラム処理方法に対応するプログラムコマンド/モジュールは、例えば、図8に示す要求受信ユニット701、解析ユニット702、送信ユニット703、インストールバージョン取得ユニット704及び更新ユニット705である)。プロセッサ1001はメモリ1002に記憶されている非一時的ソフトウェアプログラム、コマンド及びモジュールを動作させることにより、サーバーの様々な機能及びデータ処理を実行し、即ち前記方法実施形態に係るミニプログラム処理方法を実現する。
メモリ1002はプログラム記憶領域及びデータ記憶領域を含んでもよく、プログラム記憶領域はオペレーティングシステム、少なくとも1つの機能に必要なアプリケーションプログラムを記憶することができ、データ記憶領域はミニプログラム処理方法を実現するための電子設備の使用時に作成されたデータ等を記憶することができる。また、メモリ1002は高速ランダムアクセスメモリを含んでもよいし、非一時的メモリを含んでもよく、例えば、少なくとも1つの磁気ディスク記憶素子、フラッシュメモリ素子、又は他の非一時的固体記憶素子である。いくつかの実施形態では、任意選択でメモリ1002はプロセッサ1001に対して遠隔設置されたメモリを含み、当該遠隔メモリはネットワークを介してミニプログラム処理方法を実行する電子設備に接続されてもよい。前記ネットワークの例はインターネット、イントラネット、ローカルエリアネットワーク、モバイル通信ネットワーク、その組み合わせを含むが、これに限定されない。
ミニプログラム処理方法を実行する電子設備は、入力装置1003及び出力装置1004をさらに含んでもよい。プロセッサ1001、メモリ1002、入力装置1003及び出力装置1004はバス又は他の方式で接続されてもよく、図10の実施形態では、例示的にバスによって接続されたものである。
入力装置1003は入力されたデジタル又は文字情報を受信し、ミニプログラム処理方法を実行する電子設備のユーザー設定や機能制御に関連するキー信号入力を生成することができ、例えば、タッチスクリーン、テンキー、マウス、トラックパッド、タッチパッド、インジケータスティック、1つ以上のマウスボタン、トラックボール、ジョイスティック等入力装置である。出力装置1004は表示設備、補助照明装置(例えば、LED)、触覚フィードバック装置(例えば、振動モーター)等を含んでもよい。当該表示設備は、液晶ディスプレイ(LCD)、発光ダイオード(LED)ディスプレイ、プラズマディスプレイを含むが、これに限定されない。いくつかの実施形態では、表示設備はタッチスクリーンであってもよい。
ここに記載のシステム及び技術の様々な実施形態は、デジタル電子回路システム、集積回路システム、特定用途向け集積回路(ASIC)、コンピュータハードウェア、ファームウェア、ソフトウェア、及び/又はその組み合わせにおいて実施できる。前記実施形態は次のものを含んでもよい。1つ以上のコンピュータプログラムにおいて実施され、当該1つ以上のコンピュータプログラムは少なくとも1つのプログラマブルプロセッサを含むプログラマブルシステムにおいて実行及び/又は解釈されてもよく、当該プログラマブルプロセッサは専用又は汎用のプログラマブルプロセッサであってもよく、記憶システム、少なくとも1つの入力装置及び少なくとも1つの出力装置からデータ及びコマンドを受信し、且つデータ及びコマンドを当該記憶システム、当該少なくとも1つの入力装置及び当該少なくとも1つの出力装置に伝送することができる。
前記コンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、コードともいう)にはプログラマブルプロセッサ用機械コマンドを含み、且つ高度なプロセス及び/又はオブジェクト指向のプログラミング言語、及び/又はアセンブリ/機械言語を用いて前記コンピュータプログラムを実施することができる。本明細書で、用語「機械可読媒体」及び「コンピュータ可読媒体」とは機械コマンド及び/又はデータをプログラマブルプロセッサに提供するあらゆるコンピュータプログラム製品、設備、及び/又は装置(例えば、磁気ディスク、光ディスク、メモリ、プログラマブルロジックデバイス(PLD))であり、機械可読信号としての機械コマンドを受信する機械可読媒体を含む。用語「機械可読信号」とは、機械コマンド及び/又はデータをプログラマブルプロセッサに提供するためのあらゆる信号である。
ユーザーとのインタラクションを実現するように、コンピュータにおいてここに記載のシステム及び技術を実現することができ、当該コンピュータは、ユーザーに情報を表示するための表示装置(例えば、CRT(陰極線管)又はLCD(液晶ディスプレイ))と、キーボードと、ポインティングデバイス(例えば、マウス又はトラックボール)を備え、ユーザーは当該キーボード及び当該ポインティングデバイスによってコンピュータに入力することができる。他にもユーザーとのインタラクションを実現するための装置がある。例えば、ユーザーへのフィードバックは感覚的なフィードバック(例えば、視覚的なフィードバック、聴覚的なフィードバック、触覚的なフィードバック)など任意の形態であってもよく、また任意の方式(声入力、音声入力、触覚入力)でユーザーの入力を受信することができる。
ここに記載のシステム及び技術は、バックグラウンドコンポーネントを含むコンピューティングシステム(例えば、データサーバー)、又は中間コンポーネントを含むコンピューティングシステム(例えば、アプリケーションサーバー)、又はフロントエンドコンポーネントを含むコンピューティングシステム(例えば、グラフィカルユーザーインタフェース又はウェブブラウザーを備えるパソコンであって、ユーザーは当該グラフィカルユーザーインタフェース又は当該ウェブブラウザーによってここに記載のシステム及び技術の実施形態とインタラクションを行うことができる)、又は前記バックグラウンドコンポーネント、中間コンポーネント、もしくはフロントエンドコンポーネントの任意の組み合わせを含むコンピューティングシステムにおいて実施することができる。任意の方式又は媒体によるデジタルデータ通信(例えば、通信ネットワーク)によってシステムのコンポーネントを互いに接続させることができる。通信ネットワークの例は、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、インターネットを含む。
コンピュータシステムはクライアント及びサーバーを含んでもよい。クライアントとサーバーは一般に遠隔設置され、且つ通信ネットワークによって互いに接続される。コンピュータで実行されるクライアント−サーバー型配置のコンピュータプログラムによってクライアントとサーバーの関係を構成する。サーバーはクラウドサーバーであってもよく(クラウドコンピューティングサーバー、クラウドホストともいう)、クラウドコンピューティングサービスシステムではホストのようなものであり、従来の物理ホスト及び仮想専用サーバー(VPS)サービスでは管理が難しく、業務の拡張性が弱いという欠点を解消するために開発される。
このようにして、本開示の発明でサーバーがミニプログラムのページ開き指令に基づいて、前記ミニプログラムのページ開き指令の実行に要する全てのダウンロード情報を得、ホストアプリケーションプログラムがミニプログラムを事前にダウンロードするように、前記ミニプログラムのページ開き指令の実行に要する全てのダウンロード情報をホストアプリケーションプログラムに送信するため、サブパッケージなどが事前にダウンロードされないため待ち時間が長くなるという従来の問題を解決し、ユーザー体験が向上する。また、動的なコンポーネントの使用でミニプログラムの機能体験が悪くなる問題を解決したため、動的な構築機能の普及のための条件が整備され、そしてミニプログラムの開発及び反復の效率を高めるための条件が整備される。
さらに、本開示の発明は前記ミニプログラムのページ開き指令の実行に要する全てのダウンロード情報を正確に決定できるため、メインパッケージを事前にダウンロードすることでメインパッケージリソースの要求及びダウンロードに無駄を生じるという従来の問題を解決し、ダウンロードリソース及びユーザー電子設備の実行リソースの節約のための条件が整備される。
なお、上記の様々なプロセスを踏まえて、ステップを並べ替え、追加、又は削除することができる。例えば、本開示に記載の各ステップは同時に実行されてもよいし、順に実行されてもよいし、他の順番で実行されてもよく、本開示の技術的解決手段の効果を得られるものであれば、本明細書では特に限定しない。
上記のいくつかの実施形態は、本開示の保護範囲を限定するものと見なされない。当業者が理解したように、設計上の要件や他の要素に基づいて、様々な修正や、組み合わせ、置き換えを行うことができる。本開示の趣旨においてなされた修正、同等な置き換えや改善等は、いずれも本開示の保護範囲に含まれる。

Claims (18)

  1. ホストアプリケーションプログラムの送信するミニプログラムの事前ダウンロード要求であって、前記ホストアプリケーションプログラムがユーザー閲覧データに基づいて生成し、少なくともミニプログラムのページ開き指令を含む前記ミニプログラムの事前ダウンロード要求を受信することと、
    前記ミニプログラムのページ開き指令を解析して、前記ミニプログラムのページ開き指令の実行に要するダウンロード情報を得ることと、
    前記ホストアプリケーションプログラムがミニプログラムを事前にダウンロードするように、前記ダウンロード情報を前記ホストアプリケーションプログラムに送信することとを含む、
    ミニプログラム処理方法。
  2. 前記ミニプログラムのページ開き指令の実行に要するダウンロード情報を得ることは、
    前記ミニプログラムのページ開き指令に対応するミニプログラムの説明情報を取得することと、
    問い合わせにより前記ミニプログラムのページ開き指令に対応するパス情報を得ることと、
    前記説明情報及び前記パス情報に基づいて、前記ミニプログラムのページ開き指令の実行に要するダウンロード情報を得ることとを含む、
    請求項1に記載のミニプログラム処理方法。
  3. 前記ミニプログラムのページ開き指令の実行に要するダウンロード情報を得ることは、
    前記ミニプログラムのページ開き指令に対応するターゲットダウンロードパッケージであって、前記ミニプログラムのページ開き指令に対応する機能画面に移行するためのダウンロードパッケージである前記ターゲットダウンロードパッケージを決定することと、
    前記ミニプログラムのページ開き指令に対応する機能画面への移行がミニプログラムの他のダウンロードパッケージに依存するか否かに基づいて、前記ミニプログラムのページ開き指令の実行に要するトータルダウンロードパッケージリストを決定することとを含む、
    請求項1又は2に記載のミニプログラム処理方法。
  4. 前記トータルダウンロードパッケージリストは、ターゲットダウンロードパッケージに対応するダウンロード情報を含み、
    又は、前記トータルダウンロードパッケージリストは、前記ターゲットダウンロードパッケージに対応するダウンロード情報、及びミニプログラムのメインダウンロードパッケージに対応するダウンロード情報を含む、
    請求項3に記載のミニプログラム処理方法。
  5. 前記ミニプログラム処理方法は、
    前記ホストアプリケーションプログラムにおけるミニプログラムの機能コンポーネントのインストールバージョン情報を取得することと、
    前記インストールバージョン情報に基づいて前記ミニプログラムにおける機能コンポーネントの更新処理を行うか否かを決定することとをさらに含む、
    請求項1に記載のミニプログラム処理方法。
  6. ホストアプリケーションプログラムに基づいてユーザー閲覧データを取得することと、
    前記ユーザー閲覧データに基づいてミニプログラムのページ開き指令を収集することと、
    前記ミニプログラムのページ開き指令を含むミニプログラムの事前ダウンロード要求を生成し、前記ミニプログラムの事前ダウンロード要求を送信することと、
    前記ミニプログラムのページ開き指令の実行に要するダウンロード情報を受信し、ミニプログラム事前ダウンロード動作を行うこととを含む、
    ミニプログラム処理方法。
  7. 前記ユーザー閲覧データに基づいてミニプログラムのページ開き指令を収集することは、
    前記ユーザー閲覧データに基づいて、少なくともミニプログラムの入口画面が表示される情報表示画面に移行することと、
    前記ミニプログラムの入口画面に基づいてミニプログラムのページ開き指令を収集することとを含む、
    請求項6に記載のミニプログラム処理方法。
  8. ホストアプリケーションプログラムの送信するミニプログラムの事前ダウンロード要求であって、前記ホストアプリケーションプログラムがユーザー閲覧データに基づいて生成し、少なくともミニプログラムのページ開き指令を含む前記ミニプログラムの事前ダウンロード要求を受信するための要求受信ユニットと、
    前記ミニプログラムのページ開き指令を解析して、前記ミニプログラムのページ開き指令の実行に要するダウンロード情報を得るための解析ユニットと、
    前記ホストアプリケーションプログラムがミニプログラムを事前にダウンロードするように、前記ダウンロード情報を前記ホストアプリケーションプログラムに送信するための送信ユニットとを備える、
    サーバー。
  9. 前記解析ユニットは、
    前記ミニプログラムのページ開き指令に対応するミニプログラムの説明情報を取得するための取得サブユニットと、
    問い合わせにより前記ミニプログラムのページ開き指令に対応するパス情報を得るための問い合わせサブユニットと、
    前記説明情報及び前記パス情報に基づいて、前記ミニプログラムのページ開き指令の実行に要するダウンロード情報を得るための第1情報決定サブユニットとを備える、
    請求項8に記載のサーバー。
  10. 前記解析ユニットは、
    前記ミニプログラムのページ開き指令に対応するターゲットダウンロードパッケージであって、前記ミニプログラムのページ開き指令に対応する機能画面に移行するためのダウンロードパッケージである前記ターゲットダウンロードパッケージを決定するための第2情報決定サブユニットと、
    前記ミニプログラムのページ開き指令に対応する機能画面への移行がミニプログラムの他のダウンロードパッケージに依存するか否かに基づいて、前記ミニプログラムのページ開き指令の実行に要するトータルダウンロードパッケージリストを決定するための判断サブユニットとを備える、
    請求項8又は9に記載のサーバー。
  11. 前記トータルダウンロードパッケージリストは、ターゲットダウンロードパッケージに対応するダウンロード情報を含み、
    又は、前記トータルダウンロードパッケージリストは、前記ターゲットダウンロードパッケージに対応するダウンロード情報、及びミニプログラムのメインダウンロードパッケージに対応するダウンロード情報を含む、
    請求項10に記載のサーバー。
  12. 前記サーバーは、
    前記ホストアプリケーションプログラムにおける前記ミニプログラムの事前ダウンロード要求に対応するミニプログラムの機能コンポーネントのインストールバージョン情報を取得するためのインストールバージョン取得ユニットと、
    前記インストールバージョン情報に基づいて前記ミニプログラムにおける機能コンポーネントの更新処理を行うか否かを決定するための更新ユニットとをさらに備える、
    請求項8に記載のサーバー。
  13. ホストアプリケーションプログラムに基づいてユーザー閲覧データを取得するための閲覧データ取得ユニットと、
    前記ユーザー閲覧データに基づいてミニプログラムのページ開き指令を収集するための収集ユニットと、
    前記ミニプログラムのページ開き指令を含むミニプログラムの事前ダウンロード要求を生成するための要求生成ユニットと、
    前記ミニプログラムの事前ダウンロード要求を送信するための要求送信ユニットと、
    前記ミニプログラムのページ開き指令の実行に要するダウンロード情報を受信し、ミニプログラム事前ダウンロード動作を行うためのダウンロード情報受信ユニットとを備える、
    電子設備。
  14. 前記収集ユニットは、
    前記ユーザー閲覧データに基づいて、少なくともミニプログラムの入口画面が表示される情報表示画面に移行するための画面表示サブユニットと、
    前記ミニプログラムの入口画面に基づいてミニプログラムのページ開き指令を収集するための収集サブユニットとを備える、
    請求項13に記載の電子設備。
  15. 少なくとも1つのプロセッサと、
    前記少なくとも1つのプロセッサと通信接続されるメモリとを備え、
    前記メモリには、前記少なくとも1つのプロセッサによって実行可能なコマンドが記憶されており、前記コマンドは、前記少なくとも1つのプロセッサによって実行されると、前記少なくとも1つのプロセッサに請求項1〜5のいずれか1項に記載の方法を実行させる、
    サーバー。
  16. 少なくとも1つのプロセッサと、
    前記少なくとも1つのプロセッサと通信接続されるメモリとを備え、
    前記メモリには、前記少なくとも1つのプロセッサによって実行可能なコマンドが記憶されており、前記コマンドは、前記少なくとも1つのプロセッサによって実行されると、前記少なくとも1つのプロセッサに請求項6又は7に記載の方法を実行させる、
    電子設備。
  17. コンピュータに請求項1〜5のいずれか1項に記載の方法、又は請求項6もしくは7に記載の方法を実行させるコマンドが記憶されている非一時的なコンピュータ可読記憶媒体。
  18. コンピュータにおいて、プロセッサにより実行される場合、請求項1〜5のいずれか1項に記載の方法、又は請求項6もしくは7に記載の方法を実現することを特徴とするプログラム。
JP2021086931A 2020-06-30 2021-05-24 ミニプログラム処理方法、サーバー、設備、記憶媒体、及びプログラム Active JP7232866B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202010611699.0A CN111767069B (zh) 2020-06-30 2020-06-30 小程序处理方法、服务器、设备及存储介质
CN202010611699.0 2020-06-30

Publications (2)

Publication Number Publication Date
JP2021121972A true JP2021121972A (ja) 2021-08-26
JP7232866B2 JP7232866B2 (ja) 2023-03-03

Family

ID=72722992

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021086931A Active JP7232866B2 (ja) 2020-06-30 2021-05-24 ミニプログラム処理方法、サーバー、設備、記憶媒体、及びプログラム

Country Status (5)

Country Link
US (1) US20210211522A1 (ja)
EP (1) EP3828701B1 (ja)
JP (1) JP7232866B2 (ja)
KR (1) KR102501968B1 (ja)
CN (1) CN111767069B (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112379954A (zh) * 2020-11-16 2021-02-19 北京百度网讯科技有限公司 应用程序的数据处理方法、装置、设备及存储介质
CN112416374B (zh) * 2020-11-18 2022-10-25 北京字跳网络技术有限公司 数据处理方法、装置、终端和存储介质
CN112579096B (zh) * 2020-12-18 2024-03-19 北京百度网讯科技有限公司 小程序启动文件的编译、加载方法、装置、设备和介质
CN112925583B (zh) * 2021-02-25 2023-10-27 北京百度网讯科技有限公司 宿主应用能力扩展方法、装置、设备以及存储介质
CN113220367A (zh) * 2021-05-12 2021-08-06 北京百度网讯科技有限公司 小程序的运行方法、装置、电子设备及存储介质
CN113687891A (zh) * 2021-07-19 2021-11-23 阿里巴巴新加坡控股有限公司 数据管理方法、装置及设备
CN114338652B (zh) * 2021-12-30 2023-10-20 北京欧珀通信有限公司 安装包的分发方法、下载方法及相关产品
CN117176698A (zh) * 2022-05-26 2023-12-05 华为技术有限公司 通信方法、装置以及系统
CN115878138B (zh) * 2023-03-03 2023-08-15 腾讯科技(深圳)有限公司 应用预下载方法、装置、计算机、存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008181228A (ja) * 2007-01-23 2008-08-07 Sony Corp 管理システムおよび管理方法、端末装置、管理サーバ、並びにプログラム
WO2019184053A1 (zh) * 2018-03-28 2019-10-03 华为技术有限公司 一种浏览应用页面的方法及终端
US20190384801A1 (en) * 2017-03-31 2019-12-19 Tencent Technology (Shenzhen) Company Limited Application processing method, computer device, and storage medium
JP2020504865A (ja) * 2017-01-06 2020-02-13 テンセント・テクノロジー・(シェンジェン)・カンパニー・リミテッド アプリケーションデータ処理方法、装置、及び記憶媒体
JP2020511711A (ja) * 2017-05-11 2020-04-16 テンセント・テクノロジー・(シェンジェン)・カンパニー・リミテッド メッセージ処理方法、記憶媒体、及びコンピュータ機器

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9519726B2 (en) * 2011-06-16 2016-12-13 Amit Kumar Surfacing applications based on browsing activity
US10628175B2 (en) * 2017-10-04 2020-04-21 Citrix Systems, Inc. Loader application with secondary embedded application object
US11036522B2 (en) * 2017-12-19 2021-06-15 Citrix Systems, Inc. Remote component loader
CN110166543B (zh) * 2019-05-16 2020-08-28 腾讯科技(深圳)有限公司 应用程序处理方法、装置和计算机设备
CN110389935B (zh) * 2019-07-25 2021-04-16 上海连尚网络科技有限公司 一种启动小程序的方法、设备和计算机存储介质
CN110990057B (zh) * 2019-11-22 2023-08-01 百度在线网络技术(北京)有限公司 小程序子链信息的提取方法、装置、设备及介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008181228A (ja) * 2007-01-23 2008-08-07 Sony Corp 管理システムおよび管理方法、端末装置、管理サーバ、並びにプログラム
JP2020504865A (ja) * 2017-01-06 2020-02-13 テンセント・テクノロジー・(シェンジェン)・カンパニー・リミテッド アプリケーションデータ処理方法、装置、及び記憶媒体
US20190384801A1 (en) * 2017-03-31 2019-12-19 Tencent Technology (Shenzhen) Company Limited Application processing method, computer device, and storage medium
JP2020511711A (ja) * 2017-05-11 2020-04-16 テンセント・テクノロジー・(シェンジェン)・カンパニー・リミテッド メッセージ処理方法、記憶媒体、及びコンピュータ機器
WO2019184053A1 (zh) * 2018-03-28 2019-10-03 华为技术有限公司 一种浏览应用页面的方法及终端

Also Published As

Publication number Publication date
JP7232866B2 (ja) 2023-03-03
EP3828701A3 (en) 2021-09-01
KR102501968B1 (ko) 2023-02-21
CN111767069A (zh) 2020-10-13
EP3828701A2 (en) 2021-06-02
US20210211522A1 (en) 2021-07-08
CN111767069B (zh) 2024-03-15
EP3828701B1 (en) 2024-02-21
KR20210040874A (ko) 2021-04-14

Similar Documents

Publication Publication Date Title
JP2021121972A (ja) ミニプログラム処理方法、サーバー、設備、記憶媒体、及びプログラム
JP7194162B2 (ja) データ処理方法、装置、電子機器及び記憶媒体
CN111666585B (zh) 子应用访问的方法、装置、电子设备以及可读存储介质
JP7421511B2 (ja) アプリケーションをデプロイするための方法及び装置、電子機器、読み取り可能な記憶媒体並びにコンピュータプログラム
CN110865855B (zh) 小程序处理方法及相关设备
KR101505234B1 (ko) 원격 리소스들의 웹 액세스를 위한 xml-기반 웹 피드
KR102546577B1 (ko) 미니 프로그램 데이터 처리 방법 및 장치
CN111913884A (zh) 分布式测试方法、装置、设备、系统和可读存储介质
CN111414208A (zh) 应用程序的启动方法、装置及设备
KR102572726B1 (ko) 호스팅 애플리케이션의 컴파일 최적화 방법, 장치, 전자 기기 및 판독 가능 저장 매체
CN111752843A (zh) 用于确定影响面的方法、装置、电子设备及可读存储介质
CN112433788A (zh) 小程序运行方法、装置、电子设备和存储介质
US9986057B2 (en) UI framework support for portal systems
KR20210089081A (ko) 랜딩 페이지 처리 방법, 장치, 기기 및 매체
CN111767089A (zh) 加载文件的方法、装置、设备以及存储介质
CN113821352A (zh) 一种远程服务的调用方法和装置
US20090094312A1 (en) Methods and systems for dynamic code extension
CN112667795B (zh) 对话树构建方法和装置、对话树运行方法、装置以及系统
CN112069137B (zh) 生成信息的方法、装置、电子设备及计算机可读存储介质
WO2023169193A1 (zh) 用于生成智能合约的方法和装置
CN112394907A (zh) 基于容器的交付系统构建方法、应用交付方法和交付系统
CN112084000A (zh) 容器集群的测试方法和装置
JP5517255B2 (ja) 複数のサービスノードサーバにおけるサービス連結制御方法、制御ノードサーバ及びプログラム
CN109981320B (zh) 一种配置信息的管理方法和装置
CN112035279B (zh) 服务调用的方法、装置及电子设备

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210524

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220506

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220510

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220803

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20220830

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221228

C60 Trial request (containing other claim documents, opposition documents)

Free format text: JAPANESE INTERMEDIATE CODE: C60

Effective date: 20221228

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20230113

C21 Notice of transfer of a case for reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C21

Effective date: 20230117

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230207

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230220

R150 Certificate of patent or registration of utility model

Ref document number: 7232866

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150