部署到 iPhone 的 Delphi XE8 中的异常 Class 中止(6)

Exception Class aborted(6) in Delphi XE8 deploying to iPhone

我在 Windows 7 上用 Delphi XE8 编写了一个移动应用程序。它在我的 iPhone 上周五编译并 运行。周末我将 iOS 版本升级到 9.0.1。 今天早上(星期一)我收到错误消息:'Project Exception Class aborted(6).

项目编译和构建正常,但是当我尝试将应用程序部署到我的 iPhone 时,异常发生在:

FSharedContext := TEAGLContext.Wrap(TEAGLContext.Create.initWithAPI(kEAGLRenderingAPIOpenGLES2));

class procedure TCustomContextIOS.CreateSharedContext;
begin
  if FSharedContext = nil then
  begin
    FSharedContext := TEAGLContext.Wrap(TEAGLContext.Create.initWithAPI(kEAGLRenderingAPIOpenGLES2));
    TEAGLContext.OCClass.setCurrentContext(FSharedContext);
  end;
end;

单位FMX.Context.GLES.iOS

这可能是由 iOS 版本更新引起的还是其他问题?我发现的关于此问题的其他帖子似乎与部署到 android 有关,但我使用的是 iPhone.

感谢任何帮助。

您必须手动应用补丁以使用 XE8 定位 iOS 9。有一篇博客 post 描述了这些步骤:Steps for building iOS 32-bit applications for iOS 9 with XE7 and XE8。归结为使用该文件的本地副本将 Create 更改为 FMX.Context.GLES.iOS.pas 第 52 行中的 Alloc

FSharedContext := TEAGLContext.Wrap(TEAGLContext.Alloc.initWithAPI(kEAGLRenderingAPIOpenGLES2));