【发布时间】:2019-11-26 20:46:42
【问题描述】:
我正在制作一个板球实时比分 Android 应用程序。我为此购买了一个 API 并开始开发我的应用程序。 API 响应采用 JSON 格式。我能够将请求发送到服务器并以 JSON 格式获取数据。我也可以在我的应用程序中显示这些数据,但问题是,在板球中,数据可以随时更改。数据的变化没有固定的时间,所以我想监听数据的变化。我自己尝试过,但失败了。因此,我基本上编写了每 10 秒获取一次数据的代码。现在我能够获取并显示新数据,但仍然存在问题。由于我每 10 秒获取一次数据,因此我的应用程序消耗了大量内存,因此,我的应用程序在某个时间点后崩溃。大多数情况下,当堆达到 180 MB 左右时。
请您帮忙找出一种有效的方法来刷新我的 android 应用程序的数据,因为我认为使用这么多内存不是一个好主意。
【问题讨论】:
-
一定要看看使用 WebSockets。此外,您的堆不应该占用那么多内存。可以发一些代码吗?
-
你可能也想试试 Firebase。
-
如何使用 firebase 传递我的 JSON 数据?该 JSON 来自不同的服务器。 @Enzokie
-
如果不能修改服务器代码,恐怕这是不可能的。您可以在服务器中使用 Firebase 向所有连接的设备发出变化正在发生的信号,此时您知道应该进行服务器获取。
标签: android json memory-leaks out-of-memory heap-memory