我们有两部Android手机:
-
三星Galaxy S4,Android 4.3
-
摩托罗拉Atrix 4g,Android 4.1.2
我们从delphi xe 5 update 2做了一个空白apk,我们安装了最新版本的sdks . 安装完成后,我们将三星和摩托罗拉手机插入电脑 . 在xe5平台菜单上Atrix mb860和三星手机来了 . 如果我们使用三星手机编译apk,它安装并运行没有问题,但是当我们尝试使用Atrix它完成编译,安装apk但应用程序不是woking . 它给出了一个错误:
`"Project Project1.apk raised exception class Illegal instruction (4)."`.
我们怎么解决这个问题?
2 回答
Atrix有一个NVidia Tegra 2 CPU,Delphi目前不支持 . Tegra不支持NEON . 在移动设备上,Delphi仅支持带有NEON的ARMv7 CPU . 记录如下:
Android Requirements
Android Devices Supported for Application Development(Embarcadero DocWiki)
另见:
Android Devices Supported for Application Development(Delphi Wiki)
要支持各种Android设备,您需要使用可以针对这些设备的硬件的开发工具 . 正如Remy所说,您正在使用的设备使用ARMv7以外的硬件 . 这意味着Delphi无法定位它 .
据我所知,Embarcadero没有计划支持其他Android硬件 .
您需要使用不同的开发工具 . 相当彻底的解决方案 . 一个很好的选择是原生的Android开发工具 . 另一种选择是RemObjects Oxygene,它可能支持该硬件和较旧的Android SDK .