Вопрос

При запуске моего приложения я получаю следующее предупреждение в LogCat:

04-09 10:28:17.830: WARN/WindowManager(52): Exception when adding starting window
04-09 10:28:17.830: WARN/WindowManager(52): android.view.InflateException: Binary XML file line #24: Error inflating class <unknown>
04-09 10:28:17.830: WARN/WindowManager(52):     at android.view.LayoutInflater.createView(LayoutInflater.java:513)
04-09 10:28:17.830: WARN/WindowManager(52):     at com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:56)
04-09 10:28:17.830: WARN/WindowManager(52):     at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:563)
04-09 10:28:17.830: WARN/WindowManager(52):     at android.view.LayoutInflater.inflate(LayoutInflater.java:385)
04-09 10:28:17.830: WARN/WindowManager(52):     at android.view.LayoutInflater.inflate(LayoutInflater.java:320)
04-09 10:28:17.830: WARN/WindowManager(52):     at android.view.LayoutInflater.inflate(LayoutInflater.java:276)
04-09 10:28:17.830: WARN/WindowManager(52):     at com.android.internal.policy.impl.PhoneWindow.generateLayout(PhoneWindow.java:2153)
04-09 10:28:17.830: WARN/WindowManager(52):     at com.android.internal.policy.impl.PhoneWindow.installDecor(PhoneWindow.java:2207)
04-09 10:28:17.830: WARN/WindowManager(52):     at com.android.internal.policy.impl.PhoneWindow.getDecorView(PhoneWindow.java:1395)
04-09 10:28:17.830: WARN/WindowManager(52):     at com.android.internal.policy.impl.PhoneWindowManager.addStartingWindow(PhoneWindowManager.java:818)
04-09 10:28:17.830: WARN/WindowManager(52):     at com.android.server.WindowManagerService$H.handleMessage(WindowManagerService.java:8794)
04-09 10:28:17.830: WARN/WindowManager(52):     at android.os.Handler.dispatchMessage(Handler.java:99)
04-09 10:28:17.830: WARN/WindowManager(52):     at android.os.Looper.loop(Looper.java:123)
04-09 10:28:17.830: WARN/WindowManager(52):     at com.android.server.WindowManagerService$WMThread.run(WindowManagerService.java:531)
04-09 10:28:17.830: WARN/WindowManager(52): Caused by: java.lang.reflect.InvocationTargetException
04-09 10:28:17.830: WARN/WindowManager(52):     at android.widget.FrameLayout.<init>(FrameLayout.java:79)
04-09 10:28:17.830: WARN/WindowManager(52):     at java.lang.reflect.Constructor.constructNative(Native Method)
04-09 10:28:17.830: WARN/WindowManager(52):     at java.lang.reflect.Constructor.newInstance(Constructor.java:446)
04-09 10:28:17.830: WARN/WindowManager(52):     at android.view.LayoutInflater.createView(LayoutInflater.java:500)
04-09 10:28:17.830: WARN/WindowManager(52):     ... 13 more
04-09 10:28:17.830: WARN/WindowManager(52): Caused by: android.content.res.Resources$NotFoundException: Resource is not a Drawable (color or path): TypedValue{t=0x2/d=0x1010059 a=-1}
04-09 10:28:17.830: WARN/WindowManager(52):     at android.content.res.Resources.loadDrawable(Resources.java:1677)
04-09 10:28:17.830: WARN/WindowManager(52):     at android.content.res.TypedArray.getDrawable(TypedArray.java:548)
04-09 10:28:17.830: WARN/WindowManager(52):     at android.widget.FrameLayout.<init>(FrameLayout.java:91)
04-09 10:28:17.830: WARN/WindowManager(52):     ... 17 more

Мое приложение начинается со следующей всплеск экрана:

<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    android:windowBackground="@color/white" android:background="@color/white"
    android:layout_width="fill_parent" android:layout_height="fill_parent"
    android:foregroundGravity="center">

    <ImageView android:id="@+id/ImageView01"
        android:layout_width="fill_parent" android:layout_height="fill_parent"
        android:adjustViewBounds="true" android:scaleType="centerInside"
        android:src="@drawable/splash" android:layout_gravity="center" />


</ScrollView>

SPLASH - это изображение, которое показано на всплеск. У меня есть эти четыре папки с хранением нитей в моем приложении:

/ res / drawable-hdpi
/ res / drawable-ldpi
/ res / drawable-mdpi
/ res / drawable-nodpi

Всплескное изображение имеет свою собственную версию в первых трех из них и отображается должным образом. Удаление свойства SRC из ImageView удаляет изображение, но не исключение.

Я немного потерян, где искать причину исключения. Я даже не знаю, действительно ли это проблема в этом файле макета и т. Д.

Как бы вы пошли о том, чтобы найти причину этого предупреждения?

Это было полезно?

Решение

У меня была такая же точная ошибка. Единственная линейка XML 24, которая имела какое-либо смысл, было моим приложением, что случилось, чтобы быть закрывающим тегом для приложения. Я проследил его до своей пользовательской темы, которую я добавил в приложение - я не определял родителя стиля. Все, что мне нужно было сделать, было добавить parent = "Android: Тема" в мой стиль и моя ошибка ушла.

<style name="MyTheme" parent="android:Theme">
...
</style>

Другие советы

У меня была такая же проблема, и это было потому, что я передал контекст приложения вместо контекста деятельности.

04-09 10:28:17.830: WARN/WindowManager(52): Caused by: android.content.res.Resources$NotFoundException: Resource is not a Drawable (color or path): TypedValue{t=0x2/d=0x1010059 a=-1

Эта линия - это раздача. Система не довольна одним из ваших ресурсов, возможно, «SRC» ресурс, вероятно, android:src="@drawable/splash".

Я получил аналогичную ошибку при запуске на эмуляторе 2.0. Я использовал более новую версию API (версия 7, 2.1-Update1), и она работала.

Ошибка находится в строке 24 вашего файла XML. Что содержит эта строка? По внешности сообщения об ошибке

android.view.InflateException: Binary XML file line #24: Error inflating class <unknown>

Вы используете пользовательский класс и не определили что-то должным образом. Например, вы правильно определили имя пакета? Может быть, его конструктор не отформатирован? Мы должны были бы увидеть файл XML, в частности, в чем находится 24 строки, чтобы иметь возможность дать больше информации.

Я знаю, что это немного поздно, но я провел весь день, пытаясь понять это и, наконец, с помощью это Поэтому вопрос я понял XML-файл в примере, который я пытался использовать функцию с более поздних API, и Lint не ловит его, потому что файл не изменился. Как только я сделал случайное редактирование в файле XML и сохранил файл, то появилась ошибка о более позднем API.

После многих беспокойных исследований по поиску ответа, почему приложение падает и почему его не показывает лог

Я только что заменил это

android:configChanges="orientation|keyboardHidden"

к

android:configChanges="keyboardHidden|orientation|screenSize"

в метках деятельности.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top