我正在尝试构建一个应用程序,它将成为一种电子书(很多理论和图表)。
现在我想知道的是,因为存储数据的方法有很多,哪一种是最好的
我也非常关注数据的安全性。由于这将是一个付费应用程序,我希望数据安全,也快速方便。
另外,我想把doc文件(Data)转换成epub格式&然后使用epub api来访问数据并在Android应用程序屏幕上显示它,这将是一个很好的想法吗?与上述方式相比?
哪一个更安全,更快速,更灵活,更安全容易!
答案 0 :(得分:1)
这取决于您将如何访问此数据。如果要存储在xml中,则必须从开始读取整个文件以访问章节(例如,加载到内存)。如果你要存储大数据,这不是一个好主意。 更快地存储在SQL中。您可以访问任何章节。您不需要读取所有数据,例如xml。
简单文本文件具有与XML相同的问题(xml是文本文件)。
保护数据的唯一方法 - 加密它。如果用户将在他们的设备上获得root权限,他将获得对您的文件和数据库的访问权限。没有任何意义存储您的数据。
答案 1 :(得分:0)
取决于对您来说更重要的事情 - 速度或安全性。
<强>速度强>
绝对是SQLite,它并不是最干净,但绝对是最快的方式。
安全强>
加密的自定义文件 - 需要一段时间才能读取整个文件,然后对其进行解密才能显示它,但您可以确定攻击者将访问加密的文件并且不知道加密 - 那些数据对他来说毫无用处。
<强> EPUB 强>
如果您担心安全问题,那么除非您知道如何应用DRM ......否则这不是一种诚实的方式。
答案 2 :(得分:0)
我认为存储大量数据的最佳方式是数据库。在Android中它是sqlite数据库。我建议你把所有的文本数据都放到sqlite数据库中。您可以轻松漂亮地构建它。然后将您的图像放入assets文件夹并将pathes存储到数据库中的图像。
数据库解决方案的优点:
缺点
P.S如果您决定使用XML,我建议您将其更改为JSON。它更快更容易使用。
答案 3 :(得分:0)
哪一个更安全,更快速,更灵活,更安全容易!
安全:它主要依赖于加密系统。
快速:SQLite,你可以在这里阅读SQLite的一些优点Android Performance : Flat file vs SQLite
灵活易用:将加密文件存储在内部存储中是一种灵活而简单的方法。我认为它足够安全。在这里,您可以获得有关存储数据http://developer.android.com/training/articles/security-tips.html#StoringData
的一些安全提示答案 4 :(得分:0)
为了保存少量数据,您可以使用xml作为字符串,但是会丢失快速加载因子 sqlite几乎适用于所有目的,但安全性