当前位置: 首页 > news >正文

电子商务类网站建设普陀建设网站

电子商务类网站建设,普陀建设网站,可以做设计的网站,成都网站seo排名优化背景:项目中一直使用的是原生 SP,众所周知,使用原生 SP 存在卡顿性能问题。公司的性能监控平台抓到不少原生 SP 导致的 ANR 问题: java.io.FileDescriptor.sync (FileDescriptor.java) android.os.FileUtils.sync (FileUtils.java:256) android.app.SharedPreferencesImpl.… 背景:项目中一直使用的是原生 SP,众所周知,使用原生 SP 存在卡顿性能问题。公司的性能监控平台抓到不少原生 SP 导致的 ANR 问题: java.io.FileDescriptor.sync (FileDescriptor.java) android.os.FileUtils.sync (FileUtils.java:256) android.app.SharedPreferencesImpl.writeToFile (SharedPreferencesImpl.java:807) android.app.SharedPreferencesImpl.access$900 (SharedPreferencesImpl.java:59) android.app.SharedPreferencesImpl$2.run (SharedPreferencesImpl.java:672) android.app.QueuedWork.processPendingWork (QueuedWork.java:265) android.app.QueuedWork.waitToFinish (QueuedWork.java:178) android.app.ActivityThread.handleServiceArgs (ActivityThread.java:4977) android.app.ActivityThread.access$2300 (ActivityThread.java:284) android.app.ActivityThread$H.handleMessage (ActivityThread.java:2322) android.os.Handler.dispatchMessage (Handler.java:106) android.os.Looper.loopOnce (Looper.java:233) android.os.Looper.loop (Looper.java:334) android.app.ActivityThread.main (ActivityThread.java:8396) java.lang.reflect.Method.invoke (Method.java) com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:582) com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1068) 因此,替换原生 SP 迫在眉睫。 本文记录如何使用腾讯开源框架 MMKV 替换原生 SP、以及替换后当中遇到的一些问题解决。 一、替换方案选择 综合考虑,我们选择了方案3 二、接入 MMKV 新建 MMKV module build.gradle 中添加依赖,这里采用的是较为稳定的版本 1.2.14 implementation 'com.tencent:mmkv:1.2.14' 2. 重新实现SharedPreferences.Editor, SharedPreferences 以及迁移原本的 SharePreferences 数据 package com.mikel.mmkv;import android.content.Context; import android.content.SharedPreferences;import com.tencent.mmkv.MMKV;import java.util.ArrayList; import java.util.HashMap; import java.util.HashSet; import java.util.Map; import java.util.Set;public class MMKVSP implements SharedPreferences.Editor, SharedPreferences {private MMKV mmkv;private Context mContext;private boolean isMultiprocess;private ArrayListOnSharedPreferenceChangeListener listeners;private final Object listenerLock = new Object();public static void initialize(Context context) {MMKV.initialize(context);}public MMKVSP(Context context, String name, boolean multiProcess) {mContext = context;isMultiprocess = multiProcess;mmkv = MMKV.mmkvWithID(name,(isMultiprocess? Context.MODE_MULTI_PROCESS : Context.MODE_PRIVATE));listeners = new ArrayList();importFromAndroidSp(name);}private void importFromAndroidSp(String fileName) {MMKV migrateSpRecord = MMKV.mmkvWithID("migrate_sp_record");boolean isImported = migrateSpRecord.getBoolean(fileName, false);SharedPreferences sharedPreferences = null;if (!isImported) {if(mContext instanceof IMMKVProvider) {sharedPreferences = ((IMMKVProvider)mContext).getSuperSharedPreferences(fileN
http://www.hkea.cn/news/14287401/

相关文章:

  • 网站seo优化很好徐州百度网络点赞一个公司网站备案吗
  • 可以做物理题的网站网站创建域名
  • 有哪些做文创产品的网站怎样查找自己建设的网站
  • 如何做英文网站网络工程师培训大约多少钱
  • 用tomcat做网站网络推广竞价外包
  • 做暧在线观看网站wordpress 区块链媒体
  • 资金盘网站开发公司哪里好满洲里做网站
  • jsq项目做网站枣庄网站建设多少钱
  • 贵阳做网站公司看优秀摄影做品的网站
  • 网站实现留言功能js 获取 网站路径
  • 企业做网站的云南网站优化建站
  • 如何手机创建网站苏州建设工程协会网站
  • 网站模板文件下载dz论坛可以做商业网站
  • 网站建设 APP滨州网站建设腾度
  • 网站文字广告代码学校网站建设维护投标方案
  • 开发网站如何选需要注意什么宁波网站推广方式
  • 做网站建设工资高吗成都网络推广建站
  • c2c平台网站建设新手做自媒体从哪开始
  • 杭州建设招聘信息网站环保创业项目
  • 晨光科技 网站建设天津和平做网站多少钱
  • 如何做局域网网站装修公司的网站怎么做
  • 整站优化方案国家信用信息公示官网
  • 2345中国最好的网址站能做视频的软件有哪些
  • 网站开发二线城市济南品牌网站制作方案
  • 青岛网站建设方案维护盱眙在仕德伟做网站的有几家
  • 自动seo网站源码大连小程序哪个开发公司好
  • 做网站时版权怎么写苏州网站排名优化报价
  • 大庆市萨尔图区建设局网站公司网站制作应该注意些什么
  • 移动网站建设是什么意思沈阳网站维护公司
  • 有做货 物的网站吗少女たちよ在线观看动漫4