2012-01-20 2 views
12

Я не новый разработчик для android. У меня есть приложение на рынке. Тем не менее, иногда я получаю странные сообщенные исключения, что произошло:android untrue resource not found exception

java.io.FileNotFoundException: res/drawable-mdpi/background.png 

android.content.res.Resources$NotFoundException: File res/drawable-mdpi/background.png from drawable resource ID #0x7f02001f 

Это все средства не соответствует действительности, так как в противном случае я Wouldn; т собрали или запустить программу самостоятельно. Также я уверен, что ресурсы есть. Это лишь одно из исключений, о которых я сообщал. Есть те же исключения для других ресурсов, в основном макеты.

Так что мой вопрос: как это произойдет? Это потому, что система Android не смогла правильно установить приложение? Я почти уверен, что это должно быть так, потому что у меня много пользователей, которые используют его без проблем.

Пожалуйста, помогите в этом.

+0

Иногда это случается с нами с некоторыми ресурсами компоновки. Хотя ситуация для нас далеко не критическая, она оставалась загадочной ошибкой. Спасибо за вопрос. – Snicolas

+2

Вы тестировали свое приложение на всех размерах экрана и плотности? Возможно, проблема может заключаться в том, что на некоторых экранах чертежи не были найдены в соответствующем каталоге – Cata

+1

@Cata Вам не нужно создавать/заполнять доступные папки для каждой плотности. Если, например, вы предоставляете только xdpi drawables, экран mdpi будет масштабировать чертежи, чтобы правильно рисовать. – Jonba

ответ

3

Там может быть несколько причин:

  1. Перемещение приложения на SD-карту.

  2. Возникла некоторая проблема при загрузке или установке APK с рынка (файл может быть поврежден).

  3. пользователя получить APK с поврежденным файлом из другого источника (например, через Bluetooth от другого пользователя)

  4. Некоторых систем ошибки (от программного обеспечения, на Брокен оборудования)

В любом случае вы ничего не может сделать с этой проблемой.

1

Может быть, приложение было перенесено на SD-карту, и что-то происходит с возможностью вытягивания на SD. Я видел похожие проблемы с макетами, которые были достаточно гибкими, и это было связано с тем, что приложение было перенесено на SD.

+0

Это действительно вероятный ответ, но, к сожалению, я не могу проверить это и сказать, если это точно, как это происходит на редких случаев. Спасибо. – Norbert

1

Возможно, вы включили определенные коды, которые ссылаются на контент с Android SDK.

В моем случае, я столкнулся с аналогичной проблемой, и когда я снял линию

android:background="?android:attr/actionBarItemBackground" 

из моего XML, все снова работает нормально.