Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/207.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 推荐用于将在线数据导入Android设备上的SQLite数据库的文件/文件类型_Java_Android_Import - Fatal编程技术网

Java 推荐用于将在线数据导入Android设备上的SQLite数据库的文件/文件类型

Java 推荐用于将在线数据导入Android设备上的SQLite数据库的文件/文件类型,java,android,import,Java,Android,Import,我使用PHP访问数据库并在线生成XML文件。然后,我的android应用程序获取XML文件,解析它,并将数据插入SQLite数据库 这工作很好,但速度非常慢。我们有一个iOS应用程序和一个Android应用程序都在做同样的事情。。。android应用程序每次需要刷新数据都需要7-10秒,而iOS应用程序最多只需要2-3秒 记录不多,平均30-50条。有很多内容-一些大文章,每个都有2-10张照片(我不是下载照片-只是导入他们的url、大小…等等) 我举了一个关于如何使用Sax导入XML的示例(据

我使用PHP访问数据库并在线生成XML文件。然后,我的android应用程序获取XML文件,解析它,并将数据插入SQLite数据库

这工作很好,但速度非常慢。我们有一个iOS应用程序和一个Android应用程序都在做同样的事情。。。android应用程序每次需要刷新数据都需要7-10秒,而iOS应用程序最多只需要2-3秒

记录不多,平均30-50条。有很多内容-一些大文章,每个都有2-10张照片(我不是下载照片-只是导入他们的url、大小…等等)

我举了一个关于如何使用Sax导入XML的示例(据说是最快的方法)

TLDR:
有没有更好的方法可以格式化我的数据,使它比我现在做的更快?CSV?使用PHP生成SQLite Insert语句?这方面的“标准”和/或“最佳”是什么


编辑:
我读得越多,JSON和XML之间的差别就越小,如果是大数据(如文章)而不是JSON,使用XML甚至可以更快。不确定这是否正确,只是进一步阅读的细节。

您应该尝试使用
JSON
而不是
XML
我认为使用它可能会快得多。它在Android上受支持,据我所知,iOS也可以处理它。

不要使用XMLJSON,而是查看谷歌的协议:

由于您使用的是PHP,因此需要找到适合您的实现,以下是一个列表:


展望未来,这将是一种非常好的传输和整理数据的方法。请让我们知道这是否适合您。

我曾经创建一个SQLite db文件并将其gzip,然后在设备上解压缩并直接使用它。(肯定不是个好办法)


对于以后的数据更新,我使用json传输数据。JSON当然可以处理大型文章,但如果您愿意,您可以将文章的URL放在JSON中,并在后续传输中获取它们。

虽然我当然可以尝试使用JSON,但如果这是正常/好的,我想的不仅仅是“我想它可能快得多”。:)JSON可以处理带有奇怪字符的大型文本文章吗……等等?(我只对少量数据使用json)是的,它支持大量数据,这是您正在做的事情的常见格式。对于json,使用jackson解析器。它比android提供给你的默认功能要快。我很困惑。。。你是在暗示gzip的方式还是说它不好?后期更新不起作用,因为他们应该能够在离线时阅读文章,如果必要的话。我觉得在生产过程中传输整个SQLite DB大约6个月后,这不是一个好方法。。。一些不需要的垃圾可能潜入,一些依赖于设备的值需要单独设置。我最终只是用一个真正的后端服务来为所有东西提供即时服务。如果你的客户端应用只需要一次就可以获取一次数据,那么你可以打包你的sqlite db和gzip并传输它,而不用担心更新。如果你的客户端应用程序在初次传输后会更新它的数据,那么你可以考虑使用JSON(你可以在逃跑之后把文章放在内联,或者更新过程可以解析JSON,提取URL和获取URL),我很困惑,为什么你用我不推荐做的事情回答了我的问题。(其中的另一半已经在回答中提出)我回答了这个问题,因为对我来说,这是最快的方法,无需在PHP中生成sql insert语句并发送出去。我说这不是一个好方法,因为这是我在生产中使用该方法6个月后的感受,看到用户抱怨奇怪的行为以及维护开销。不幸的是,XML中有一些标记,根据该文档,“协议缓冲区”不是一个用标记对基于文本的文档建模的好方法(例如HTML):(拍摄-希望这是解决方案。