1
votes

I have a mobile app written in Delphi XE8 over Windows 7. It compiled and ran on my iPhone Last Friday. Over the weekend I upgraded my iOS version to 9.0.1. This morning (Monday) I am getting the error message: 'Project Exception Class aborted(6).

The project compiles and builds fine, but when I try to deploy the app to my iPhone the exception occurs at:

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

of

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

in the unit FMX.Context.GLES.iOS

Could this be caused from the iOS version update or could something else have gone wrong? The other posts I found regarding this issue appear to have something to do with deploying to android but I am using an iPhone.

Any help is appreciated.

1

1 Answers

1
votes

You have to apply a patch manually to target iOS 9 with XE8. There is a blog post describing the steps: Steps for building iOS 32-bit applications for iOS 9 with XE7 and XE8. It boils down to change the Create to an Alloc in line 52 of FMX.Context.GLES.iOS.pas using a local copy of that file.

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