- 博客(17)
- 资源 (5)
- 收藏
- 关注
原创 一种适合懒人的JSON解析方法
原始的JSON解析方式:构造JSON对象 -> 判断JSON对象是否包含某个元素 -> 获取JSON对象里面的元素。String content = "{\"name\":\"aceding\",\"age\":26}";JSONObject jsonObject = new JSONObject(content);if(jsonObject.has("name")){ St
2017-03-25 23:56:55 861
原创 Messenger与AIDL的异同
最近做项目需要使用进程间通信,大家知道应用层的进程间通信无非Broadcast,Activity,Service,Content Provider四大组件。Broadcast适用于一对多,我这里是一对一(子进程与主进程)的关系,且Broadcast性能较差,所以不用Broadcast。另外Content Provider主要用户本地化数据的通信,我这里主要是内存级别的数据,所以也不用Content
2015-08-30 02:25:31 4078
原创 android开发中遇到的一些bug
1. crash,堆栈信息如下:,这个问题很有可能与硬件加速有关系,尝试关闭activity级别的硬件加速,看能否解决。
2015-08-10 19:56:33 754
原创 探究requestDisallowInterceptTouchEvent失效的原因
昨天在使用requestDisallowInterceptTouchEvent方法的时候,发现它失效了:在设置了requestDisallowInterceptTouchEvent(true)之后,父View的onInterceptTouchEvent方法照样执行。记得以前用的时候好好的,今天用怎么失效了呢?只能通过查看源码来一探究竟了。首先看下requestDisallowInter
2015-06-28 01:32:55 16536 12
原创 android开发小技巧
1. anr的log一般都在/data/anr/目录下,使用这个命令即可导出log:adb pull /data/anr/traces.txt d:/ (意思是将手机上的traces.txt导出到电脑的d目录下)
2015-01-12 12:09:23 729
原创 Scoller,scrollTo(int x, int y),scrollBy(int x, int y)的区别
scroller和scrollBy和scrollTo的区别:别看他们三个长的比较像,但作用有很大不同。scrollTo(int x, int y)和scrollBy(int x, int y)是来实现view的偏移的(和offsetTopAndBottom(int offset),offsetLeftAndRight(int offset)效果很像),它们两个的区别scrollTo是滑动到指定
2014-10-13 17:07:39 912
原创 QQ空间点评列表效果实现
首先,我们要实现的效果是这样的:1. 评论人和被评论人颜色与评论内容颜色不同。通过重写ClickabSpan的updateDrawState方法来实现。 @Override public void updateDrawState(TextPaint ds) { ds.setUnderlineText(false); ds.setColor(Color.B
2014-03-14 18:02:34 9712 6
原创 支持Android4.0以下webp的使用
最近项目中需要使用到webp,主要目的是减少网络流量(同一张图片,webp格式能比jpg格式小约30%)。但是Android在4.0以上BitmapFactory才支持webp,今天的操作就是要使Android4.0以下的版本也能进行webp解压缩。首先,需要搭建NDK开发的环境1. 下载并安装Cygwinhttp://www.cygwin.com/按照向导一路向下,使用默认的
2013-11-30 16:53:09 18195 6
原创 Thread的sleep方法和wait方法的区别
sleep和wait都是使线程暂时停止执行的方法,但它们有很大的不同,sleep是线程类Thread 的方法,它是使当前线程暂时睡眠,可以放在任何位置。而wait是Object类的方法,它是使当前线程暂时放弃对象的使用权进行等待,必须放在同步方法或同步块里。Sleep使用的时候,线程并不会放弃对象的使用权,即不会释放对象锁,所以在同步方法或同步块中使用sleep,一个线程访问时
2013-05-24 17:21:27 1081
原创 [Java] Java语言关键字解释
Java语言关键字解释1. final final关键字修饰成员变量 可以将成员变量定义为final,但构造对象时必须初始化这样的成员变量。也就是说,必须确保在每一个构造方法执行后,这些成员变量的值被设置,并且在后面的操作中,不能够再对它们进行修改。 例如:package com.dingji.java.test.bean;public c
2013-05-01 23:49:50 832
原创 Android 中 Handler,Looper,HandlerThread 的关系分析
Android 中 Handler,Looper,HandlerThread 的关系分析最近项目中要用到 HandlerThread,对其的用法一直不甚了解,趁着五一放假就花了点时间研究一下,顺便备份在博客上。因为刚开始研究的是 HandlerThread,所以我们就从 HandlerThread 入手,我们先来看一下它的源代码/* * Copyright (C) 2006 Th
2013-04-30 23:00:26 1129
原创 使用Proguard混淆Android 源代码
使用 ProGuard 混淆 Android 源代码1. APK文件混淆方法请参考:《Android:Develop/Tools/ProGuard》《Android 2.3 代码混淆proguard技术介绍 》2. Jar包的混淆方法我们在做项目的时候会把一些公共的东西打成 Jar 包,让程序去调用。通过反编译工具,别人可以轻松的获取我们 Jar 包的源代码。为了不
2013-04-30 01:51:57 896
原创 Eclipse下关联Jar包源代码
在eclipse中关联源码1. 首先,找到你需要关联的jar包2. 右键,弹出一个对话框3. 看到 Java Source Attachment,见名知意,导入相关的源代码文件即可。4. Java 和 Android 都是一样的,通过 Ctrl + 类名或者 F3 即可以阅读相关源代码。很多东西,用过就忘了,为了不忘,记录下来比较好,很多次都想到了因为嫌麻烦却没有做
2013-04-29 00:49:37 1112
原创 快速排序算法
前几天去应聘实习生的时候听面试官说企业里用到的排序算法都是快速排序算法, 回来后就重新看了下书,把快速排序算法写了出来,现在贴出来,给大家看看,希望大家能有所指教。代码如下:#include using namespace std;/* 函数:int partition(int[],int,int) 目的:对数组进行遍历,确定数组最后一个元素应该所在的位置,且使得该位置 前面的元素
2011-05-04 15:56:00 655
原创 BM算法C语言实现
前些日子分析了一下BM算法,时间上断断续续的,效率很低,今天上午才算最后完工,关于BM算法我主要参考了以下内容:1.http://ouyangjia7.iteye.com/blog/3531372.http://blog.csdn.net/chong232/archive/2010/08/12/5806968.aspx这两篇文章都写得很好,给我有很多帮助,但是看上面的源代码有一些地方我
2011-05-03 12:21:00 6351 2
c/c++指针经验总结(很有用的知识,讲解的很易懂但是很透彻)
2011-03-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人