Lia开发者

包

的 Lia SDK 用于有构建步骤的应用。每个功能作为一个类型化、可树摇的导出,具有与脚本标签相同的检查和错误代码,以及你可以监视的状态。

npm install @lia-labs/sdk

#开始

import { init, isLia, mockLia, ready } from '@lia-labs/sdk';

if (!isLia()) mockLia(); // building in a desktop browser

const me = await init();
render(me);
ready();

init(options?) 调用Lia一次,并以与Lia相同的结果进行响应。 Lia.init(); 再次调用它会返回第一个结果。它还:

  • 保持 --lia-* CSS 变量 你页面上的当前值(用 { cssVars: false },或者调用 bindCssVars() 你自己),
  • 设置您的页面's lang 和 dir 从那个人'的语言(通过 { documentLanguage: false }),
  • 保持 SDK's 状态 来自Lia的当前值'的事件。

#从脚本标签到导入

脚本标签上的所有内容's Lia 对象是此处的命名导出,具有相同的参数、答案和错误代码。只导入您需要的内容;其余内容将不会包含在您的包中。

脚本标签@lia-labs/sdk
Lia.init(), Lia.ready(), Lia.session(), Lia.close()init(), ready(), session(), close()
Lia.pay(id, opts), Lia.charges(), Lia.onCharge(fn)pay(id, opts), charges(), onCharge(fn)
Lia.showAd(opts) 以及它的快捷方式, Lia.onAd(fn)showAd(opts), showRewardedAd(), showRewardedInterstitialAd(), showInterstitialAd(), onAd(fn)
Lia.showBanner(opts), Lia.hideBanner(), Lia.banner, Lia.onBanner(fn), Lia.showNativeAd(opts), Lia.hideNativeAd(), Lia.nativeAd, Lia.onNativeAd(fn)showBanner(opts), hideBanner(), banner, onBanner(fn), showNativeAd(opts), hideNativeAd(), nativeAd, onNativeAd(fn); 也 holdBanner(position),这会在它返回的函数被调用前显示
Lia.requestNotifications()requestNotifications()
Lia.inviteFriend(opts), Lia.inviteLink(p), Lia.share(text)inviteFriend(opts), inviteLink(p), share(text)
Lia.confirm, Lia.showPopup, Lia.showAlert, Lia.showConfirm, Lia.toast相同的名称
Lia.expand(), Lia.requestFullscreen(), Lia.exitFullscreen()相同的名称
Lia.enableExpand() … Lia.disableClosingConfirmation()相同的名称
Lia.setBackgroundColor(c), Lia.setHeaderColor(c)相同的名称
Lia.mainButton, Lia.secondaryButton, Lia.backButton, Lia.settingsButtonmainButton, secondaryButton, backButton, settingsButton
Lia.haptic, Lia.scanQr, Lia.copyText, Lia.readClipboard, Lia.openLink, Lia.openLiaLink相同的名称
Lia.submitScore, Lia.leaderboard相同的名称
Lia.cloudStorage, Lia.deviceStorage, Lia.secureStorage, Lia.biometric相同的名称
Lia.accelerometer, Lia.gyroscope, Lia.deviceOrientation相同的名称,带有 reading 和 isStarted 观看
Lia.on(event, fn), Lia.off, Lia.onPause, Lia.onResumeon(event, fn), off, once, onAny, onPause, onResume
Lia.language, Lia.theme, Lia.viewport 和其它属性language.get(), themeParams.get(), viewport.get() 和其余部分

每种方法's 参数、答案和错误都在 SDK 参考.

#观看状态

import { colorScheme, language, viewport } from '@lia-labs/sdk';

language.get(); // "en"
const stop = colorScheme.subscribe((scheme, previous) => repaint(scheme));
viewport.subscribe(({ height }) => resizeCanvas(height));

一个监听器只听到变化(从不订阅时)并且 subscribe 返回其自己的停止函数。你可以用 signal(initial) 和 computed(sources, fn).

#按钮

按钮的功能与 script 标签相同,并且会显示其状态:

import { mainButton } from '@lia-labs/sdk';

mainButton.setParams({ text: 'Buy for 5 LIA', isVisible: true });
const stop = mainButton.onClick(buy);
mainButton.state.subscribe((s) => console.log(s.isProgressVisible));

setParams 需要camelCase名称: text, color, textColor, isVisible, isActive, isProgressVisible, hasShineEffect, position. onClick 返回一个停止监听的函数。 backButton.isVisible 和 settingsButton.isVisible 也可以被监视。

要在您页面的一部分在屏幕上时显示按钮, controlBottomButton(button, options) 和 controlHeaderButton(button, onClick) 给你 update(…) 和 dispose() (dispose 隐藏它)。框架包使用这些。

#错误

每次失败都是一次 LiaError 与一个 code,与相同代码的 脚本标签. isLiaError(error, 'cancelled') 检查一个。

import { isLiaError, pay } from '@lia-labs/sdk';

try {
  await pay('extra-lives', { idempotencyKey: orderId });
} catch (error) {
  if (isLiaError(error, 'cancelled')) return;
  throw error;
}

参数在任何内容到达Lia之前进行检查,这些检查会拒绝承诺(或抛出异常,对于少数不这样调用的函数)'返回一个)。

#没有打包器

该包还有一个脚本构建,将所有内容放在 window.liaSdk:

<script src="https://unpkg.com/@lia-labs/sdk/dist/index.global.js"></script>
<script>
  liaSdk.init().then(function (me) { liaSdk.ready(); });
</script>

在页面上使用此标签或原始脚本标签,不要同时使用两者。

#TypeScript

所有内容都有类型,包括每种方法'的参数和答案,以及每个事件'的数据(Methods, Events, InitResult, ThemeParams, Charge, AdResult 和其余部分)。

自动翻译。英语是真实来源。 阅读英文

输入以搜索每一页、方法和端点。