XuqmGroup
|
b1e8e307d2
|
feat(sdk): 按跨平台规范重构所有 SDK 包接口
- common: setUserInfo 成为认证枢纽,分发订阅者;移除 init()/initializeFromLicense();
initWithConfigFile 解密后调用 initialize() 拉取远程服务配置;XuqmConfig 增加服务开通标志
- push: 移除独立 initialize/registerToken/unregisterToken 等方法;
改由 _registerUserInfoHandler 订阅,setUserInfo 时自动完成厂商检测+设备注册+token上报
- im: 新增 refreshToken();注册 setUserInfo 订阅,自动登录/断连;移除对 PushSDK 的直接调用
- update: 支持 registerPlugins(批量) + registerPlugin(向后兼容);
版本号自动从 AsyncStorage 读取,移除 version 字段;新增 updatePlugin(一步完成)、
downloadAndInstallApk、setBundleCallbacks 注入宿主写入/重载能力
- license: 移除独立 initialize/initializeFromFile;依赖 getConfig() 获取 appKey/licenseUrl
- 顶层 src/sdk.ts: 移除旧 login/logout 包装层,直接重导出 CommonXuqmSDK
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-06-15 10:57:55 +08:00 |
|
XuqmGroup
|
ab30b28f3d
|
feat: v0.3.0 — 自动初始化 + 插件更新 + 脚手架工具
common:
- 新增 autoInit.ts 自动初始化(对齐 Android ContentProvider 模式)
- 新增 configCrypto.ts 内置配置文件解密
- XuqmSDK 新增 initWithConfigFile / setUserInfo / getUserInfo
- 新增 crypto-types.d.ts Web Crypto 类型声明
update:
- 重写 UpdateSDK:checkAppUpdate / checkPluginUpdate / checkAndCachePlugin
- 移除 checkAndPromptAppUpdate(SDK 不做 UI)
- 新增插件脚手架 create-plugin.mjs
- 重命名 RnUpdateInfo → PluginUpdateInfo
license:
- crypto.ts 支持 XUQM-CONFIG-V1 + XUQM-LICENSE-V1 双格式
- 新增 decryptConfigFile 导出
docs:
- 重写 README.md
- 新增 docs/SDK-API参考.md
- 新增 docs/插件脚手架.md
- 新增 docs/配置文件规范.md
|
2026-06-15 01:44:20 +08:00 |
|
XuqmGroup
|
ce9062a0f1
|
sdk: auto-init from license file, promise-based init waiting
- common/sdk: add awaitInitialization(), initializeFromLicense(), markInitialized()
- license: await XuqmSDK init before checkLicense
- update: await XuqmSDK init before checkAppUpdate
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-22 17:57:01 +08:00 |
|
XuqmGroup
|
b04742fb9c
|
feat(license): add @xuqm/rn-license package
Implements device authorization for React Native:
- AES-256-GCM + PBKDF2 decryption via react-native-quick-crypto (lazy loaded)
- AsyncStorage persistence with @xuqm:license:* keys
- 10-minute in-memory + persistent cache with offline fallback
- LicenseResult discriminated union type
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-05-16 02:25:38 +08:00 |
|