我有一个同时适用于Android和iOS的应用程序。有很多复杂的SQL查询,因此我有一个c ++层来生成查询,以便可以在android和ios上使用该逻辑。
一切正常,但我注意到在Android上,出于某种原因,二级排序对我不起作用。
我有一个项目列表,我想按日期排序,然后再按标题排序。在iOS上,这很好用,在Android上,虽然按日期排序,但标题没有按标题排序。
两个平台中的查询和数据库文件相同。唯一的区别是,我使用的是Android的SQLite包装器,而不是iOS上的原始C语言。
对于后代,以下是查询:
“从游戏中的releaseDateInt <= 1542406864和releaseDateInt> = 1538778064的游戏中选择SELECT games.gameID,releaseDateInt,然后按releaseDateInt DESC排序,games.title COLLATE NOCASE ASC”
同样,在iOS上运行正常,但在Android上忽略了二级排序顺序。在执行查询时也没有警告。
有帮助吗?
答案 0 :(得分:0)
在更多设备上进行测试后,我得出的结论是这是一个Android问题。它通常仅在设备上发生,而在模拟器上则不发生。这使我相信,某些设备上的sqlite库版本是应归咎的。