すべてのプロダクト
Search
ドキュメントセンター

SuperApp:uni-app ベースで開発されたネイティブアプリに uni-app ミニアプリコンテナを統合するにはどうすればよいですか。

最終更新日:Jan 18, 2025

シナリオ

uni-app ベースで開発されたネイティブアプリに uni-app ミニアプリコンテナを統合します。その他のシナリオについては、「Android アプリへのミニアプリコンテナの統合」をご参照ください。

ソリューション

  1. ネイティブ uni-app プラグイン EMASUniAppPlugin をダウンロードします。

  2. EMASUniAppPlugin.zip パッケージを解凍し、解凍したフォルダを uni-app プロジェクトの nativeplugins フォルダにコピーします。

  3. HBuilderX で uni-app プロジェクトを開きます。 uni-app プロジェクトの manifest.json ファイルをクリックします。ネイティブアプリプラグインを設定するには、nativeplugins フォルダにある EMASUniAppPlugin をオンプレミスプラグインとして選択します。4Screenshot 2 2022-12-30 16:00

  4. manifest.json ファイルをもう一度クリックし、ソースコードビューに切り替えます。app-plus パラメーターを見つけ、UniMP パラメーターを modules パラメーターに追加します。5

  5. uni-app プロジェクトで EMASUniAppPlugin プラグインと uni-app ミニアプリコンテナを使用します。

    // uni-app ミニアプリコンテナを取得します。
    const mp = uni.requireNativePlugin('uniMP');
    // EMASUniAppPlugin プラグインを取得します。
    var emasModule = uni.requireNativePlugin("EMASUniAppPlugin");

EMASUniAppPlugin プラグインの API リファレンス

configEmas

var ret = emasModule.configEmas({
					'appKeyAndroid': 'xxx',
					'appSecretAndroid': 'xxx',
					'channelIdAndroid': 'xxx',
					'mtopDomain': 'xxx',
					'useHttp': 'false',
					'appKeyIOS': 'xxx',
					'appSecretIOS': 'xxx',
					'channelIdIOS': 'xxx'
				})

EMASUniAppPlugin プラグインを初期化します。このメソッドは同期メソッドです。

リクエストパラメータ

appKeyAndroid

文字列:Android アプリの AppKey。アプリの AppKey は Enterprise Mobile Application Studio(EMAS)コンソールから取得できます。

appSecretAndroid

文字列:Android アプリの AppSecret。アプリの AppSecret は EMAS コンソールから取得できます。

channelIdAndroid

文字列:Android アプリのチャネル ID。アプリのチャネル ID は EMAS コンソールから取得できます。

mtopDomain

文字列:EMAS の MTOP ドメイン名。

useHttp

ブール値:HTTP プロトコルを使用するかどうかを指定します。

appKeyIOS

文字列:iOS アプリの AppKey。アプリの AppKey は EMAS コンソールから取得できます。

appSecretIOS

文字列:iOS アプリの AppSecret。アプリの AppSecret は EMAS コンソールから取得できます。

channelIdIOS

文字列:iOS アプリのチャネル ID。アプリのチャネル ID は EMAS コンソールから取得できます。

updateMiniApp

emasModule.updateMiniapp({
					'appId': 'xxx',
				}, (ret) => {
					
				})

ミニアプリのバージョンを更新します。ミニアプリに新しいバージョンがある場合、このメソッドを呼び出して新しいバージョンのミニアプリをダウンロードしてインストールできます。このメソッドは非同期メソッドです。

リクエストパラメータ

appId

文字列:ミニアプリの ID。ミニアプリの ID は Application Open Platform コンソールから取得できます。詳細については、このトピックの「ミニアプリの ID を取得する」セクションをご参照ください。

miniAppVersion

文字列:ミニアプリのバージョン番号。このパラメータは空のままにすることができます。このパラメータを null に設定するか、空のままにした場合、指定されたミニアプリがダウンロードされてインストールされます。特定のバージョン番号が指定されている場合、システムはミニアプリが指定されたバージョンに更新されているかどうかを確認します。ミニアプリが更新されていない場合、操作は実行されません。ミニアプリが更新されている場合、指定されたバージョンのミニアプリがダウンロードされてインストールされます。

publishId

文字列:ミニアプリのリリース ID。このパラメータは空のままにすることができます。

レスポンスパラメータ

code

数値:エラーコード。

errorMsg

文字列:エラーメッセージ。

wgtPath

文字列:ミニアプリインストールパッケージのパス。

uniAppId

文字列:ミニアプリの ID。

version

文字列:ミニアプリのバージョン番号。

publishType

文字列:ミニアプリのリリースタイプ。

例:

emasModule.updateMiniapp({
					'appId': '151624424672398147591',
				}, (ret) => {
					if (ret.code === 0) {
            // ミニアプリコンテナを使用してミニアプリをインストールします。
						mp.installUniMP({
							appid: '__UNI__151624424672398147591',
							wgtFile: ret.wgtPath
						}, (r) => {
							if (0 == r.code) {
								uni.showToast({
									title: 'ミニアプリがインストールされました。'
								});
								// ミニアプリのインストール後、ミニアプリを開きます。
								mp.openUniMP({
									appid: '__UNI__151624424672398147591'
								}, (ret) => {
									if (0 != ret.code) {
										uni.showModal({
											title: 'ミニアプリの起動に失敗しました。',
											content: JSON.stringify(ret),
											showCancel: false
										});
									}
									console.log('openUniMP: ' + JSON.stringify(ret));
								});
							} else {
								uni.showModal({
									title: 'ミニアプリのインストールに失敗しました。',
									content: JSON.stringify(r),
									showCancel: false
								});
							}
							console.log('installUniMP: ' + JSON.stringify(r));
						});
					}
				})

getMiniappList

emasModule.getMiniappList({
					'appIdList': '[xxx]',
				}, (ret) => {
					
				})

ミニアプリをクエリします。このメソッドは非同期メソッドです。

リクエストパラメータ

appIdList

文字列:ミニアプリの ID。ミニアプリの ID は Application Open Platform コンソールから取得できます。詳細については、このトピックの「ミニアプリの ID を取得する」セクションをご参照ください。

レスポンスパラメータ

code

数値:エラーコード。

errorMsg

文字列:エラーメッセージ。

listData

文字列:ミニアプリの情報。

ミニアプリの ID を取得する

  1. Application Open Platform コンソールにログインします。

  2. ワークスペースを選択して、ワークスペースの [概要] ページに移動します。

    説明

    1 つのワークスペースにのみ参加している場合は、Application Open Platform コンソールにログインした後、ワークスペースの [概要] ページに移動します。

  3. 左側のナビゲーションウィンドウで、[ミニアプリ] をクリックします。 [ミニアプリリスト] ページが表示されます。

  4. [ミニアプリリスト] ページで、ID を取得するミニアプリを見つけ、ID を記録します。

    image