我是靠谱客的博主 苹果鸵鸟,最近开发中收集的这篇文章主要介绍MSON,让JSON序列化更快,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

一、问题


我们经常需要在主线程中读取一些配置文件或者缓存数据,最常用的结构化存储数据的方式就是将对象序列化为 JSON字符串保存起来,这种方式特别简单而且可以和 SharedPrefrence配合使用,因此应用广泛。但是目前用到的 Gson在序列化 JSON时很慢,在读取解析这些必要的配置文件时性能不佳,导致卡顿启动速度减慢等问题。

Gson的问题在哪里呢?笔者用 AndroidStudio的 profile工具分析了 activity.onCreate方法的耗时情况。

图 1

图 2

如图1所示,可以发现 Gson序列化占用了大部分的执行时间,从图2可以更直观地看到Gson.fromJson占用了61%的执行时间。分析 Gson的源码可以发现,它在序列化时大量使用了反射,每一个field,每一个get、set都需要用反射,由此带来了性能问题。

二、如何优化


知道了性能的瓶颈之后,我们如何去修改呢?我能想到的方法就是尽量减少反射。

Android框架中由 JSONObject来提供轻量级的 JSON序列化工具,所以我选择用 Android框架中的 JSONObject来做序列化

最后

以上就是苹果鸵鸟为你收集整理的MSON,让JSON序列化更快的全部内容,希望文章能够帮你解决MSON,让JSON序列化更快所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(34)

评论列表共有 0 条评论

立即
投稿
返回
顶部