小编Ber*_*are的帖子

使用 Android Studio Profiler 时,Android 应用程序变慢

我尝试做的是获取有关游戏中英雄的大量数据并将其保存在数据库中,我使用 OkHttp 向服务器发出请求并使用 gson 解析 json,然后将我从 gson 获得的类保存到数据库中通过使用来自 Jetbrains 的名为 Exposed 的 ORM。调用在循环中进行,对于每个英雄将有 500 个关于他们最后一场比赛的结果,有 115 个英雄,我让线程在每个请求前休眠 1 秒。该应用程序开始运行得非常快,我什至无法在控制台中读取结果,但过了一会儿我得到了这个:

I/zygote: Background concurrent copying GC freed 72775(3MB) AllocSpace objects, 5(5MB) LOS objects, 49% free, 5MB/11MB, paused 416us total 1.664s
Run Code Online (Sandbox Code Playgroud)

然后应用程序运行得非常慢,我在数据库中获得 1 个条目/秒,那时我希望获得另一个 15000。在 logcat 中,我也得到了这个

03-29 12:01:00.050 1634-1651/? W/android.os.Debug: failed to get memory consumption info: -1
03-29 12:01:00.059 1634-1651/? E/memtrack: Couldn't load memtrack module
Run Code Online (Sandbox Code Playgroud)

应用程序没有崩溃,它只是变得非常慢,有趣的是,当我重新启动应用程序时,它立即变慢,第一次在 10 分钟后变慢,但后来一直很慢。同样在我重新启动后,它会写出类似的东西

V/StudioProfiler: Loaded classes: 8137
Run Code Online (Sandbox Code Playgroud)

如果应用程序刚刚启动,为什么会加载这么多类,这意味着什么我是初学者,我真的不明白这一切。有任何想法吗?

谢谢你。

android gson kotlin okhttp kotlin-exposed

6
推荐指数
0
解决办法
1698
查看次数

标签 统计

android ×1

gson ×1

kotlin ×1

kotlin-exposed ×1

okhttp ×1