Ikhtisar
Topik ini menjelaskan praktik terbaik untuk mengelola program mini di Superapp dalam skenario berikut:
Mencari program mini.
Menampilkan program mini di stan rekomendasi.
Menambahkan program mini ke favorit.
Mengambil program mini yang baru saja digunakan.
Skenario
Cari program mini tertentu atau ambil semua program mini pada klien
Pengenalan
Bagian ini menjelaskan cara dengan cepat mencari program mini tertentu atau mengambil semua program mini pada klien.
Detail Solusi
Application Open Platform menyediakan API operasi siap pakai untuk mencari program mini pada klien dan menawarkan API operasi kontainer untuk program mini. Jika Anda ingin mengambil semua program mini, Anda dapat langsung memanggil operasi API tertentu tanpa perlu menentukan kata kunci.

Referensi API
Anda dapat memanggil operasi API untuk mencari program mini tertentu. Untuk informasi lebih lanjut, lihat "Cari program mini tertentu" di bagian SDK Open APIs dari topik ini.
Anda dapat memanggil operasi API untuk mengambil data semua program mini. Untuk informasi lebih lanjut, lihat "Ambil semua program mini" di bagian SDK Open APIs dari topik ini.
Tampilkan program mini di stan rekomendasi
Pengenalan
Bagian ini menjelaskan cara menggunakan stan rekomendasi tetap untuk program mini di Superapp guna memfasilitasi pemasaran masuk dari program mini tertentu.
Detail Solusi
Di Superapp, logika untuk menampilkan stan rekomendasi untuk program mini diimplementasikan secara otomatis. Anda dapat menggunakan layanan manajemen stan Superapp untuk mengintegrasikan API Application Open Platform demi menemukan aplikasi online.

Referensi API
Anda dapat memanggil operasi API di layanan manajemen stan untuk menampilkan program mini di stan rekomendasi. Untuk informasi lebih lanjut, lihat "Kueri program mini pada klien" dan "Kueri metadata program mini yang diterbitkan" di bagian SuperApp Channel Management Open APIs dari topik ini.
Tambahkan program mini ke favorit
Pengenalan
Bagian ini menjelaskan cara menambahkan program mini ke favorit sehingga Anda dapat dengan cepat memulai program mini tersebut.
Detail Solusi
Saat mengintegrasikan kontainer, implementasikan antarmuka penyedia layanan (SPI) yang digunakan untuk menambahkan program mini ke favorit.

Referensi API
Anda dapat memanggil operasi API pada klien untuk menambahkan program mini ke favorit. Untuk informasi lebih lanjut, lihat "Tambahkan program mini ke favorit" di bagian SDK Open APIs dari topik ini.
Anda dapat memanggil operasi API pada server untuk mengkueri metadata program mini. Untuk informasi lebih lanjut, lihat "Kueri metadata program mini yang diterbitkan" di bagian SuperApp Channel Management Open APIs dari topik ini.
Dapatkan program mini yang baru saja digunakan
Pengenalan
Bagian ini menjelaskan cara mendapatkan daftar program mini yang baru saja digunakan.
Detail Solusi
Integrasikan kontainer program mini untuk mengaktifkan SPI event.

