2013年6月23日

摘要: 之前看的内容,占个位子,以后补上。------------8月2日-------------好久没看了,惭愧,今天抽了点时间重新看了Redis的字符串,一边写博客,一边看。Redis的字符串主要在sds.h、sds.c文件中。打开sds.h,发现代码也不多。贴一下1 typedef char *sds;2 3 struct sdshdr {4 int len;5 int free;6 char buf[];7 };看到了没,sds其实就是个char* ,刚开始看到这里,觉得好失望,这不是骗国家的钱吗,往下看,发现没这么简单,还牵扯到指针操作。sds和sdshdr数据结构... 阅读全文
posted @ 2013-06-23 14:17 feiyunruyue 阅读(226) 评论(0) 推荐(0) 编辑

2013年6月18日

摘要: 计划每天花1小时学习Redis 源码。在博客上做个记录。--------6月18日-----------redis的字典dict主要涉及几个数据结构,dictEntry:具体的k-v链表结点dictht:哈希表dict:字典具体关系为1 typedef struct dict {2 dictType *type;3 void *privdata;4 dictht ht[2];5 int rehashidx; /* rehashing not in progress if rehashidx == -1 */6 int iterators; /* numb... 阅读全文
posted @ 2013-06-18 21:45 feiyunruyue 阅读(466) 评论(2) 推荐(0) 编辑

2013年6月15日

摘要: 没什么好说的,注意bindView和newView就行。 1 public class MySimpleCursorAdapter extends CursorAdapter { 2 private LayoutInflater mInflater; 3 4 public MySimpleCursorAdapter(Context context, Cursor c) { 5 super(context, c, false); 6 mInflater = LayoutInflater.from(context); 7 } 8 9 ... 阅读全文
posted @ 2013-06-15 20:27 feiyunruyue 阅读(574) 评论(0) 推荐(0) 编辑
摘要: 今天看了下Android 的ArrayAdapter源代码,它继承了BaseAdapter,代码加上注释有500多行。于是,我精简了下,自己写个了最简单的供大家理解。 1 public class MyArrayAdapter<T> extends BaseAdapter { 2 private List<T> mObjects; 3 private int mResource; 4 private LayoutInflater mInflater; 5 6 public MyArrayAdapter(Context context, int layout... 阅读全文
posted @ 2013-06-15 00:03 feiyunruyue 阅读(171) 评论(0) 推荐(0) 编辑

2013年6月9日

摘要: 在com/dangdang/reader/e/a目录下有个叫a.smali的文件,里面有个叫a的方法,我把代码全都贴出来 1 .method public static a([B[B)[B 2 .locals 5 3 4 new-instance v0, Lorg/bouncycastle/jce/provider/BouncyCastleProvider; 5 6 invoke-direct {v0}, Lorg/bouncycastle/jce/provider/BouncyCastleProvider;-><init>()V 7 8 invoke-s... 阅读全文
posted @ 2013-06-09 21:04 feiyunruyue 阅读(660) 评论(1) 推荐(0) 编辑

2013年6月8日

摘要: 接上节那个demo,我们简单学习下smali语法,可以自己去google上搜,看雪论坛的这篇就不错。在google code上下载用到的jar包,地址https://code.google.com/p/smali/downloads/listjava -jar baksmali-2.0b4.jar Hell.dex默认在当前目录下生成out 文件夹,里面有Hell.smali文件。 1 .class public LHell; 2 .super Ljava/lang/Object; 3 4 # static fields 5 .field private static final HELL:. 阅读全文
posted @ 2013-06-08 16:41 feiyunruyue 阅读(462) 评论(0) 推荐(0) 编辑

2013年6月6日

摘要: 所有内容仅供学习这一节简单看一下dex文件的结构和smali语法。具体格式请参考谷歌官网dex 文件结构如下图:dexHeader定义如下: 1 /* 2 * Direct-mapped "header_item" struct. 3 */ 4 struct DexHeader { 5 u1 magic[8]; /* includes version number */ 6 u4 checksum; /* adler32 checksum */ 7 u1 signature[kSHA1DigestLen]; /* SHA... 阅读全文
posted @ 2013-06-06 16:11 feiyunruyue 阅读(356) 评论(0) 推荐(0) 编辑

2013年6月5日

摘要: 接上节,这一节说下如何修改apk并重新发布。新用到的工具:re-sign.jar具体步骤如下:找到strings.xml,将里面的内容替换为自己要改的文字。java -jar apktool.jar b dangdang,重新打包,在dist目录下生成新的apk文件。使用re-sign.jar对该apk文件重新签名,拖入apk即可。一般汉化就是这么个步骤吧!这也提醒我们,下载app尽量在官网下。 阅读全文
posted @ 2013-06-05 21:29 feiyunruyue 阅读(202) 评论(0) 推荐(0) 编辑
摘要: 记录一下自己学习Android反编译的过程。贴出来仅供大家研究,自己在家捣鼓捣鼓就算了,不要做不道德的事,毕竟大家都不容易。先说下我的环境:操作系统:windows xpApktool:1.5.2dex2jar:0.0.9.15jd-gui:0.3.5简单说一下步骤:1. java -jar apktool.jar d dangdang.apk该命令会在当前文件夹下生成dangdang目录,里面包含assets、res、smali、AndroidManifest.xml、apktool.yml等文件。2. 从apk文件里提取出classes.dex,执行dex2jar classes.dexa 阅读全文
posted @ 2013-06-05 19:42 feiyunruyue 阅读(524) 评论(0) 推荐(1) 编辑

2012年2月25日

摘要: public long createNote(String title, String body) { ContentValues initialValues = new ContentValues(); initialValues.put(KEY_TITLE, title); initialValues.put(KEY_BODY, body); return mDb.insert(DATABASE_TABLE, null, initialValues); }ContentValues class is used to store... 阅读全文
posted @ 2012-02-25 14:35 feiyunruyue 阅读(319) 评论(0) 推荐(0) 编辑

导航