ios - 安装插件后 phonegap 应用程序崩溃

标签 ios objective-c xcode cordova

修复后我找到了我之前的问题:phonegap-cordova-3-4-clean-build-gets-apple-mach-linker-error

所以现在,如果我做一个空白项目

$ cordova create hello com.example.hello HelloWorld
$ cordova platform add ios
$ cordova build ios

现在我需要按照这些说明进行操作 previous question 之后一切正常。

但是现在我要安装一个插件(不管是什么插件)。 现在我选择记录器(org.apache.cordova.console)

$ cordova plugin add org.apache.cordova.console

现在,如果我构建并运行该应用程序。它在启动时崩溃。 参见:screenshot

我在 xcode 中启用了 Zombie Objects。

即使我安装了以前版本的 phonegap(cordova)。我仍然需要执行所有这些步骤。在我刚刚创建之前,添加平台,构建并运行它就完成了。

什么都没有了,请帮帮我。这真的很烦人。

编辑:如果我注释行 console.log('Received Event: ' + id);在 js/index.js 中,应用程序将启动,但如果我调用 console.log,它会崩溃。

最佳答案

objc_msgSend 在 arm64 上使用插件导致 EXC_BAD_ACCESS

所以我找到了为什么会这样:

我需要在文件 ios/CordovaLib/Classes/CDVCommandQueue.m 中替换

objc_msgSend(obj, normalSelector, command);

((void (*)(id, SEL, id))objc_msgSend)(obj, normalSelector, command);

现在一切正常了。

source

关于ios - 安装插件后 phonegap 应用程序崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22508579/

相关文章:

ios - 固定计算和位置的最小高度不适用于移动设备

ios - 如何设置默认 View Controller

iphone - 正确处理didReceiveMemoryWarning

objective-c - 无法关闭在 Interface Builder 中创建的 NSView 实例的剪辑

ios - *等待应用程序启动* MonoTouch 中的调试选项

ios - 如何根据我们单击的按钮设置标题。发送数据

ios - 如何在设备上安装 iOS 应用程序

ios - iOS平移手势

swift - 注册时无法显示应用程序包 ID 的自动强密码

iphone - 如何以编程方式在 iOS 应用程序中显示目标的版本/内部版本号?