2011-11-17 80 views
1

我已经用Monodevelop 2.8成功开发了一个小型的iPhone + Monotouch(最新版本)应用程序,它使用SQLite的“编译”版本来启用FTS4。iOS iPhone SQLite和Monotouch问题

编译SQLite作为静态库(libSQLite.a)我用这个话题,因为教程:How to use FTS in SQLite with Monotouch for iOS

而且我已经按照本教程中创建一个模拟器+设备兼容的静态库: Build fat static library (device + simulator) using Xcode and SDK 4+

事情在模拟器上运行良好。 :)

坏消息来自iOS 4的iPhone 4设备。当我在设备上部署和运行应用程序时,它突然崩溃。

要使用libSQLite.a静态库在我的MonoTouch项目我已经按照本教程http://docs.xamarin.com/ios/advanced_topics/linking_native_libraries

看来,运行此附加命令编译设备上的应用程序时,事情错: - gcc_flags“-L $ {ProjectDir} -lSQLite3 -force_load $ {ProjectDir} /libSQLite3.a” 如果我编译和部署没有附加命令(使用静态链接库)的应用程序,程序将不会崩溃。

有什么建议吗?

任何人都已经在iOS的monotouch应用程序中使用SQLite和FTS4?

+2

尝试在编译静态库时禁用Xcode中的缩略图。 –

+0

它的工作原理!如果你重播答案,我可以帮你! :) 非常感谢你! – John

回答

2

这与我们的缺陷#707有关,简而言之,这是一个通常通过使用带有拇指指令的外部库引发的问题。这也意味着解决方法很简单:只需在编译静态库时禁用Xcode中的拇指支持即可。

作为旁注,我们已经跟踪了这个错误,并希望在下一个MonoTouch发行版中修复它。