什么是在BlackBerry上存储(外部)和读取数据的推荐方法?

时间:2009-10-22 13:41:50

标签: database blackberry

我们有一个应用程序,我们希望移植到BlackBerry平台,从SQLite数据库读取数据,就此端口而言,它将大约为4 MB。这个数据库并不是特别复杂(几个关系,两个有趣的索引/搜索表和结果数据),仅用于阅读。

在没有数据库的情况下在BlackBerry上重现这样的事情的最佳方法是什么?

几点说明:

  • 我们喜欢在BlackBerry上使用数据库,但由于这个应用程序是免费软件,我们只能考虑免费软件解决方案(例如SQLite)。我们无法将这些成本推给消费者。
  • 我们知道5.0支持SQLite,但我们要支持旧设备(即OS 4.2)。
  • 此应用程序不能依赖连接到互联网。

看起来以下选项是可能的:

  • RMS(记录管理系统) - 似乎有可能但我们无法找到一个好的API来将这些文件写在设备之外。例如,我们希望使用Java或.NET程序(就像我们做SQLite一样)准备数据库,并简单地将结果数据文件传输到设备。我们不会从BlackBerry应用程序中写入记录。

  • BlackBerry Persistence Store - 似乎是一个更好的RMS版本,具有相同的主要缺点。

  • 文件连接API - 这似乎是我们的最佳选择,即使我们必须做所有繁重的工作。我没有机会进行研究,但我希望有一些API可以将数据库格式(例如类似于JSON的东西)写入平面文件,例如我们建议的应用程序。这里的任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:4)

使用持久存储或文件进行数据库存储?这取决于几件事:

  • 数据量(如果它> 1 mb,更好地使用文件系统和几个文件)
  • 安全性(如果您需要加密,请使用持久性存储)
  • 性能(持久性存储会降低内存性能,但文件系统io会降低处理器性能,而不会影响文件大小)
  • 框架限制(例如,您无法使用kXML打开xml文件>约1.7 MB)

另见:

Blackberry - application settings save/load
J2ME/Blackberry - how to read/write text file?
Better approach for XML Creation in Blackberry