39 行
1.0 KiB
Plaintext
39 行
1.0 KiB
Plaintext
import common from '@ohos.app.ability.common'
|
|
import type { LoginSession, SDKConfig } from './core/Types'
|
|
import { SDKContext } from './core/SDKContext'
|
|
import { ImClient } from './im/ImClient'
|
|
import { UpdateSDK } from './update/UpdateSDK'
|
|
|
|
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()!
|
|
}
|
|
|
|
static async logout(): Promise<void> {
|
|
await SDKContext.logout()
|
|
}
|
|
|
|
static get currentLoginSession(): LoginSession | null {
|
|
return SDKContext.getLoginSession()
|
|
}
|
|
|
|
static get im(): ImClient {
|
|
if (!XuqmSDK._imClient) {
|
|
XuqmSDK._imClient = new ImClient()
|
|
}
|
|
return XuqmSDK._imClient
|
|
}
|
|
|
|
static get update(): UpdateSDK {
|
|
return UpdateSDK
|
|
}
|
|
}
|