Android
zhou191954
这个作者很懒,什么都没留下…
展开
-
Android 内核源代码交叉编译
本文是在Ubuntu10.10系统上进行实践的。1 因为我们需要Android的模拟器,所以需要安装Android的SDK,并创建AVD, 可以一次命名为AVD15,AVD22,AVD23,... AVD15对应1.5,AVD22对应2.2,AVD23对应2.3,... 获取.config文件:在启动模拟器AVD15:$emulator -avd转载 2014-06-12 10:50:13 · 521 阅读 · 0 评论 -
Android 反编译流程
一、dex文件转为jar文件1.第一篇一、反编译流程图 二、工具使用方法(命令)准备工作假设我的工作目录为 $AndroidDecompile,首先要将system.img中(或者说从源码中编译好的)几个重要的odex文件拷贝到工作目录中,他们是:core.odex, ext.odex, framework.odex,转载 2014-06-11 14:56:10 · 606 阅读 · 0 评论 -
Android Sandbox 开源工具介绍
android sandbox 通过利用开源工具动态分析、静态分析android的相关应用,发现应用的具体行为,从而进行判断android应用的危险程度,本文重点介绍几款常用工具。1、droidbox是基于TaintDroid系统构建的Sandbox,通过hook系统api对apk程序进行监控,随着android SDK的不断更新,其也要随之适配。droidbox:http转载 2014-06-09 15:48:45 · 777 阅读 · 0 评论 -
Android boot.img破解
一、破解原理 Android手机获得Root权限,其实就是让/system和/data分区获得读写的权限。这两个分区的权限配置,一般在根分区的init.rc文件中,修改这个文件可永久获得root权限。众所周知,市面上绝大部分的Android手机文件系统有三个分区,分别是/,/system,/data。根分区(/)是打包为ramdisk.img后,再与kernel的zImage转载 2014-05-25 15:21:57 · 1503 阅读 · 0 评论 -
Smali-Dalvik虚拟机指令语言
最近一周在研究rom移植,所以就对Smali语言学习了一下,Smali语言其实就是Davlik的寄存器语言;Smali语言就是android的应用程序.apk通过apktool反编译出来的都有一个smali文件夹,里面都是以.smali结尾的文件,文件的展示语言。 如图,下面是HelloWorldApp通过apktool反编译出来的目录:转载 2014-05-19 14:59:50 · 641 阅读 · 0 评论 -
Smali代码注入
应用场景 Smali代码注入只能应对函数级别的移植,对于类级别的移植是无能为力的。具体的说,如果你想修改一个类的继承、包含关系,接口结构等是非常困难的。但对于修改类成员变量访问控制权限,类方法实现,Smali代码注入的方法是可以实现的。这主要是因为Samli级代码的灵活性已经远低于java源代码,而且经过编译优化后,更注重程序的执行效率。 Smali代码注入 本质上讲转载 2014-05-21 19:01:03 · 2421 阅读 · 0 评论 -
Android dumpsys 命令解析
Android has an interesting command called dumpsys to dump some system information. Even described on adb manual I think that some points should be reinforced. In order to get the complete status j转载 2014-05-20 14:24:30 · 616 阅读 · 0 评论 -
Android Telephony框架结构简析
Android Telephony涉及的框架结构如图1所示。图1 Android Telephony框架结构通过图1可以发现Android Telephony框架结构的一些规律,具体如下。Android Telephony的业务应用跨越了AP和BP。AP与BP相互通信,符合前面介绍的智能手机硬件基本结构。Android系统在AP上运行,而Telephony运行转载 2014-05-20 13:05:36 · 866 阅读 · 0 评论 -
Android 项目中文件夹的作用
揭开android APK自动编译的神秘面纱 是不是有同学和我一样,每次听到开发说持续集成、自动编译…是不是都感觉非常高大上,可望而不可及?最近有机会看了下这方面相关的内容,感觉确实高大上,但非常实用,用法也比较简单。开发过Android程序的同学知道,当用Eclipse创建一个工程之后,点击Run as…,Eclipse就帮你把代码编译成可在Android执行的apk,至于点转载 2014-04-09 09:52:54 · 824 阅读 · 0 评论 -
NDK: 程序的调试方法
调试的方法有两种,一种是打log,使用adb logcat命令来查看log信息,另一种就是使用调试器来下断点调试程序先看打log:在c代码中打印日志:#include #define LOGV(...) __android_log_print(ANDROID_LOG_VERBOSE, "ProjectName", __VA_ARGS__)#define转载 2014-04-04 14:51:14 · 628 阅读 · 0 评论 -
NDK: 处理用户交互事件
在 android_main(struct android_app* state)函数里面设置输入事件处理函数:state->onInputEvent = &handleInput;//设置输入事件的处理函数,如触摸响应static int32_t handleInput(struct android_app* app, AInputEvent* event){//获取消息转载 2014-04-04 14:46:54 · 1011 阅读 · 0 评论 -
NDK: NativeActivity原理
在AndroidManifest.xml文件里面指定入口activity为nativeactivity,这样应用程序一启动,java虚拟机这边就开一个主线程,主线程创建一个活动,就是nativeactivity,这个nativeactivity在创建的过程中就会去应用程序的.so动态链接库中寻找一个函数:__ANativeActivity_onCreate(ANativ转载 2014-04-04 14:44:26 · 1741 阅读 · 0 评论 -
linux下tar.gz、tar、bz2、zip等解压缩、压缩命令
Linux下最常用的打包程序就是tar了,使用tar程序打出来的包我们常称为tar包,tar包文件的命令通常都是以.tar结尾的。生成tar包后,就可以用其它的程序来进 行压缩了,所以首先就来讲讲tar命令的基本用法: tar命令的选项有很多(用man tar可以查看到),但常用的就那么几个选项,下面 来举例说明一下: # tar -cf all.tar *.jpg转载 2014-05-22 13:10:09 · 559 阅读 · 0 评论