Referensi API
Anda dapat memanggil operasi API pada klien untuk menyimpan program mini ke daftar baru-baru ini. Untuk informasi lebih lanjut, lihat "Simpan program mini ke daftar baru-baru ini" di bagian SDK Open APIs dari topik ini.
Anda dapat memanggil operasi API pada server untuk mengkueri metadata program mini. Untuk informasi lebih lanjut, lihat "Kueri metadata program mini yang diterbitkan" di bagian SuperApp Channel Management Open APIs dari topik ini.
Open APIs
SuperApp Channel Management Open APIs
SuperApp Channel Management Open APIs adalah antarmuka layanan backend tingkat Channel yang disediakan oleh Application Open Platform, menggunakan AccessKey dan SecretKey dari target APP untuk penandatanganan dan verifikasi.
Kueri Program Mini pada App
Path:
/openapi/v1/channel/miniapp/searchMethod: POST
Content-Type: application/json
Body:
{ "after": "0", # Halaman pertama dimulai dari "0", dan posisi awal halaman berikutnya merujuk pada bidang "after" dalam hasil yang dikembalikan. "limit": 10, # Jumlah program mini yang ingin Anda kueri. "keyWord": "demo" # Kata kunci untuk kueri. }Response:
{ "success":true, "model":{ "after":"64", # Posisi awal halaman berikutnya, jika nilai ini sama dengan "-1", menunjukkan akhir dari kueri. "size":2, "data":[ { "id":390, "appId":"1511654371932651552768", "miniappCode":"1511654371932651552768", "publishServicePlanId":"P442675078547163136", "name":"uniapp-hll-0505", "version":"1.0.1", "description":"", "slogan":"11111", "platform":"MiniApp", "framework":"UniApp", "icon":"icon/app/50112037081b4d5e9955f43aae22fb0d.jpeg", "publicIcon":"https://ceph-pre1.emas-poc.com/emas-cdn/publish/intercnn/icon/app/50112037081b4d5e9955f43aae22fb0d.jpeg" }, { "id":64, "appId":"1511608276458218872832", "miniappCode":"1511608276458218872832", "publishServicePlanId":"P396236781277202432", "name":"HllwindVane1129", "version":"0.0.2", "description":"", "slogan":"", "platform":"MiniApp", "framework":"WindVane", "icon":"icon/app/b4d6ff4f9111470c95f4ac2ef1c3079d.jpeg", "publicIcon":"http://cxfe-daily.oss-cn-hangzhou.aliyuncs.com/icon/app/b4d6ff4f9111470c95f4ac2ef1c3079d.jpeg?Expires=1672281817&OSSAccessKeyId=LTAI****************&Signature=ZpoXL%2Bo4UGHAcgIQTMPQc30sQ1c%3D" } ] } }
Kueri Metadata Program Mini yang Diterbitkan
Path:
/openapi/v1/channel/miniappMethod: POST
Content-Type: application/json
Body:
{ "miniappCode": "1511654371932651552768" }Response:
{ "success":true, "model":{ "channelCode":"1611606158604452241408", "gmtCreate":1683268112168, "gmtModified":1683350460819, "description":{ "inuseStatus":"ACTIVE", "description":"", "icon":"icon/app/50112037081b4d5e9955f43aae22fb0d.jpeg", "iconPublicUrl":"http://47.103.XXX.XX:7480/intercnn/icon/app/50112037081b4d5e9955f43aae22fb0d.jpeg?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Date=20230804T092821Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3599&X-Amz-Credential=IW2NNNAI0D8J2K8F7BPX%2F20230804%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Signature=094773e26ff4ab9ec84e091367670ac007e9b43208bce59fbadd2bece7a3cc46" }, "platform":"MiniApp", "framework":"UniApp", "publishStatus":"ONLINE", "onlineVersion":"1.0.1" } }
Kueri Kategori Sebuah Aplikasi
Path:
/openapi/v1/channel/category/listMethod: POST
Content-Type: application/json
Header: x-locale: zh_CN/en_US (default)
Body:
{}Response:
{ "success":true, "model":[ { "name":"Tagihan", "channelCode":"1611606158604452241408", "categoryId":1, "status":"ENABLE", "sort":0, "gmtCreate":1690366685363, "gmtModified":1690366685363 }, { "name":"Makanan & Minuman", "channelCode":"1611606158604452241408", "categoryId":3, "status":"ENABLE", "sort":1, "gmtCreate":1690366685365, "gmtModified":1690366685365 } ] }
Kueri Program Mini yang Terikat pada Kategori Aplikasi
Path:
/openapi/v1/channel/category/miniapp/listMethod: POST
Content-Type: application/json
Body:
{ "categoryId": 1L }Response:
{ "success":true, "model":[ { "name":"third-party-uniapp", "icon":"icon/channel/default_miniapp_icon.png", "iconPublicUrl":"http://47.103.XXX.XX:7480/intercnn/icon/channel/default_miniapp_icon.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Date=20230804T094401Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3599&X-Amz-Credential=IW2NNNAI0D8J2K8F7BPX%2F20230804%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Signature=e515ba8ade8f66d0473c8c407b5a9b90385f5e6cba1a2b9e885232f3a6969020", "channelCode":"1611606158604452241408", "categoryId":3, "miniappCode":"1511686301389817548800", "channelTagName":"HOTHOTHOTHOTHOTHOTHOTHOTHOT", "publishStatus":"ONLINE", "onlineVersion":"0.0.1", "sort":0, "gmtCreate":1690882000531, "gmtModified":1690882032947 } ] }
Konstruksi Header Permintaan
Parameter Header Permintaan
Header permintaan berisi bidang-bidang berikut:
Bidang | Diperlukan | Contoh kode |
X-Request-Sign | Ya | X-Request-Sign: **** |
X-Access-Key | Ya | X-Access-Key: 46b1cac78ed94ca4b99ad6de550afb6 |
Content-Type | Tidak | Content-Type: application/json; charset=UTF-8 |
X-Request-Timestamp | Ya | X-Request-Timestamp: 1676904384074 |
Metode Pembuatan Tanda Tangan
Pertama, dapatkan accessKey dan secretKey aplikasi dari SuperApp Open Platform. Tentukan properti berikut yang digunakan untuk membangun konten yang akan ditandatangani:
HTTP_URI : contohnya
/openapi/v1/channel/miniapp/searchX-Access-Key:46b1cac78ed94ca4b99ad6de550a****
X-Request-Timestamp:1676904384074
HTTP_BODY : Kode berikut memberikan contoh badan permintaan HTTP:
{ "after": "0", # Halaman pertama dimulai dari "0", dan posisi awal halaman berikutnya merujuk pada bidang "after" dalam hasil yang dikembalikan. "limit": 10, # Jumlah program mini yang ingin Anda kueri. "keyWord": "demo" # Kata kunci untuk kueri. }
Bangun
konten yang akan ditandatanganidalam format berikut berdasarkan informasi sebelumnya: <HTTP_METHOD> <HTTP_URI>\n<HTTP_BODY>.<Request-Time>.<Access-Key>POST /openapi/v1/channel/miniapp/search { "after": "0", "limit": 10, "keyWord": "demo" }.1676904384074.46b1cac78ed94ca4b99ad6de550a****Gunakan algoritma HmacSHA1 untuk menghasilkan tanda tangan.
Kode berikut memberikan contoh cara menambahkan tanda tangan ke permintaan:
import org.apache.commons.lang3.StringUtils; import javax.crypto.Mac; import javax.crypto.spec.SecretKeySpec; import java.nio.charset.StandardCharsets; import java.security.InvalidKeyException; import java.security.NoSuchAlgorithmException; import java.util.Base64; public class SignDemo { private static final char[] HEX = new char[] {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f'}; public static String sign(String requestURI, String accessKey, String secretKey, Long requestTime, String requestBody) { String content = String.format("POST %s\n%s.%s.%s", requestURI, requestBody, requestTime, accessKey); String signed = generateSign(content, secretKey, "HmacSHA1"); return Base64.getEncoder().encodeToString(signed.getBytes(StandardCharsets.UTF_8)); } public static String generateSign(String content, String key, String algorithm) { if (!StringUtils.isEmpty(algorithm) && !StringUtils.isEmpty(content) && null != key) { try { SecretKeySpec signinKey = new SecretKeySpec(key.getBytes(), algorithm); Mac mac = Mac.getInstance(algorithm); mac.init(signinKey); byte[] rawHmac = mac.doFinal(content.getBytes()); return convertToHex(rawHmac); } catch (InvalidKeyException | NoSuchAlgorithmException var6) { return ""; } } else { return ""; } } public static String convertToHex(byte[] bytes) { int len = bytes.length; StringBuilder buf = new StringBuilder(len * 2); for (int j = 0; j < len; ++j) { buf.append(HEX[bytes[j] >> 4 & 15]); buf.append(HEX[bytes[j] & 15]); } return buf.toString(); } }Kirim permintaan
Tambahkan X-Access-Key, X-Request-Timestamp, dan X-Request-Sign ke header permintaan untuk membangun permintaan berikut:
curl -X POST \
https://example.com/openapi/v1/channel/miniapp/search \
-H 'Content-Type: application/json' \
-H 'X-Access-Key: 46b1cac78ed94ca4b99ad6de550afb68' \
-H 'X-Request-Timestamp: 1676904384074' \
-H 'X-Request-Sign: KrwDE9tAPJYBb4cUZU6ALJxGIZgwDXn5UkFPMip09n%2FkYKPhEIII%2Fki2rYY2lPtuKVgMNz%2BtuCU%2FjzRpohDbrOd8zYriiukpGAxBQDIVbatGI7WYOcc9YVQwdCR6ROuRQvr%2FD1AfdhHd6waAASu5Xugow9w1OW7Ti93LTd0tcyEWQYd2S7c3A73sHOJNYl8DC1PjasiBozZ%2FADgb7ONsqHo%2B8fKHsLygX9cuMkQYTGIRBQsvfgICnJhh%2BzXV8AQoecJBTrv6p%xxxx' \
-d '{
"after": "0",
"limit": 10,
"keyWord": "demo"
}'SuperApp Space Management Open APIs
SuperApp Space Management Open APIs adalah antarmuka layanan backend tingkat Space yang disediakan oleh Application Open Platform, berdasarkan AccessKey dan SecretKey akun administrator Space untuk penandatanganan dan verifikasi. Dalam banyak kasus, Open-API ini digunakan untuk menyinkronkan data relevan di ruang Application Open Platform.
Kueri Aplikasi atau Saluran Tertentu
Path:
/openapi/v1/space/channel/queryMethod: POST
Content-Type: application/json
Body:
{ "spaceCode": "1531602854311704010754", "currentPage": 1, "pageSize": 10 }Response:
{ "success":true, "model":{ "total":5, "list":[ { "spaceCode":"1531602854311704010754", "channelCode":"1611608397718512873472", "gmtCreate":1672306873348, "gmtModified":1677137552998, "name":"2test channel by gdm", "icon":"icon/channel/7aa28302a4b44859b397d2438e19d22d.png", "iconPublicUrl":"http://47.103.XXX.XX:7480/intercnn/icon/channel/7aa28302a4b44859b397d2438e19d22d.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Date=20230804T095150Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Credential=IW2NNNAI0D8J2K8F7BPX%2F20230804%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Signature=f19482bc1e94100672c50846df67cf8668f329503292dbab6bcfb21bb95ee043", "description":"test channel of description", "status":"ONLINE" }, { "spaceCode":"1531602854311704010754", "channelCode":"1611638746437729390592", "gmtCreate":1679542571898, "gmtModified":1684482439359, "name":"jkkjkj", "icon":"icon/channel/db6330e973404d1183fbc9e38f207b7e.jpeg", "iconPublicUrl":"http://47.103.XXX.XX:7480/intercnn/icon/channel/db6330e973404d1183fbc9e38f207b7e.jpeg?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Date=20230804T095150Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Credential=IW2NNNAI0D8J2K8F7BPX%2F20230804%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Signature=4b5cf7c56d52a6a812ebd8169ab04b5744f39fea5a076e53e626db92255c4968", "description":"demo", "status":"ONLINE" } ], "pageSize":10, "current":1, "empty":false, "totalPages":1 } }
Kueri Program Mini
Path:
/openapi/v1/space/miniapp/queryMethod: POST
Content-Type: application/json
Body:
{ "spaceCode": "1531602854311704010754", "currentPage": 1, "pageSize": 10 }Response:
{ "success":true, "model":{ "total":45, "list":[ { "spaceCode":"1531602854311704010754", "miniappCode":"1511686305220810936320", "gmtCreate":1690881469335, "gmtModified":1690881469335, "platform":"MiniApp", "framework":"WindVane", "name":"third-party 111", "description":"", "slogan":"", "icon":"icon/channel/default_miniapp_icon.png", "iconPublicUrl":"http://47.103.XXX.XX:7480/intercnn/icon/channel/default_miniapp_icon.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Date=20230804T095456Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Credential=IW2NNNAI0D8J2K8F7BPX%2F20230804%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Signature=5d121004dd1bfee918ce3504f67fa541104f3556b13d57ff8b27212e99043acb" }, { "spaceCode":"1531602854311704010754", "miniappCode":"1511686243166489821184", "gmtCreate":1690866674445, "gmtModified":1690874095536, "platform":"MiniApp", "framework":"WindVane", "name":"teest", "description":"", "slogan":"", "icon":"icon/channel/default_miniapp_icon.png", "iconPublicUrl":"http://47.103.XXX.XX:7480/intercnn/icon/channel/default_miniapp_icon.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Date=20230804T095456Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Credential=IW2NNNAI0D8J2K8F7BPX%2F20230804%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Signature=5d121004dd1bfee918ce3504f67fa541104f3556b13d57ff8b27212e99043acb" } ], "pageSize":5, "current":1, "empty":false, "totalPages":9 } }
Kueri Informasi Publikasi Program Mini
Path:
/openapi/v1/space/miniapp/publishMethod: POST
Content-Type: application/json
Body:
{ "spaceCode": "1531602854311704010754", "currentPage": 1, "pageSize": 10 }Response:
{ "success":true, "model":{ "spaceCode":"1531602854311704010752", "miniappCode":"1511687342586899365888", "gmtCreate":1691128796684, "gmtModified":1691134056419, "platform":"MiniApp", "framework":"WindVane", "name":"WTF0804", "description":"", "slogan":"", "icon":"icon/channel/default_miniapp_icon.png", "iconPublicUrl":"http://47.103.XXX.XX:7480/intercnn/icon/channel/default_miniapp_icon.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Date=20230804T100031Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Credential=IW2NNNAI0D8J2K8F7BPX%2F20230804%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Signature=59143f1fff5a849b08e4046590f972f4740f38fe5f899d38deffcfb92061c9db", "publishMiniappInfo":[ { "channelCode":"1611606158604452241408", "channelName":"SuperApp Channel test1", "channelIcon":"icon/channel/393eaa3f7fef4205b34e5817310e6cf2.jpeg", "channelIconPublicUrl":"http://47.103.XXX.XX:7480/intercnn/icon/channel/393eaa3f7fef4205b34e5817310e6cf2.jpeg?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Date=20230804T100031Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3599&X-Amz-Credential=IW2NNNAI0D8J2K8F7BPX%2F20230804%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Signature=716456ad0355b10475da9afa6b0bc5c976a84d40c21fb1b4b3990cefa15bcab6", "gmtCreate":1691129052113, "gmtModified":1691134073490, "miniappCode":"1511687342586899365888", "onlineVersion":"0.0.5", "publishStatus":"ONLINE", "description":{ "inuseStatus":"ACTIVE", "name":"0.0.5", "description":"", "icon":"icon/channel/default_miniapp_icon.png", "iconPublicUrl":"http://47.103.xxx.xxx:7480/intercnn/icon/channel/default_miniapp_icon.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Date=20230804T100031Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3599&X-Amz-Credential=IW2NNNAI0D8J2K8F7BPX%2F20230804%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Signature=c419ed372b6827aa5ba540f95c4edad4bb8c168a37cb0005f3220922cb4dcd63" } } ] } }
Konstruksi Header Permintaan
SuperApp space management openapi tanda tangan menggunakan accessKey dan secretKey akun administrator ruang pihak pertama. Silakan hubungi tim operasi SuperApp Open Platform untuk mendapatkan nilai yang sesuai. Parameter header permintaan dan metode pembuatan tanda tangan sama dengan "SuperApp Channel Management Open APIs".
SDK Open APIs
Tambahkan Program Mini ke Favorit
Android
ServiceManager.getInstance().registerService(IMiniAppFavoriteService.class.getName(), new IMiniAppFavoriteService() { @Override public void addToFavorites(String appId, ServiceCallback callback) { // Tambahkan program mini ke favorit. Hasilnya dikembalikan melalui callback. } @Override public void removeFromFavorites(String appId, ServiceCallback callback) { // Hapus program mini dari favorit. Hasilnya dikembalikan melalui callback. } @Override public boolean isFavorite(String appId) { // Periksa apakah program mini telah ditambahkan ke favorit. return false; } });iOS
[[EMASServiceManager sharedInstance] registerServiceProtocol:@"EMASMiniAppFavoriteService" IMPClass:@"EMASMiniAppFavoriteServiceImpl" target:nil]; @implementation EMASMiniAppFavoriteServiceImpl - (void)addToFavorites:(NSString*)subAppCode completion:(nonnull EMASFavoriteCompletionBlock)completionBlock{ // Tambahkan program mini ke favorit. Hasilnya dikembalikan melalui block. } - (void)removeFromFavorites:(NSString*)subAppCode completion:(nonnull EMASFavoriteCompletionBlock)completionBlock{ // Hapus program mini dari favorit. Hasilnya dikembalikan melalui block. } - (BOOL)isFavorite:(NSString*)subAppCode { // Periksa apakah program mini telah ditambahkan ke favorit. return NO; } @end
Simpan Program Mini ke Daftar Baru-baru Ini
Android
IMiniAppService miniAppService = ServiceManager.getInstance().getService(IMiniAppService.class.getName()); if (miniAppService != null) { miniAppService.openMiniApp(mItemView.getContext(), ((MiniAppInfo) data).getAppId(), null, new OnOpenMiniAppListener() { @Override public void onOpenMiniApp() { } @Override public void onOpenSuccess(String appId) { // Simpan program mini ke daftar baru-baru ini saat program mini dimulai. } @Override public void onOpenFailed(String appId, int errorCode) { } }); }iOS
id<EMASMiniAppService> miniAppService = [[EMASServiceManager sharedInstance] serviceForProtocol:@"EMASMiniAppService"]; if (miniAppService) { [miniAppService openMiniApp:appId openConfiguration:nil completionBlock:^(int resultCode, NSDictionary * _Nonnull resultDict) { // Jika nilai resultCode adalah 200, program mini telah dimulai. // Simpan program mini ke daftar baru-baru ini. }]; }
Kueri Metadata Program Mini
CatatanJika Anda ingin mendapatkan metadata real-time dari program mini pada klien, Anda dapat memanggil operasi API kontainer.
Android
IMiniAppService miniAppService = ServiceManager.getInstance().getService(IMiniAppService.class.getName()); if (miniAppService != null) { // Parameter appIds menentukan ID program mini yang metadata-nya ingin Anda kueri. miniAppService.getMiniAppInfos(this, appIds, new OnGetMiniAppsListener() { @Override public void onSuccess(List<MiniAppInfo> miniAppInfos) { // Metadata program mini dikembalikan. } @Override public void onFailed(int errorCode) { } }); }iOS
id<EMASMiniAppService> miniAppService = [[EMASServiceManager sharedInstance] serviceForProtocol:@"EMASMiniAppService"]; if (miniAppService) { // Parameter appIds menentukan ID program mini yang metadata-nya ingin Anda kueri. [miniAppService getMiniAppInfo:appIds completionBlock:^(int resultCode, NSArray * _Nonnull miniApps) { // Jika nilai resultCode adalah 200, metadata program mini telah di-query. // Metadata program mini dikembalikan. }]; }
Cari Program Mini Tertentu
Android
IMiniAppService miniAppService = ServiceManager.getInstance().getService(IMiniAppService.class.getName()); if (miniAppService != null) { // Kata kunci untuk pencarian. miniAppService.queryMiniApps(this, keyword, new OnQueryMiniAppsListener() { @Override public void onSuccess(List<MiniAppInfo> miniAppInfos, String anchor) { // Hasil pencarian dikembalikan. Secara default, maksimum 10 program mini dapat diperoleh. Parameter anchor digunakan untuk mendapatkan lebih banyak program mini. } @Override public void onFailed(int errorCode) { } }); }iOS
id<EMASMiniAppService> miniAppService = [[EMASServiceManager sharedInstance] serviceForProtocol:@"EMASMiniAppService"]; if (miniAppService) { // Parameter keyword menentukan kata kunci pencarian. Nilai default anchor adalah 0. [miniAppService queryMiniApps:keyword anchor:anchor completionBlock:^(int resultCode, NSArray * _Nonnull miniApps, NSString *anchor) { // Jika nilai resultCode adalah 200, pencarian berhasil. // Hasil pencarian dikembalikan. Secara default, maksimum 10 program mini dapat diperoleh. Parameter anchor digunakan untuk mendapatkan lebih banyak program mini. }]; }
Ambil Semua Program Mini
Android
IMiniAppService miniAppService = ServiceManager.getInstance().getService(IMiniAppService.class.getName()); if (miniAppService != null) { // Biarkan kata kunci kosong. miniAppService.getMiniAppList(this, new OnGetMiniAppsListener() { @Override public void onSuccess(List<MiniAppInfo> miniAppInfos, String anchor) { // Daftar program mini dikembalikan. Secara default, maksimum 10 program mini dapat diperoleh. Parameter anchor digunakan untuk mendapatkan lebih banyak program mini. } @Override public void onFailed(int errorCode) { } }); }iOS
id<EMASMiniAppService> miniAppService = [[EMASServiceManager sharedInstance] serviceForProtocol:@"EMASMiniAppService"]; if (miniAppService) { // Nilai default parameter anchor adalah 0. [miniAppService getMiniAppList:anchor completionBlock:^(int resultCode, NSArray * _Nonnull miniApps, NSString *anchor) { // Jika nilai resultCode adalah 200, semua program mini telah diambil. // Daftar program mini dikembalikan. Secara default, maksimum 10 program mini dapat diperoleh. Parameter anchor digunakan untuk mendapatkan lebih banyak program mini. }]; }