`

android-性能优化之SharedPreferences异步加载

 
阅读更多

注:本内容翻译于《android应用性能优化》英文版

 

SharedPreferences异步加载

使用场景:用户保存基本资料

public class SharedPreferencesUtils {

	private static final Method sApplyMethod = findApplyMethod();

	private static Method findApplyMethod() {
		// TODO Auto-generated method stub
		Class cls = SharedPreferences.Editor.class;
		try {
			return cls.getMethod("apply");
		} catch (NoSuchMethodException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return null;
	}
	
	public static void apply(SharedPreferences.Editor editor){
		if(sApplyMethod!=null){
			try {
				sApplyMethod.invoke(editor);
			} catch (IllegalArgumentException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			} catch (IllegalAccessException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			} catch (InvocationTargetException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
		}
		editor.commit();
	}
	
}

 

分享到:
评论

相关推荐

    老罗android开发视频教程全集百度网盘下载

    【第一版第十三章】老罗Android开发视频--异步加载数据库(2集) 【第一版第十四章】老罗Android开发视频--多线程编程(7集) 【第一版第十五章】老罗Android开发视频--百度地图实战开发(10集)

    Android 常用六大框架

    (4) 图片缓存模块:通过FinalBitmap,imageview加载bitmap的时候无需考虑bitmap加载过程中出现的oom和android容器快速滑动时候出现的图片错位等现象。 FinalBitmap可以配置线程加载线程数量,缓存大小,缓存路径,...

    8天快速掌握Android教程源码

    67_TraceView性能测试与Android应用性能优化方案.avi 所在项目:tabhost Android核心基础加强内容(暂不对外公布) 复杂UI界面设计、GPS与GoogleMap、自定义View、Ubuntu Linux下使用C语言面向底层开发、通过JNI进行...

    Android 优化之存储优化的实现

    当 SharedPreferences 文件还没有被加载到内存时,调用 getSharedPreferences 方法会初始化文件并读入内存,这容易导致 耗时更长。 Editor 的 commit 或者 apply 方法的区别在于同步写入和异步 写入,以及是否需要...

    工作中经常用到的android开发代码2

    我个人在工作中常用的代码,自己边用边总结的 1.退出程序对话框提示 2.没有标题栏,没有状态栏 3. 禁止重力感应 横屏 竖屏 4.handler 5.缓冲条 6.播放器读取时间专用:把毫秒 转化...18. android listview 异步加载图片

    传智播客的android开发源代码

    视频名称 源码 ---------------------------------...64_ListView数据异步加载与AsyncTask.avi 所在项目:DataAsyncLoad 65_ListView数据的分批加载.avi 所在项目:datapageload 66_自定义标签页.avi 所在项目:tabhost

    source.zip

    67_TraceView性能测试与Android应用性能优化方案.avi 所在项目:tabhost Android核心基础加强内容(暂不对外公布) 复杂UI界面设计、GPS与GoogleMap、自定义View、Ubuntu Linux下使用C语言面向底层开发、通过JNI进行...

    Android典型技术模块开发详解

    16.2 Android优化 16.2.1 内存分配跟踪Allocation Tracker 16.2.2 内存监控Heap 16.2.3 内存分析MAT 16.2.4 如何避免内存泄漏 16.3 ActivityGroup 16.4 ViewStub 16.5 Bitmap内存溢出 16.5.1 图片预先缩放 16.5.2 ...

Global site tag (gtag.js) - Google Analytics