Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/181.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 没有';“找不到类”;“线性布局”;路径上:仅适用于三星设备的DexPathList。(应用商店构建)_Java_Android_React Native_Samsung Mobile - Fatal编程技术网

Java 没有';“找不到类”;“线性布局”;路径上:仅适用于三星设备的DexPathList。(应用商店构建)

Java 没有';“找不到类”;“线性布局”;路径上:仅适用于三星设备的DexPathList。(应用商店构建),java,android,react-native,samsung-mobile,Java,Android,React Native,Samsung Mobile,我们在play store上已经有一个应用程序很短时间了,但是我们的开发者都没有使用三星设备,所以我们还没有能够在它们上进行测试。我们今天与一些三星用户分享,当他们安装该应用程序时,该应用程序立即崩溃,无法打开。我已经通过Crashlytics收到了一些关于这方面的崩溃报告,但在调查之后,我找不到解决方案。我找到的解决方案都指出类名需要适当大写,但我们的类名已经大写了 以下是崩溃日志的概述: Exception java.lang.RuntimeException: Unable to star

我们在play store上已经有一个应用程序很短时间了,但是我们的开发者都没有使用三星设备,所以我们还没有能够在它们上进行测试。我们今天与一些三星用户分享,当他们安装该应用程序时,该应用程序立即崩溃,无法打开。我已经通过Crashlytics收到了一些关于这方面的崩溃报告,但在调查之后,我找不到解决方案。我找到的解决方案都指出类名需要适当大写,但我们的类名已经大写了

以下是崩溃日志的概述:

Exception java.lang.RuntimeException: Unable to start activity 
ComponentInfo {com.zonderstudios.zonder/com.zonderstudios.zonder.MainActivity}: 
android.content.res.Resources$NotFoundException: Drawable 
com.zonderstudios.zonder:layout/launch_screen with resource ID 
#0x7f04002d

Caused by android.content.res.Resources$NotFoundException: Drawable 
com.zonderstudios.zonder:layout/launch_screen with resource ID #0x7f04002d

Caused by android.content.res.Resources$NotFoundException: File 
res/layout/launch_screen.xml from drawable resource ID #0x7f04002d

Caused by android.view.InflateException: Class not found LinearLayout

Caused by java.lang.ClassNotFoundException: Didn't find class 
"LinearLayout" on path: DexPathList[[zip file 
"/data/app/com.zonderstudios.zonder- 
R0tFS_4BNjS6q0znS27jPw==/base.apk"],nativeLibraryDirectories= . 
[/data/app/com.zonderstudios.zonder-R0tFS_4BNjS6q0znS27jPw==/lib/arm, 
/data/app/com.zonderstudios.zonder- 
R0tFS_4BNjS6q0znS27jPw==/base.apk!/lib/armeabi-v7a, /system/lib, 
/system/vendor/lib]]
本质上:没有在启动屏幕的路径:DexPathList上找到类“LinearLayout”

闪屏在我们目前测试过的所有模拟器和其他物理设备上都能正常工作。但到目前为止,这个问题出现在星系S6、S8和S8+上

这是
launch\u screen.xml
文件@drawable/launch_screen指我们用作启动屏幕的png图像

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent">
    <ImageView
        android:id="@+id/launch_image_view"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:adjustViewBounds="true"
        android:scaleType="centerCrop"
        android:src="@drawable/launch_screen"
        />
</LinearLayout>
有人知道是什么导致了这个问题,或者为什么在一种设备上找不到特定的内置类?

我找到了一个(相当粗糙的)解决方案

本质上,当应用程序打开时,三星设备无法加载
layout/*
文件,例如启动屏幕

相反,我换了

<item name="android:windowBackground">@layout/launch_screen</item>
@布局/启动屏幕
对下列事项:

<item name="android:windowBackground">@drawable/splash_screen</item>
@可绘制/启动屏幕
并创建了一个闪屏可绘制的xml文件,其中包含我想要显示的图像。这工作正常,不会使Galaxy设备崩溃。有趣的是,Galaxy设备随后可以在应用程序再次打开后使用
@layout/launch_屏幕
文件。在react native中有一些额外的初始化内容,因此在发生这种情况时,我会继续显示初始屏幕

这基本上会导致图像显示比我希望的放大更多,然后在切换到使用布局文件后,使用
centerCrop
参数“弹出”到正常缩放版本

不过,我仍然不确定问题的根源是什么。问题似乎在于三星Galaxy设备无法在应用程序初始化之前加载布局xml文件

<item name="android:windowBackground">@drawable/splash_screen</item>