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

Mobile Platform as a Service:ミニプログラムのベースライブラリ

最終更新日:Jun 03, 2026

各ベースライブラリバージョンには、最小クライアントバージョンが必要です。互換性チェックを使用して、バージョンの違いを適切に処理してください。

ベースライブラリとクライアントの関係

ミニアプリの機能は、クライアントバージョンに依存します。

  • 各ベースライブラリバージョンの新機能は、特定のクライアントバージョン以降で実行する必要があります。

  • より新しいベースライブラリバージョンの一部の新機能は、以前のクライアントバージョンと互換性がありません。

バージョンの違いを処理する方法については、「ベースライブラリの互換性の確保」をご参照ください。現在のベースライブラリバージョンを取得するには、my.SDKVersion を使用します。

ベースライブラリの互換性の確保

古いクライアントは、新しいミニアプリコンポーネントと API をサポートしていません。必要に応じて互換性に対応してください。

my.canIUse(String) を使用して、機能が利用可能かどうかを確認してください。「インターフェイスの説明」をご参照ください。

互換性の例

新しい API の互換性への対応

現在のベースライブラリが新しい API をサポートしているかどうかを確認してください。

if (my.getLocation) {
    my.getLocation();
} else {
// ユーザーに最新のクライアントバージョンでミニプログラムを体験してもらいたい場合は、プロンプトを表示できます。
  my.alert({
    title: 'Prompt',
    content: 'The current version is too old to use this feature. Please upgrade to the latest version.'
  });
}

新しい API パラメータの互換性への対応

新しい API パラメータがサポートされているかどうかを確認してください。

if (my.canIUse('getLocation.object.type')) {
    // 後続の処理ロジックをここに記述します。
} else {
    console.log('The current version does not support this parameter')
}

新しい API 戻り値の互換性への対応

新しい API 戻り値がサポートされているかどうかを確認してください。

if (my.canIUse('getSystemInfo.return.storage')) {
    // 後続の処理ロジックをここに記述します
} else {
    console.log('The current version does not support this return value')
}

新しいコンポーネントプロパティの互換性への対応

新しいコンポーネントプロパティは、古いクライアントでエラーを引き起こしません。グレースフルにデグレードしてください。

Page({
    data: {
        canIUse: my.canIUse('button.open-type.share')
    }
})

ベースライブラリのバージョン

ベースライブラリバージョン

対応するベースラインバージョン

2.8.9

  • Android: 10.2.3

  • iOS: 新しいミニプログラムコンテナベースライン cp_change_15200851 および 10.2.3

    説明

    新しいミニアプリコンテナには、ベースラインバージョン 10.2.3 を使用する必要があります。

1.14.1

10.1.68

1.14.1

10.1.60

1.9.0

10.1.32

ベースライブラリの統合

統合手順は、ベースラインバージョンによって異なります。続行する前に、ベースラインバージョンを確認してください。

iOS

10.2.3 ベースラインバージョン

新しいミニアプリコンテナベースライン cp_change_15200851 および 10.2.3 は、ミニアプリベースライブラリ 2.0 の構築をサポートしています。

説明

新しいミニアプリコンテナには、ベースラインバージョン 10.2.3 を使用する必要があります。

Android

ベースラインバージョン 10.1.68.7 以降

起動時にプロバイダーインスタンスを設定してください。

H5Utils.setProvider(H5AppCenterPresetProvider.class.getName(),new TinyAppCenterPresetProvider());
説明

クライアントが H5 のパブリックリソースパッケージを使用している場合は、TinyAppCenterPresetProvider クラスを継承し、パブリックリソースパッケージのコードを継承クラスのインスタンスにマージしてください。

10.1.60 シリーズおよび 10.1.68.6 以前のベースラインバージョン

  1. H5AppCenterPresetProvider インターフェイスを実装してください。

     package com.mpaas.demo.nebula;
    
     import com.alipay.mobile.nebula.appcenter.H5PresetInfo;
     import com.alipay.mobile.nebula.appcenter.H5PresetPkg;
     import com.alipay.mobile.nebula.provider.H5AppCenterPresetProvider;
    
     import java.io.File;
     import java.io.InputStream;
     import java.util.HashMap;
     import java.util.HashSet;
     import java.util.Map;
     import java.util.Set;
    
     public class H5AppCenterPresetProviderImpl implements H5AppCenterPresetProvider {
         private static final String TAG = "H5AppCenterPresetProviderImpl";
    
         // ミニアプリ専用のリソースパッケージを設定します。この ID は固定されており、変更できません。
         private static final String TINY_COMMON_APP = "66666692";
    
         // プリセットパッケージの asset フォルダ。
         private final static String NEBULA_APPS_PRE_INSTALL = "nebulaPreset" + File.separator;
    
         // プリセットパッケージのコレクション。
         private static final Map<String, H5PresetInfo> NEBULA_LOCAL_PACKAGE_APP_IDS = new HashMap();
    
         static {
    
             H5PresetInfo h5PresetInfo2 = new H5PresetInfo();
             // 組み込みフォルダ内のファイル名。
             h5PresetInfo2.appId = TINY_COMMON_APP;
             h5PresetInfo2.version = "1.0.0.0";
             h5PresetInfo2.downloadUrl = "";
    
             NEBULA_LOCAL_PACKAGE_APP_IDS.put(TINY_COMMON_APP, h5PresetInfo2);
    
         }
    
         @Override
         public Set<String> getCommonResourceAppList() {
             Set<String> appIdList = new HashSet<String>();
             appIdList.add(getTinyCommonApp());
             return appIdList;
         }
    
         @Override
         public H5PresetPkg getH5PresetPkg() {
             H5PresetPkg h5PresetPkg = new H5PresetPkg();
             h5PresetPkg.setPreSetInfo(NEBULA_LOCAL_PACKAGE_APP_IDS);
             h5PresetPkg.setPresetPath(NEBULA_APPS_PRE_INSTALL);
             return h5PresetPkg;
         }
    
         /**
          * ダウングレード可能なリソースパッケージの ID を設定します。
          */
         @Override
         public Set<String> getEnableDegradeApp() {
             return null;
         }
    
         @Override
         public String getTinyCommonApp() {
             return TINY_COMMON_APP;
         }
    
         @Override
         public InputStream getPresetAppInfo() {
             return null;
         }
    
         @Override
         public InputStream getPresetAppInfoObject() {
             return null;
         }
     }
  2. クライアントバージョンに一致するミニアプリのベースライブラリをダウンロードしてください。前の手順の asset フォルダにコピーして、名前を変更してください。デフォルトのパスは assets/nebulaPreset/66666692 です。

  3. 起動時にプロバイダーインスタンスを設定してください。

     H5Utils.setProvider(H5AppCenterPresetProvider.class.getName(), new H5AppCenterPresetProviderImpl());
    説明
    • クライアントが H5 のパブリックリソースパッケージを使用している場合は、パブリックリソースパッケージのコードを H5AppCenterPresetProvider インスタンスクラスにマージしてください。

    • コード例」をご参照ください。