android - 有没有办法在 ROOM 上加载扩展或使用数学函数?
问题描述
Room 基于 SQLITE,在文档中可以加载扩展,即使在 SQLite 的 DB 浏览器上也有一个数学扩展,并且在加载了我需要的查询后工作正常,我尝试像这样使用 Kotlin 在 Android 上复制它
database.query(SimpleSQLiteQuery("SELECT load_extension('$Path2Ext')")) 但这给了我一个例外“没有这样的功能 load_extension”
我需要使用数学函数 acos、cos、弧度...
有办法做到这一点吗?我将不胜感激任何帮助
解决方案
SQLite 是 Android 的一部分,自 Android 创建以来就使用它进行编译。向 SQLite 添加扩展非常强大,可能会导致数据库的误用。这就是为什么 SQLite 默认关闭,Android 完全禁用它的原因。
如果您搜索Android 源代码,您将在SQLITE_OMIT_LOAD_EXTENSION
默认情况下定义并禁用扩展的代码。
推荐阅读
- curl - 使用 curl 向服务器发送二进制 dns 数据包
- loopbackjs - Loopback-4 模拟注入
- javascript - React NPM NodeJS 如何处理 JSX 文件?
- java - 在eclipse中打开一个外部项目
- javascript - 倒计时后如何拨打报警电话?之前因为某种原因打电话?
- lua - WoW - 在 Lua 中四舍五入到小数点后两位
- python - 作为一个列表元素读入段落
- python-3.x - np.cos 的 FFT 有两个峰值
- javascript - 在javascript中找不到树枝变量
- android - 禁用基于 sdk 版本的意图过滤器?