android - 我在Android中收到NoClassFoundError

标签 android kotlin

我从Codecanyon购买了一个应用程序,当我用设备启动该应用程序时,我遇到很多错误...(卖方对问题一无所知)

我该如何解决?

编写ResolveColor的代码。

object ATHUtil {

fun isWindowBackgroundDark(context: Context): Boolean {
    return !ColorUtil.isColorLight(resolveColor(context, android.R.attr.windowBackground))
}

@JvmOverloads
fun resolveColor(context: Context, @AttrRes attr: Int, fallback: Int = 0): Int {
    val a = context.theme.obtainStyledAttributes(intArrayOf(attr))
    try {
        return a.getColor(0, fallback)
    } finally {
        a.recycle()
    }
}

}
java.lang.NoClassDefFoundError: Failed resolution of: Lkotlin/KotlinPackage;
    at code.reno.music.appthemehelper.util.ATHUtil.resolveColor(ATHUtil.kt:17)
    at code.reno.music.appthemehelper.ThemeStore$Companion.accentColor(ThemeStore.kt:214)
    at code.reno.music.player.appshortcuts.AppShortcutIconGenerator.generateUserThemedIcon(AppShortcutIconGenerator.kt:58)
    at code.reno.music.player.appshortcuts.AppShortcutIconGenerator.generateThemedIcon(AppShortcutIconGenerator.kt:35)
    at code.reno.music.player.appshortcuts.shortcuttype.SearchShortCutType.getShortcutInfo$app_fontDebug(SearchShortCutType.kt:38)
    at code.reno.music.player.appshortcuts.DynamicShortcutManager.getDefaultShortcuts(DynamicShortcutManager.kt:37)
    at code.reno.music.player.appshortcuts.DynamicShortcutManager.initDynamicShortcuts(DynamicShortcutManager.kt:46)
    at code.reno.music.player.App.onCreate(App.kt:46)
    at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1155)
    at android.app.ActivityThread.handleBindApplication(ActivityThread.java:6006)
    at android.app.ActivityThread.access$1200(ActivityThread.java:201)
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1679)
    at android.os.Handler.dispatchMessage(Handler.java:106)
    at android.os.Looper.loop(Looper.java:207)
    at android.app.ActivityThread.main(ActivityThread.java:6867)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:547)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:876)
Caused by: java.lang.ClassNotFoundException: Didn't find class "kotlin.KotlinPackage" on path: DexPathList[[zip file "/data/app/code.reno.music.player.debug-eucHrO85H1-7NwqtiLtrqA==/base.apk"],nativeLibraryDirectories=[/data/app/code.reno.music.player.debug-eucHrO85H1-7NwqtiLtrqA==/lib/arm64, /system/lib64, /system/vendor/lib64]]
    at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:171)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:379)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:312)

最佳答案

我相信您在 intArrayOf 方法上遇到错误。
似乎 Windows 10土耳其语设备上的构建代码存在问题。可能是utf-8问题。代码无法为其中的İı生成某些函数。
使用土耳其语(也许还有其他一些语言)的开发设备的Kotlin代码生成过程中存在一个错误。
现在,您可以将操作系统更改为 Windows 10 Pro英文以解决错误
有一个相关的答案here

关于android - 我在Android中收到NoClassFoundError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61694527/

相关文章:

algorithm - 更少的行来计算 Kotlin 数组中的最大整数并且比 O(nlogn) 更快?

android - 将 kotlin 与 ContentResolver 一起使用会导致 IllegalArgumentException

android - ListView 不会再出现

java - HttpURLConnection 随机延迟

java - 无法在 android studio 中包含共享库

android - 单击项目后不会关闭的 PopupMenu

android - 如何设置应用程序语言环境?

gradle - 如何使用 Gradle 和 IntelliJ 在 Kotlin 多平台项目中配置 JUnit 5?

type-conversion - Kotlin 的 Double.toInt() 中使用了哪种方法,舍入还是截断?

java - 如何以编程方式在 Android 上的蓝牙音频设备之间切换音频