All Products
Search
Document Center

Mobile Platform as a Service:Pustaka dasar Mini Program

Last Updated:Jan 23, 2026

Fitur Mini Program bergantung pada dukungan client.

Interaksi antara pustaka dasar dan client

Fitur Mini Program bergantung pada dukungan client:

  • Fitur baru dalam suatu versi pustaka dasar memerlukan versi client minimum tertentu agar dapat berjalan.

  • Beberapa fitur baru dalam versi pustaka dasar yang lebih baru tidak kompatibel dengan versi client lama.

Untuk informasi selengkapnya mengenai kompatibilitas pustaka dasar, lihat Pastikan kompatibilitas pustaka dasar. Anda dapat menggunakan my.SDKVersion untuk memeriksa nomor versi pustaka dasar saat ini.

Pustaka dasar yang kompatibel

Komponen dan fitur API Mini Program terus ditingkatkan. Karena versi client lama tidak mendukung fitur-fitur baru ini, Anda perlu menangani masalah kompatibilitas tersebut.

Anda dapat menggunakan antarmuka my.canIUse(String) untuk memeriksa kompatibilitas. Untuk informasi selengkapnya, lihat Referensi API.

Contoh kompatibilitas

Menangani kompatibilitas untuk API baru

Untuk API baru, Anda dapat menggunakan kode berikut untuk menentukan apakah pustaka dasar saat ini mendukung API tersebut:

if (my.getLocation) {
    my.getLocation();
} else {
// Tampilkan prompt untuk mendorong pengguna melakukan upgrade ke versi client terbaru.
  my.alert({
    title: 'Prompt',
    content: 'Versi saat ini terlalu lama untuk menggunakan fitur ini. Harap lakukan upgrade ke versi terbaru.'
  });
}

Menangani kompatibilitas untuk parameter API baru

Untuk parameter API baru, Anda dapat menggunakan metode berikut untuk memeriksa dukungan, lalu menambahkan kode penanganan Anda:

if (my.canIUse('getLocation.object.type')) {
    // Tambahkan kode penanganan Anda di sini.
} else {
    console.log('Versi saat ini tidak mendukung parameter ini')
}

Menangani kompatibilitas untuk nilai kembali API baru

Untuk nilai kembali API baru, Anda dapat menggunakan metode berikut untuk memeriksa dukungan, lalu menambahkan kode penanganan Anda:

if (my.canIUse('getSystemInfo.return.storage')) {
    // Tambahkan kode penanganan Anda di sini.
} else {
    console.log('Versi saat ini tidak mendukung nilai kembali ini')
}

Menangani kompatibilitas untuk properti komponen baru

Properti komponen baru tidak berfungsi pada versi client lama, tetapi tidak menyebabkan error. Untuk menerapkan degradasi elegan pada suatu properti, lihat kode berikut:

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

Versi pustaka dasar

Versi pustaka dasar

Pustaka dasar dan versi garis dasarnya

2.8.9

  • Android: 10.2.3

  • iOS: Garis dasar kontainer Mini Program baru cp_change_15200851 dan 10.2.3

    Catatan

    Disarankan agar kontainer Mini Program baru memprioritaskan penggunaan versi garis dasar 10.2.3.

1.14.1

10.1.68

1.14.1

10.1.60

1.9.0

10.1.32

Panduan integrasi pustaka dasar

Versi garis dasar yang berbeda memerlukan metode integrasi yang berbeda. Sebelum mengintegrasikan pustaka dasar, pastikan versi garis dasar Anda.

iOS

Versi garis dasar 10.2.3

Garis dasar kontainer Mini Program baru cp_change_15200851 dan 10.2.3 mendukung pembuatan Pustaka Dasar Mini Program 2.0.

Catatan

Disarankan agar kontainer Mini Program baru memprioritaskan penggunaan versi garis dasar 10.2.3.

Android

Versi garis dasar 10.1.68.7 dan yang lebih baru

Anda dapat mengatur instans Provider saat startup. Berikut ini contoh kodenya:

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

Jika client menggunakan paket resource publik H5, Anda harus mewarisi kelas TinyAppCenterPresetProvider dan menggabungkan kode terkait paket resource publik ke dalam instans kelas turunan tersebut.

Versi garis dasar seri 10.1.60 dan versi 10.1.68.6 serta yang lebih lama

  1. Anda dapat mengimplementasikan kelas antarmuka H5AppCenterPresetProvider. Berikut ini contoh kodenya:

     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";
    
         // Setel paket resource khusus untuk Mini Program. ID ini bersifat tetap dan tidak dapat diubah.
         private static final String TINY_COMMON_APP = "66666692";
    
         // Folder asset untuk paket preset.
         private final static String NEBULA_APPS_PRE_INSTALL = "nebulaPreset" + File.separator;
    
         // Kumpulan paket preset.
         private static final Map<String, H5PresetInfo> NEBULA_LOCAL_PACKAGE_APP_IDS = new HashMap();
    
         static {
    
             H5PresetInfo h5PresetInfo2 = new H5PresetInfo();
             // Nama file di folder bawaan.
             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;
         }
    
         /**
          * Menyetel ID paket resource yang dapat didegradasi.
          */
         @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. Unduh pustaka dasar Mini Program yang sesuai dengan versi client yang diintegrasikan. Salin pustaka dasar tersebut ke folder asset yang ditentukan pada langkah sebelumnya dan ubah namanya. Berdasarkan contoh kode pada langkah sebelumnya, path pustaka dasar Mini Program adalah assets/nebulaPreset/66666692.

  3. Anda dapat mengatur instans Provider saat startup. Berikut ini contoh kodenya:

     H5Utils.setProvider(H5AppCenterPresetProvider.class.getName(), new H5AppCenterPresetProviderImpl());
    Catatan

    • Jika client menggunakan paket resource publik H5, Anda harus menggabungkan kode terkait paket resource publik ke dalam kelas instans H5AppCenterPresetProvider.

    • Untuk informasi selengkapnya, lihat Contoh kode.