Java 在sqlite或firebase数据库中保存数据?

Java 在sqlite或firebase数据库中保存数据?,java,android,sqlite,Java,Android,Sqlite,我的问题分为两部分: 1-如果我构建了一个android应用程序(测验应用程序),但问题中有图像(超过50个),那么在应用程序或在线数据库中用sqlite保存数据的最佳方式是什么 2-如果我构建了一个android应用程序(句子列表,只有没有图像的文本),文本超过400 T,那么在应用程序或在线数据库中用sqlite保存数据的最佳方式是什么?在这两种情况下,您可以使用在线数据库和sqlite。Sqlite数据库基本上是本地数据库,您可以通过从联机数据库获取数据来存储数据。您可以使用以下方法: 从

我的问题分为两部分:

1-如果我构建了一个android应用程序(测验应用程序),但问题中有图像(超过50个),那么在应用程序或在线数据库中用sqlite保存数据的最佳方式是什么


2-如果我构建了一个android应用程序(句子列表,只有没有图像的文本),文本超过400 T,那么在应用程序或在线数据库中用sqlite保存数据的最佳方式是什么?

在这两种情况下,您可以使用在线数据库和sqlite。Sqlite数据库基本上是本地数据库,您可以通过从联机数据库获取数据来存储数据。您可以使用以下方法:

  • 从联机数据库获取数据并将其存储在本地数据库(sqlite db)中
  • 在应用程序中向用户填充视图时,您应该从本地数据库获取
  • 1.问题: 对于测验应用程序,我建议您首先从互联网下载所有问题,然后将其保存在手机上的某个位置(我认为最好的位置是sd卡或本地数据库)

    2.问题:
    我认为这也是最好的办法,首先从互联网上下载,然后保存到某个地方

    所有其他答案在如何协调在线和本地存储的使用方面都是合法的,但我想提供一些关于是否使用在线数据库的思考

    当你有很多数据时,你就可以使用在线数据库,而且你不想让一个庞大的应用程序中充满内置数据。它还可以灵活地更新应用程序内容,而无需定期向应用程序商店发送应用程序更新。第二个原因是,我建议您始终使用在线数据库,即使您现在开始的规模很小。不管怎样,让我们深入了解你的两种情况

    场景1:除非有理由相信用户在使用应用程序时无法访问互联网,否则请始终使用图像在线存储,特别是当您希望在将来灵活更新和增加应用程序内容时。即使您有理由不使用在线存储,您也需要小心这50张图像可能导致的爆炸性大小。每个图像的大小范围从30KB到大约300KB(如果您想放大图像),我们甚至还没有包括您的源文件。截至2017年,安卓应用程序的平均规模为,因此没有理由让测验应用程序接近这个数字

    场景2:所以现在只是文本。文字很便宜。应用程序内容的灵活性应该是是否使用在线数据库的唯一决定因素


    幸运的是,只要做得好,在线数据库就可以免费使用。据我所知,谷歌的Firebase对于低使用率有免费选择,对于非盈利使用可能有更宽松的选择(你必须与他们的客户服务部门沟通)。即使是AWS的解析服务器也有免费选项,使用率较低。

    你到底想在数据库中保存什么,图片?它的两个应用程序:第一个(测验应用程序)我想存储一些问题的问题、答案和图像。第二个应用程序是作为字典,只需将文本和声音文件保存在数据库中如果我使用了SQLite数据库,如果数据很大(大量文本),这是一种不好的做法吗?如果你的应用程序在线或离线都能工作,sqlite db是最佳实践。50个或更多图像是否不会减慢我的应用程序?当你将数据存储到本地db中时,应用程序大小应该增加,但决不会减慢应用程序。好的,这是我的问题,应用程序通常必须是轻的。。现在我的应用程序就像一本字典,有很多文本数据,我认为Sqlite就像你说的那样好。谢谢,但是数据是固定的,我不需要更新它。那么,为什么不从一开始就将所有数据保存在本地数据库中呢?首先,您可以灵活地使用此解决方案。如果你想添加问题或更新你的指导(新拼写),你可以很容易地做到这一点。定向数据如何才能是最终数据。该数据在用户的“回收”视图中列出