【问题标题】:Sqlite Xamarin android nugetSqlite Xamarin android nuget
【发布时间】:2016-09-21 18:12:58
【问题描述】:

我昨天升级了我的 Nexus 5X 以在新操作系统上测试我的应用程序,我收到一个消息框,说他们是 sqlite 错误。在网上查看我发现由于 Google 的更改,Android N 现在只允许链接到 NDK 提供的本机库。 libsqlite.so 不是 NDK 提供的原生库,所以我的应用现在崩溃了。

有人尝试使用 libsqlite3_xamarin.so 吗?似乎是一个解决方案?人们说我们可以将 libsqlite 捆绑到应用程序中。谁能告诉我如何通过visualstudio实现这一目标?

非常感谢!

【问题讨论】:

  • 通常只是更新和重建,请参阅 Common Libraries Impacted blog.xamarin.com/… 并且 sqlite 共享库将包含在您的包中
  • 这就是我所做的。删除所有 SQLite références 然后通过 Nuget 控制台我运行安装 sqlite-net-pcl。它的作用就像魅力

标签: android sqlite xamarin


【解决方案1】:

一个简单的解决方案是使用来自 NuGet 的最新版本的 sqlite-net-pcl 包。

Android N 的限制是内置的 Sqlite 库只能与 android.database.sqlite 类一起使用。使用来自 NuGet 的包会将库的一个版本添加到您的项目中。

Eric sink 有更多关于问题here 的详细信息。

【讨论】:

    【解决方案2】:

    mono 团队提供的新 System.Data.dll 包含一个嵌入版本的 sqlite.so nativa 库名称 libsqlite3_xamarin.so。要包含这个库,您只需要重新构建您的项目。如果您正在使用任何其他访问 /system/lib/libsqlite.so 的库,这在 Android N 中将不起作用。每个库都应嵌入 sqlite。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-01-06
      • 1970-01-01
      • 1970-01-01
      • 2017-07-07
      • 2019-03-20
      • 1970-01-01
      • 1970-01-01
      • 2018-11-26
      相关资源
      最近更新 更多