为实现 Unity 下操作数据库,集成 Mono.Data.Sqlite, 并为实现快捷操作封装了 SqliteHelper
本文原地址:Unity工具-Mono.Data.Sqlite 使用
源码与文档
微软 Xamarin 官方 Mono.Data.Sqlite Android 示例
微软 Xamarin 官方 Mono.Data.Sqlite iOS 示例
Microsoft.Data.Sqlite 是微软 .NET 官方提供的 Sqlite 库,因为由同一作者编写,两者十分相似,所以 .NET 官方文档可用于参考
另附 C# API 查询工具:HotExamples
集成 Sqlite
参考此非常全的集成流程
获取 Mono.Data.Sqlite.dll
想在 Unity 中使用 Sqlite 需要使用 Mono.Data.Sqlite.dll
,该库为C# API,可直接从 Unity 客户端中获取
以 Mac 为例,大部分网上提供的目录为 /Unity.app/Contents/MonoBleedingEdge/lib/mono/2.0-api/Mono.Data.Sqlite.dll
但实际使用会发现该目录下的 dll 会出现版本无法兼容、提示加载失败等问题
后发现 /Unity.app/Contents/Mono/lib/mono/2.0/Mono.Data.Sqlite.dll
更加稳定,经测试 2019.2.0f1、2018.4.16f1、2017.4.37f1 之间可互相使用,无异常
另外其他博文有提到不同版本 Unity 会包含不同版本的 Mono.Data.Sqlite.dll
,会引发兼容性问题,使用时注意 PlayerSetting 中 Api Compatibility Level
需选择 .NET Standard 2.0
,但本文测试设置为 .NET 4.x
也能正常运行
iOS 与 macOS 环境配置
无需额外配置,直接使用即可
Android 环境配置
Android 还需 libsqlite3.so
,该库为 sqlite3 由 C 编译得来,为适配不同的 Android 架构可下载
armeabi-v7a 放入 Assets/Plugins/Android/libs/armeabi-v7a
arm64-v8a 放入 Asse