我在应用程序上集成了Aviary SDK,以增强应用程序图像编辑器功能。我阅读了它的文档,运行了它的示例代码,它运行良好。但是在我的应用程序上运行时,我遇到了一个问题。在某个方法上运行后,它崩溃了EXC_BAD_ACCESS

[AFOpenGLManager beginOpenGLLoad];

我遵循了鸟类文档的设置指南
https://developers.aviary.com/docs/ios/setup-guide#project-setup

首先,我只是创建一个Singleton管理器进行管理。我称[AFOpenGLManager beginOpenGLLoad];初始化功能

- (id)init {
     if (self = [super init]) {
         [AFOpenGLManager beginOpenGLLoad];
     }
     return self;
}

- (void) launchPhotoEditorWithImage:(UIImage *)editingResImage
            highResolutionImage:(UIImage *)highResImage
                 fromController:(UIViewController *)controller
{
       // Customize the editor's apperance. The customization options really only need to be set
       once in this case since they are never changing, so we used dispatch once here.
       static dispatch_once_t onceToken;
       dispatch_once(&onceToken, ^{
             [self setPhotoEditorCustomizationOptions];
       });

       // Initialize the photo editor and set its delegate
       AFPhotoEditorController * photoEditor = [[[AFPhotoEditorController alloc]
                                            initWithImage:editingResImage] autorelease];
       [photoEditor setDelegate:self];

       // If a high res image is passed, create the high res context with the image and the
       photo editor.
       if (highResImage) {
            [self setupHighResContextForPhotoEditor:photoEditor withImage:highResImage];
       }

       // Present the photo editor.
       [controller presentViewController:photoEditor animated:YES completion:nil];
}

运行init函数后,它崩溃了

我是否错过了某些事情,示例代码运行良好。

编辑1:
从createProgram调用了compileShader,但我可以读取此方法

编辑2:
我意识到我的应用程序项目有一个名为libmediastreamer_voip.a的库。我认为有误会。我的意思是也许Aviary lib和libmediastreamer_voip.a lib也具有名为compileShader的函数。因此,在Aviary lib上调用compileShader时,它将在Aviary lib上的compileShader上运行,但在libmediastreamer_voip.a上的compileShader中运行。
我不知道自己会是那样吗?我创建了一个新项目并集成了Avairy SDK,它运行良好,只是集成到崩溃的我的应用程序中

最佳答案

我是Aviary iOS团队的成员。这是由于我们的compileShader函数与您的函数之间的冲突引起的。我们的函数未正确命名空间,并导致了冲突。我们将在SDK的下一个版本中解决此问题。

麦可

关于ios - Aviary SDK在iOS上初始化时崩溃,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25008881/

10-13 08:50