Android 2.2 SDK повреждает совместимость с более старыми телефонами

Я недавно обновил свое приложение к сборке tarket версии 8 SDK для включения функции App2SD моих пользователей.

Однако у меня были сообщения об устройствах на SDK 3 (1.5) проблемы наличия, запускающие приложение со следующим отслеживанием стека:

...
E/AndroidRuntime(10638): Caused by: android.content.res.Resources$NotFoundException: File      res/drawable/title_bar_shadow.9.png from drawable resource ID #0x7f020000
E/AndroidRuntime(10638): at android.content.res.Resources.loadDrawable(Resources.java:1641)
E/AndroidRuntime(10638): at android.content.res.TypedArray.getDrawable(TypedArray.java:548)
E/AndroidRuntime(10638): at android.view.View.<init>(View.java:1726)
E/AndroidRuntime(10638): at android.view.View.<init>(View.java:1675)
E/AndroidRuntime(10638): at android.view.ViewGroup.<init>(ViewGroup.java:271)
E/AndroidRuntime(10638): at android.widget.LinearLayout.<init>(LinearLayout.java:92)
E/AndroidRuntime(10638): ... 26 more
E/AndroidRuntime(10638): Caused by: java.io.FileNotFoundException: res/drawable/title_bar_shadow.9.png
E/AndroidRuntime(10638): at android.content.res.AssetManager.openNonAssetNative(Native Method)
E/AndroidRuntime(10638): at android.content.res.AssetManager.openNonAsset(AssetManager.java:392)
E/AndroidRuntime(10638): at android.content.res.Resources.loadDrawable(Resources.java:1634)
E/AndroidRuntime(10638): ... 31 more

Если я возвращаю цель сборки к версии 4, поскольку это была ранее эта проблема, уходит, также если я удаляю какие-либо графические ресурсы из своих XML-файлов, эта проблема уходит!

Любая справка очень ценилась бы, поскольку у меня в настоящее время есть поврежденное приложение на рынке для многих пользователей.

8
задан BryanH 26 May 2011 в 14:47
поделиться

2 ответа

Это может быть связано с разной плотностью изображений и тем, как SDK 1.5 не может справиться с этим из коробки. Посмотрите здесь и здесь .

13
ответ дан 5 December 2019 в 11:22
поделиться

У вас должно получиться выполнить minSdk = 3 targetSdk = 8 и выполнить компоновку с библиотеками 2.2, которые должны работать. Вы просто не можете использовать какой-либо sdk api, который не является частью 1.5 api. Вам также придется вручную установить приложение в эмулятор 1.5, чтобы протестировать его, но оно должно работать.

2
ответ дан 5 December 2019 в 11:22
поделиться
Другие вопросы по тегам:

Похожие вопросы: