refactor(sdk): 优化 SDK 初始化逻辑和错误处理
- 移除初始化失败原因注释 - 简化授权文件检查逻辑 - 统一错误消息为英文格式 - 优化授权文件路径验证流程 - 改进包名匹配错误提示信息
这个提交包含在:
父节点
4d5111dddc
当前提交
90ef764695
@ -44,23 +44,19 @@ object XuqmSDK {
|
||||
*/
|
||||
fun autoInitialize(context: Context, logLevel: LogLevel = LogLevel.WARN) {
|
||||
val licenseData = readLicenseFileData(context)
|
||||
if (licenseData == null) {
|
||||
val found = runCatching { context.assets.list("xuqm")?.toList() }.getOrDefault(emptyList())
|
||||
throw IllegalStateException(
|
||||
"授权文件未找到(assets/xuqm/ 下实际文件:$found)。" +
|
||||
"请将 license.xuqm 放置到 src/<flavor>/assets/xuqm/ 目录。"
|
||||
?: throw IllegalStateException(
|
||||
"No license file found in assets/xuqm/. " +
|
||||
"Download license.xuqm from the tenant platform and place it in src/main/assets/xuqm/."
|
||||
)
|
||||
}
|
||||
val appKey = licenseData.first
|
||||
val serverUrl = licenseData.second
|
||||
val licensePackageName = licenseData.third
|
||||
val localPackageName = context.packageName
|
||||
|
||||
val localPackageName = context.packageName
|
||||
if (licensePackageName != null && licensePackageName.isNotBlank() && licensePackageName != localPackageName) {
|
||||
throw IllegalStateException(
|
||||
"授权文件与当前应用不匹配:" +
|
||||
"授权包名 '$licensePackageName',当前包名 '$localPackageName'。" +
|
||||
"请下载正确版本的授权文件。"
|
||||
"License package name mismatch: license=$licensePackageName, local=$localPackageName. " +
|
||||
"Please download the correct license file for this app."
|
||||
)
|
||||
}
|
||||
|
||||
|
||||
@ -19,7 +19,6 @@ class XuqmInitializerProvider : ContentProvider() {
|
||||
XuqmSDK.autoInitialize(ctx)
|
||||
}
|
||||
}
|
||||
// 失败原因已存入 XuqmSDK.getInitError(),由 App 决定如何展示
|
||||
return true
|
||||
}
|
||||
|
||||
|
||||
正在加载...
在新工单中引用
屏蔽一个用户