摘要: Android Log 系统将Log分为4个buffer缓存区,我们平时调试APP使用到的为main缓存区输出内容,不同的buffer内的信息也是不一样 架构图: Log Buffers: /dev/log/main 记录应用程序类型日志 /dev/log/radio 记录无线相关日志(网络,GMS 阅读全文
posted @ 2016-07-31 16:54 HappyCode002 阅读(415) 评论(0) 推荐(0) 编辑
摘要: 一:关于Exception 我们在写程序是都会遇到异常处理问题,比如:下面一段代码 public static HttpEntity getHttpEntity2(String url){ HttpClient client = new DefaultHttpClient(); ... 阅读全文
posted @ 2016-07-28 20:44 HappyCode002 阅读(387) 评论(0) 推荐(0) 编辑
摘要: 计算设备尺寸: public static double getScreenPhysicalSize(Activity ctx) { DisplayMetrics dm = new DisplayMetrics(); ctx.getWindowManager().getDefaultDisplay( 阅读全文
posted @ 2016-05-03 17:06 HappyCode002 阅读(250) 评论(0) 推荐(0) 编辑
摘要: Edittext响应onclick,由于click事件被onTouchEvent拦截,所以通过设置touch事件监听处理 EditText设置enable为false时,不响应ontouch事件,但又进行了事件拦截,没有传递给parent ViewGroup ,由于在onTouchEvent事件没有 阅读全文
posted @ 2016-05-03 17:05 HappyCode002 阅读(529) 评论(0) 推荐(0) 编辑
摘要: 时间格式化处理: dp,dx,sp转化: 代码中设置dip,sp方式 or 文件大小格式化处理: android.text.format.Formatter类中formatFileSize(Context, long)方法,用来格式化文件大小(B → KB → MB → GB) android.te 阅读全文
posted @ 2016-05-03 17:04 HappyCode002 阅读(416) 评论(0) 推荐(0) 编辑
摘要: SQLite用于存储一些数据量较多,结构比较复杂情况,使用的时候只需要实现SQLiteOpenHelper,在onCreate创建数据表,onUpgrade做升级处理 通过Helper实例对DB进行数据处理,例如,database = dbHelper.getWritableDatabase()... 阅读全文
posted @ 2016-02-26 13:33 HappyCode002 阅读(211) 评论(0) 推荐(0) 编辑
摘要: 最近在项目中需要判断文件类型,如果只根据文件后缀名称,还不够严格(有可能手动修改后缀名称),所以这种判断文件类型有差错,想起了以前在网上看到使用根据读取头文件部分内容与标准格式文件对比,即可准确判断文件类型,这里可以读取3个字节,或者10个字节 具体如下: 10个字节一种判断 privat... 阅读全文
posted @ 2015-12-11 15:19 HappyCode002 阅读(868) 评论(0) 推荐(0) 编辑
摘要: 在android中调用应用打开一个网页,文本需要通过intent隐士调用打开,但是在调取的应用列表中,又不符合我们需求的应用或者需要我们指定部分应用可以选择在列表内 那我们如何过滤这个列表应用呢?解决的办法是得到所有能处理ACTION_的应用程序包名,然后根据名字来过滤或者特殊处理。 主要用... 阅读全文
posted @ 2015-07-07 17:53 HappyCode002 阅读(324) 评论(0) 推荐(0) 编辑
摘要: 定义注解类型int取代enum public static final int LEVEL_FETCH_NONE=0; public static final int LEVEL_FETCH_FULL=1; public static final int LEVEL_FETCH_DISK=2; pu 阅读全文
posted @ 2015-04-14 17:29 HappyCode002 阅读(334) 评论(0) 推荐(0) 编辑
摘要: 上一篇提到了AES加密方式基本实现,这一篇我们不得提出一个问题,就是代码的安全性。我们知道java层代码很容易被反编译,很有可能泄漏我们加密方式与密钥内容,那我们该怎么办呢?我们可以使用c/c++实现加密,编译成So库的形式,可供java实现调用,这样就大大增强程序安全性,因为so反编译结果是arm 阅读全文
posted @ 2014-10-27 22:51 HappyCode002 阅读(906) 评论(0) 推荐(0) 编辑
摘要: AES加密算法是目前比较流行加密方式,目前还没有针对AES有效的破解方式,比较靠谱。AES又称Rijndael加密法,是美国联邦政府采用的一种区块加密标准。这个标准用来替代原先的DES,已经被多方分析且广为全世界所使用。 AES加密数据块和密钥长度可以是128比特、192比特、256比特中的... 阅读全文
posted @ 2014-10-26 21:51 HappyCode002 阅读(619) 评论(0) 推荐(0) 编辑
摘要: 我们知道采用DES加密算法的文件,有可能会被人相对容易破解掉,并不是很安全,如果采用多次混合加密方式那么就会增加被破解难度。 * 3DES即三重DES加密算法,也被称为DESede或者Triple DES。使用三(或两)个不同的密钥对数据块进行三次(或两次)DES加密(加密一次要比进行普通加... 阅读全文
posted @ 2014-10-26 21:25 HappyCode002 阅读(803) 评论(0) 推荐(0) 编辑
摘要: 整理一下关于android代码混淆, android 中混淆采用的是ProGuard工具,默认时会混淆项目内所有源代码,但是代码中有些内容是不能被混淆的否则程序会无法运行。那么其实开发者所要做的事情就是要编写脚本告诉ProGuard哪些方法,类,接口等不能使用混淆,保证程序能正常运行。 其实编写混淆 阅读全文
posted @ 2014-10-25 22:48 HappyCode002 阅读(667) 评论(0) 推荐(0) 编辑
摘要: 抽象工厂是一种创建模式,类似于普通工厂模式,即它更像是工厂厂房。 如果你熟悉Java的工厂设计模式,你会发现,我们根据所提供的输入,工厂类返回不同的子类使用if-else或switch语句来实现这个单一的工厂类。 在抽象工厂类中中我们摆脱if..else代码块去判断,每个子类都会有一个工厂类,然... 阅读全文
posted @ 2014-09-21 21:58 HappyCode002 阅读(165) 评论(0) 推荐(0) 编辑
摘要: 工厂模式是造物设计模式之一,它广泛适用于JDK以及像Spring和Struts框架。 工厂设计模式是用来当我们有一个超类多个子类,并根据输入情况,我们需要返回的子类之一。这种模式采取了类的实例化,从客户端程序的工厂类的责任。首先让我们了解如何在Java中实现工厂模式,然后我们将了解它的好处,我们会看 阅读全文
posted @ 2014-09-21 21:11 HappyCode002 阅读(202) 评论(0) 推荐(0) 编辑