- Регистрация
- 1 Мар 2015
- Сообщения
- 1,481
- Баллы
- 155
В ходе работы над проектами под Android на Delphi часто приходится сталкиваться с тем, что приложение, вполне работоспособное на одном устройстве, при его установке на другое часто отказывается даже запускаться. При этом появляется чёрный экран с сообщением «Application does not support this device».
Для таких случаев Embarcadero рекомендует способ, описанный в (Workaround for Android 4.0/Kindle Fire Message: «Application does not support this device»). Однако, даже он далеко не всегда помогает решить данную проблему.
Причина всего этого, как оказалось, предельно проста. .
К слову, какой тип процессора используется в том или ином устройстве (включая эмулируемые) можно узнать с помощью специальных программ. Например, CPU-Z, которая доступна в Google Play.
Даже несмотря на то, что в обсуждении по ссылке выше фигурирует версия XE6, а, на момент написания этой статьи, уже давно выпущена версия XE7, к сожалению, ничего не изменилось.
Таким образом, перед разработчиками под Android на Delphi возникает следующая дилемма.
Говорить о полной поддержке Android, а, следовательно, и обеспечении единой кодовой базы даже для основных аппаратных платформ пока не приходится.
P.S. Проблема описанная в данной статье полностью актуальна также и для C++ Builder.
Для таких случаев Embarcadero рекомендует способ, описанный в (Workaround for Android 4.0/Kindle Fire Message: «Application does not support this device»). Однако, даже он далеко не всегда помогает решить данную проблему.
Причина всего этого, как оказалось, предельно проста. .
К слову, какой тип процессора используется в том или ином устройстве (включая эмулируемые) можно узнать с помощью специальных программ. Например, CPU-Z, которая доступна в Google Play.
Даже несмотря на то, что в обсуждении по ссылке выше фигурирует версия XE6, а, на момент написания этой статьи, уже давно выпущена версия XE7, к сожалению, ничего не изменилось.
Таким образом, перед разработчиками под Android на Delphi возникает следующая дилемма.
- Оставить Delphi в качестве единственной среды разработки под Android и разрабатывать приложения только для платформы ARMv7, ожидая, когда Embarcadero расширит перечень поддерживаемых типов процессоров;
- Осваивать более универсальные средства разработки. Например, «родной» для Android, Java.
Говорить о полной поддержке Android, а, следовательно, и обеспечении единой кодовой базы даже для основных аппаратных платформ пока не приходится.
P.S. Проблема описанная в данной статье полностью актуальна также и для C++ Builder.