在Android 2.3模拟器上运行时,是否有人知道XE5中的此分段错误(11)发生了什么?
我在SO上看到了另外两篇帖子: Class segmentation fault (11) Android delphi application Segmentation fault (11) exception when calling Firedac
但这些都不是我的问题。我似乎无法运行一个空的项目,因为我在调试模式下运行时出现此错误,并且应用程序仅在Android上关闭。
我发现有一个问题已修复,声称为:
117153默认FMX应用在Android 2.3.3上未经许可here
崩溃
所以我去了一个空项目并将所有权限设置为True,但它仍然崩溃。
我刚刚获得XE5 Update 1.但是从上面的链接中,我找不到XE5的哪个版本修复了错误的信息,以及为什么没有说明正常的错误,而是“未经许可”。
还没有真正试过2.3.7以下的真实设备(应用程序工作得很好),因为我没有,但只在模拟器中,这是2.3,并且无法选择除此之外,我确实需要在2.3.5手机上运行应用程序(我实际上正在为Samsung Galaxy S plus专门做一个应用程序)。
如果2.3.5中也出现此错误,或者仅仅是2.3.3问题,还是只是模拟器问题,是否有任何信息?
正如@David Heffernan在上面的帖子中所述,它是一些内存访问问题,但我似乎无法找出为什么以及该应用尝试访问的内容,如果它是空的?
我试图运行的代码实际上是空的:
unit Unit1;
interface
uses
System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,
FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs;
type
TForm1 = class(TForm)
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.fmx}
end.
感谢。
答案 0 :(得分:2)
documentation明确指出不支持Gingerbread(2.3.3-2.3.7)模拟器。请参阅下面标有**的两行。
解决方案是直接在设备上开发而不是模拟器。 (无论如何,你会发现它的实际效果要好得多; Windows上的Android模拟器非常慢。)
RAD Studio支持在运行以下版本的Android操作系统的ARMv7设备上进行开发:
Android OS Name Android OS Versions API Levels
KitKat
Android 4.4
API Level 19
Jelly Bean
Android 4.1.x, 4.2.x, 4.3.x
API Levels 16, 17, 18
Ice Cream Sandwich
Android 4.0.3 and 4.0.4
API Level 15
Gingerbread
**Android 2.3.3 – 2.3.7**
API Level 10
Notes: RAD Studio does not support the following:
Honeycomb (Android 3.x)
**Gingerbread emulator**
Tegra 2 devices (NEON support is required)