diff --git a/sdk-core/src/main/java/com/xuqm/sdk/XuqmSDK.kt b/sdk-core/src/main/java/com/xuqm/sdk/XuqmSDK.kt index 1f95be3..d952804 100644 --- a/sdk-core/src/main/java/com/xuqm/sdk/XuqmSDK.kt +++ b/sdk-core/src/main/java/com/xuqm/sdk/XuqmSDK.kt @@ -45,15 +45,10 @@ object XuqmSDK { fun autoInitialize(context: Context, logLevel: LogLevel = LogLevel.WARN) { val licenseData = readLicenseFileData(context) if (licenseData == null) { - android.util.Log.e( - "XuqmSDK", - "[autoInitialize] License file not found or unreadable. " + - "Expected assets/xuqm/license.xuqm or assets/xuqm/*.xuqmlicense. " + - "Actual files in assets/xuqm/: ${listAssets(context, "xuqm")}", - ) + val found = runCatching { context.assets.list("xuqm")?.toList() }.getOrDefault(emptyList()) throw IllegalStateException( - "No license file found in assets/xuqm/. " + - "Download license.xuqm from the tenant platform and place it in src/main/assets/xuqm/." + "授权文件未找到(assets/xuqm/ 下实际文件:$found)。" + + "请将 license.xuqm 放置到 src//assets/xuqm/ 目录。" ) } val appKey = licenseData.first @@ -61,31 +56,17 @@ object XuqmSDK { val licensePackageName = licenseData.third val localPackageName = context.packageName - android.util.Log.d( - "XuqmSDK", - "[autoInitialize] License read OK — " + - "appKey=${appKey.take(8)}***, serverUrl=$serverUrl, " + - "licensePackageName=$licensePackageName, localPackageName=$localPackageName", - ) - if (licensePackageName != null && licensePackageName.isNotBlank() && licensePackageName != localPackageName) { - android.util.Log.e( - "XuqmSDK", - "[autoInitialize] Package name mismatch — " + - "license expects '$licensePackageName', app running as '$localPackageName'.", - ) throw IllegalStateException( - "License package name mismatch: license=$licensePackageName, local=$localPackageName. " + - "Please download the correct license file for this app." + "授权文件与当前应用不匹配:" + + "授权包名 '$licensePackageName',当前包名 '$localPackageName'。" + + "请下载正确版本的授权文件。" ) } initialize(context, appKey, serverUrl, logLevel) } - private fun listAssets(context: Context, dir: String): String = - runCatching { context.assets.list(dir)?.toList().toString() }.getOrDefault("(error listing)") - /** * Manual initialization without license file. * The SDK will validate the appKey against the server by calling /api/sdk/config diff --git a/sdk-core/src/main/java/com/xuqm/sdk/internal/XuqmInitializerProvider.kt b/sdk-core/src/main/java/com/xuqm/sdk/internal/XuqmInitializerProvider.kt index f110324..b150acf 100644 --- a/sdk-core/src/main/java/com/xuqm/sdk/internal/XuqmInitializerProvider.kt +++ b/sdk-core/src/main/java/com/xuqm/sdk/internal/XuqmInitializerProvider.kt @@ -18,14 +18,8 @@ class XuqmInitializerProvider : ContentProvider() { if (!XuqmSDK.isInitialized()) { XuqmSDK.autoInitialize(ctx) } - }.onFailure { e -> - android.util.Log.e( - "XuqmSDK", - "[XuqmInitializerProvider] autoInitialize failed — SDK will be uninitialized. " + - "Cause: ${e.javaClass.simpleName}: ${e.message}", - e, - ) } + // 失败原因已存入 XuqmSDK.getInitError(),由 App 决定如何展示 return true }