Referensi SDK
Ringkasan SDK
Salin halaman
Memuat Lia SDK, properti objek Lia, bagaimana panggilan menjawab dan gagal, serta indeks setiap metode.
#Memuatnya
<script src="https://api.lialabs.org/sdk/lia-apps-v1.js"></script>Muat dari Lia, sebelum skrip Anda sendiri. Ini mendefinisikan satu global, window.Lia, sekali (memuatnya dua kali tidak ada yang terjadi). Itu'plain JavaScript __s__ tanpa ketergantungan, dan berjalan dengan kerangka kerja apa pun atau tanpa kerangka kerja. Halaman ini menjelaskan versi 1.9.0.
Di TypeScript, deklarasikan global hingga ada's paket tipe:
declare global {
interface Window { Lia: any }
}
const Lia = window.Lia;#Bagaimana panggilan menjawab
- Kebanyakan metode mengembalikan sebuah promise. Ini akan menyelesaikan dengan jawaban yang dijelaskan untuk setiap metode, atau menolak dengan sebuah
Erroryang memiliki sebuahcode(dan sebuahmessagedalam bahasa Inggris untuk Anda, bukan untuk pemain). - Argumen yang buruk juga ditolak, dengan kode seperti
bad_text, sebelum apa pun sampai Lia. Beberapa metode yang tidak'tidak mengembalikan janji (Lia.inviteLink,Lia.on, tombol' pengatur (setters) melemparkan alih-alih. - Di luar aplikasi Lia, setiap panggilan menolak dengan
not_in_lia.Lia.availablememberi tahu Anda secara langsung. - Lia harus menjawab dalam 20 detik, atau panggilan ditolak dengan
timeout. Panggilan yang menunggu orang (lembar pembayaran, iklan, dialog, pemilih teman, permintaan notifikasi, pemindai, clipboard, Face ID, berbagi) menunggu sepanjang yang diperlukan.
try {
const result = await Lia.pay("extra-lives");
} catch (error) {
switch (error.code) {
case "cancelled": return; // they changed their mind
case "not_in_lia": return showOpenInLia();
default: Lia.toast("Something went wrong", { tone: "error" });
}
}Setiap kode ada di Kode kesalahan.
#Properti
Baca ini setelahnya Lia.init() telah menjawab; sebelumnya mereka memiliki nilai default. Kebanyakan tetap diperbarui oleh Lia'acara.
| Properti | Jenis | Apa itu |
|---|---|---|
Lia.version | string | The SDK'versi mereka, misalnya "1.9.0". |
Lia.available | boolean | true di dalam aplikasi Lia. Diketahui segera setelah skrip dimuat. |
Lia.platform | string | "ios" atau "android" ("unknown" sebelum init()). |
Lia.language | string | Orang tersebut'bahasa dalam Lia: en, es, pt, fr, tr, ru, vi, id, fil, sw, hi, ar atau zh. Lihat Bahasa. |
Lia.rtl | boolean | Apakah bahasa tersebut dibaca dari kanan ke kiri (Arab). |
Lia.colorScheme | string | "light" atau "dark". |
Lia.theme | objek | Lia'warna mereka, seperti bg_color, text_color dan sisanya. Lihat Lia'tema s. |
Lia.viewport | objek | { height, expanded }: halaman Anda'tinggi header dalam px, dan apakah lembaran berada pada tinggi penuh. |
Lia.safeArea | objek | { top, bottom, left, right }: ponsel'area aman dalam px. |
Lia.contentSafeArea | objek | { top, bottom, left, right }: juga bersih dari Lia'kontrol mengambang di fullscreen. |
Lia.display | string | Bagaimana aplikasi Anda dibuka: "sheet", "full" atau "fullscreen". |
Lia.isFullscreen | boolean | Apakah itu'sisi ke sisi sekarang. |
Lia.startParam | string atau null | Apa yang dibuka dengan: undangan'tautan'atau notifikasi' startParam. null ketika dibuka dari Apps Center. |
Lia.soundOn | boolean | Apakah orang tersebut ingin aplikasi Anda'suara. |
Lia.notificationsAllowed | boolean | Apakah orang ini mengizinkan aplikasi Anda mengirimkan notifikasi kepadanya. |
#Lia.isVersionAtLeast(version)
Apakah SDK setidaknya versi ini, untuk fitur yang ditambahkan kemudian.
if (Lia.isVersionAtLeast("1.3")) Lia.inviteFriend({ startParam: room });| Parameter | Jenis | |
|---|---|---|
version | string | Suka "1.3" atau "1.3.0". |
Mengembalikan boolean (bukan promise).
#CSS variabel
Setelah init(), SDK menetapkan ini di halaman Anda'akar dan menjaganya tetap diperbarui: Lia'tema s (--lia-bg-color dan sisanya), --lia-color-scheme, --lia-viewport-height, --lia-safe-area-inset-* dan --lia-content-safe-area-inset-*. Lihat Tampilan dan nuansa.
#Setiap metode
| Area | Metode |
|---|---|
| Startup dan siklus hidup | Lia.init, Lia.ready, Lia.session, Lia.close, Lia.on, Lia.off, Lia.onPause, Lia.onResume |
| Pembayaran dan iklan | Lia.pay, Lia.charges, Lia.onCharge, Lia.showAd, Lia.showRewardedAd, Lia.showRewardedInterstitialAd, Lia.showInterstitialAd, Lia.onAd |
| Notifikasi dan undangan | Lia.requestNotifications, Lia.inviteFriend, Lia.inviteLink, Lia.share |
| Dialog | Lia.confirm, Lia.showPopup, Lia.showAlert, Lia.showConfirm, Lia.toast |
| Tata letak, warna dan tombol | Lia.expand, Lia.requestFullscreen, Lia.exitFullscreen, Lia.enableExpand, Lia.disableExpand, Lia.enableVerticalSwipes, Lia.disableVerticalSwipes, Lia.enableClosingConfirmation, Lia.disableClosingConfirmation, Lia.setBackgroundColor, Lia.setHeaderColor, Lia.mainButton, Lia.secondaryButton, Lia.backButton, Lia.settingsButton |
| Perangkat | Lia.haptic, Lia.scanQr, Lia.copyText, Lia.readClipboard, Lia.openLink, Lia.openLiaLink, Lia.biometric, Lia.accelerometer, Lia.gyroscope, Lia.deviceOrientation |
| Skor dan penyimpanan | Lia.submitScore, Lia.leaderboard, Lia.cloudStorage, Lia.deviceStorage, Lia.secureStorage |
#Berasal dari Telegram
Lia's SDK mengikuti Telegram's Mini Aplikasi di mana sesuai, jadi sebagian besar ide bisa dibawa ke sana:
| Telegram | Lia |
|---|---|
Telegram.WebApp.initData | Lia.init() jawaban dengan token sesi yang server Anda verifikasi dengan POST /session/verify. |
themeParams, --tg-theme-* | Lia.theme, --lia-* (nama yang sama) |
MainButton, SecondaryButton, BackButton, SettingsButton | Lia.mainButton, Lia.secondaryButton, Lia.backButton, Lia.settingsButton |
HapticFeedback | Lia.haptic(kind) |
CloudStorage, DeviceStorage, SecureStorage | Lia.cloudStorage, Lia.deviceStorage, Lia.secureStorage (promises, bukan callbacks) |
showPopup, showAlert, showConfirm | Yang sama, sebagai janji |
openInvoice dan Bintang-bintang | Lia.pay(productId), dibayar dalam $LIA |
start_param | Lia.startParam |
#Analitik web-app
Lia.analytics (SDK 1.8) mencatat penggunaan aplikasi web opsional di Lia Labs' OpenPanel proyek. Ini bekerja dengan build iOS dan Android saat ini. Ini adalah pilihan terpisah dari saklar "Bagikan data penggunaan" di aplikasi native.
Ketika halaman Anda memanggil Lia.ready(), SDK memeriksa apakah analitik diaktifkan oleh tim dan bertanya sekali jika pemain ini belum memilih untuk aplikasi ini. Menolak tidak mengirimkan peristiwa. Tombol privasi kecil memungkinkan orang tersebut mengubah pilihannya nanti. Pilihan disimpan per pemain dan aplikasi web di server Lia's. Tidak ada peristiwa analitik yang ditunda sebelum persetujuan atau diputar ulang setelah menolak.
Lia.analytics.allowed: apakah halaman ini saat ini memiliki izin.Lia.analytics.requestConsent(): membuka kembali pilihan privasi dan menjawabtruehanya setelah izin.Lia.analytics.disable(): segera menghentikan pengiriman halaman ini dan menyimpan penolakan.Lia.analytics.track(name, properties?): menjawab apakah suatu peristiwa dikirim; kegagalan tidak pernah menghentikan permainan Anda. Nama menggunakan huruf kecil, angka, dan garis bawah, dimulai dengan huruf, dan maksimal 48 karakter. Properti memungkinkan hingga 12 nilai numerik atau boolean, dengan kunci identifikasi huruf kecil hingga 32 karakter.
await Lia.init();
Lia.ready();
// Only sends when the person has already agreed. Never prompt during a round.
await Lia.analytics.track("round_finished", { level: 3, score: 120, won: true });The SDK records opening and resuming after consent. Add your own static event names for gameplay milestones. Do not use names, emails, messages, URLs, free text or account identifiers as event names. Text properties are rejected. The collector adds the app id and live/test mode, checks the signed session, rechecks consent, respects the team’s analytics off switch, and limits events to 60 per player per app per minute. It forwards aggregate events without a player profile id, page URLs, form values or the person’s IP address.
Pelacak menggunakan POST /api/web-analytics/consent dan /track dengan sesi aplikasi yang ditandatangani baru. Endpoint yang dimiliki SDK ini tidak memerlukan kunci API pengembang. Kredensial OpenPanel tetap di server Lia.
Metode analitik ini tersedia di SDK yang dihosting dan dimuat melalui tag script. Tautan undangan dan lobi tidak pernah membuka permintaan persetujuan secara otomatis; tombol privasi tetap tersedia.
Diterjemahkan otomatis. Bahasa Inggris adalah sumber kebenaran. Baca dalam Bahasa Inggris