我正在开发 Android 应用程序,但我遇到了困境。我有一个对象列表。我必须使用数据库更新每个对象。我有两种方法:
方法一: 我可以循环遍历对象。对于每个对象,我可以连接到服务器,更新它,然后继续处理下一个对象,依此类推。
方法2: 我可以将对象存储在列表中,将整个列表发送到服务器,在服务器端更新它,然后返回更新后的对象列表。
我的问题是:
- 哪种方法更快?
- 哪种方法更省手机电池?
顺便说一句,方法 1 对我来说更容易编码:)。谢谢。
最佳答案
方法 1:需要更长的时间并利用更多的带宽和处理能力
原因:
- 每个网络调用都会有自己的套接字创建和关闭开销。
- 每个网络调用可能必须等到套接字打开并正确完成握手。
- 每次“更新”在您传递的消息方面都可能有自己的开销。例如,如果您将 XML 数据传递到服务器,则可能需要为每个对象重复包含标签等。
- 每个对象的序列化(XML、 native 或其他形式)每次都会产生额外的开销
方法 2:通常会花费更少的时间,并且往往使用更少的带宽和处理能力
原因:见上文:)
关于java - 从 Android 访问数据库的最佳方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2910098/