无法在iPad上使用SQLite.NET-PCL运行xamarin应用程序

时间:2016-09-01 12:15:17

标签: c# ios sqlite xamarin.ios cross-platform

我创建了一个带有简单测试的新应用程序,每次使用iOSSimulator都可以正常运行,但是当我尝试在iPad上运行时它不起作用。在我的应用程序中,我只有nuget安装的SQLite.NET-PCL 3.1.1,我的控制器只调用创建数据库。

在iPad上试用时,控制台会给我以下错误:

MTOUCH: error MT3001: Could not AOT the assembly '/Users/delogic/Projects/iosSingleView/iosSingleView/obj/iPhone/Debug/build-ipad3.1-9.3.2/mtouch-cache/Build/SQLite.Net.Platform.XamarinIOS.Unified.dll'

日志上的以下几行引起了我的注意:

Undefined symbols for architecture armv7:
      "_sqlite3_busy_timeout", referenced from:
          wrapper_managed_to_native_SQLite_Net_Platform_XamarinIOS_SQLiteApiIOSInternal_sqlite3_busy_timeout_intptr_int in SQLite-5f40c7.o
      "_sqlite3_close", referenced from:
          wrapper_managed_to_native_SQLite_Net_Platform_XamarinIOS_SQLiteApiIOSInternal_sqlite3_close_intptr in SQLite-5f40c7.o
      "_sqlite3_errmsg16", referenced from:
          wrapper_managed_to_native_SQLite_Net_Platform_XamarinIOS_SQLiteApiIOSInternal_sqlite3_errmsg16_intptr in SQLite-5f40c7.o
      "_sqlite3_finalize", referenced from:
          wrapper_managed_to_native_SQLite_Net_Platform_XamarinIOS_SQLiteApiIOSInternal_sqlite3_finalize_intptr in SQLite-5f40c7.o
      "_sqlite3_open_v2", referenced from:
          wrapper_managed_to_native_SQLite_Net_Platform_XamarinIOS_SQLiteApiIOSInternal_sqlite3_open_v2_byte___intptr__int_intptr in SQLite-5f40c7.o
    ld: symbol(s) not found for architecture armv7
    clang: error: linker command failed with exit code 1 (use -v to see invocation)

我猜这是出于某种原因,我的文件缺少一些方法。有人有同样的问题吗?我将上传项目示例和完整日志。

link for log and project download

1 个答案:

答案 0 :(得分:0)

我解决了这个问题。这是xamarin工作室的一个错误,当我选择更新频道到alpha

时,它已得到修复