XuqmGroup-HarmonySDK/xuqm-sdk/src/main/ets/XuqmSDK.ets

39 行
1.0 KiB
Plaintext

2026-04-21 22:07:29 +08:00
import common from '@ohos.app.ability.common'
import type { LoginSession, SDKConfig } from './core/Types'
2026-04-21 22:07:29 +08:00
import { SDKContext } from './core/SDKContext'
import { ImClient } from './im/ImClient'
import { UpdateSDK } from './update/UpdateSDK'
2026-04-21 22:07:29 +08:00
export class XuqmSDK {
private static _imClient: ImClient | null = null
static async init(context: common.UIAbilityContext, config: SDKConfig): Promise<void> {
SDKContext.init(config)
await SDKContext.initPreferences(context)
}
static async login(userId: string, userSig: string): Promise<LoginSession> {
await SDKContext.login(userId, userSig)
return SDKContext.getLoginSession()!
2026-04-21 22:07:29 +08:00
}
static async logout(): Promise<void> {
await SDKContext.logout()
2026-04-21 22:07:29 +08:00
}
static get currentLoginSession(): LoginSession | null {
return SDKContext.getLoginSession()
}
2026-04-21 22:07:29 +08:00
static get im(): ImClient {
if (!XuqmSDK._imClient) {
XuqmSDK._imClient = new ImClient()
}
return XuqmSDK._imClient
}
static get update(): UpdateSDK {
return UpdateSDK
}
2026-04-21 22:07:29 +08:00
}