![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
android学习
文章平均质量分 79
haodawei123
这个作者很懒,什么都没留下…
展开
-
dx 生成dex文件实现
1、新建一个java项目并编译新开一个cmd,javac hello.java 生成hello.class文件2、使用android sdk build-tools 的dx工具生成dex文件将android sdk build-tools目录添加到用户环境变量,然后到项目的src目录新开一个cmd窗口执行下面的命令即可在src目录下面生成hello.dex文件dx --dex --output=hello.dex wei\hello.class...原创 2020-09-07 09:19:43 · 2195 阅读 · 0 评论 -
eclipse JNI 开发总结
经过将近两天的努力终于在eclipse上实现了JNI编程,这里记录一下!!!!1、JNI开发的组成两部分一是java或android部分(函数方法的声明),二是so或者dll的实现部分(函数方法的具体实现)2、javah 生成.h头文件将 javac 将java转换成class,然后利用javah命令生成 so 或者 dll调用的 .h头文件这里容易出错的是生成.h头文件会出现找不到类文件的错误,参见上一篇文章解决文章地址就是使用 javah -classpath 指定src的目录,多了这么一步原创 2020-09-06 21:20:08 · 242 阅读 · 0 评论 -
javah -jni 找不到类的解决
被这个问题困扰了1天1、建立JNI项目eclipse新建一个项目JNIDemo,添加一个wei的包,创建一个HelloWorld的类添加如下内容:添加一个native的sayHello方法package wei;public class HelloWorld { public native void sayHello(); public static void main(String[] arsc) { System.out.print("Hello!!!!!!!"); System原创 2020-09-06 11:09:32 · 499 阅读 · 0 评论 -
android studio获取IMEI码
获取到的就是*#06#的码,public class MainActivity extends AppCompatActivity { public String GetPhoneNumber(Context paramContext)//#手机IMEI码号码 { TelephonyManager paramTelephonyManager = (TelephonyManager) paramContext.getSystemService(Context.TELEPHON原创 2020-09-03 21:52:20 · 1354 阅读 · 1 评论 -
Android反调试方法总结以及源码实现之检测篇(一)(转)
https://blog.csdn.net/feibabeibei_beibei/article/details/60956307转载 2020-08-28 10:45:32 · 199 阅读 · 0 评论 -
smail基础与Dalvik相关
https://blog.csdn.net/yuanguozhengjust/article/details/80493963?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-3.channel_param&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-3.转载 2020-08-21 16:55:06 · 206 阅读 · 0 评论 -
DDMS无法查看进程解决
https://blog.csdn.net/u014738665/article/details/87934846转载 2020-08-20 19:41:57 · 577 阅读 · 0 评论 -
android studio启动DDMS方法
1、如下图找到VIEW菜单的Tool Windows的Terminal菜单项,2、执行“Terminal”功能之后在下面的命令框中输入“monitor”即可启动原创 2020-08-20 15:20:57 · 6125 阅读 · 2 评论 -
解决:android studio安装之后无法启动AVD
新安装的android studio 创建一个虚拟设备,使用avd管理器打开,提示“can not start avd”,任务管理器 没有adb.exe需要找到android studio的sdk目录将下面圈中的程序双击安装一下,之后重启android studio就好了下面是为的sdk的安装目录C:\Users\Administrator\AppData\Local\Android\Sdk\extras\intel\Hardware_Accelerated_Execution_Manager.原创 2020-08-20 15:09:09 · 21801 阅读 · 6 评论 -
jdex2jar与jadx-gui使用
1、将APK直接解压(修改后缀名为.zip,然后解压)后,可以看到目录下包含一个classes.dex文件。如下图所示,是一个APK文件解压后的到的:2、若想要阅读该文件的内容,可以使用 dex2jar 和 jd-gui 工具。cmd中用 d2j-dex2jar classes命令将dex文件转换为jar文件,然后使用jad-gui查看java代码。...原创 2020-02-07 19:34:05 · 957 阅读 · 0 评论 -
Android获取IMEI码及利用方法
1、Android端获取IMEI码代码主要有两部分,一是Java代码,另一个则是Manifest.xml中的权限。先看Java代码://获取IMEI码TelephonyManager telephonyManager = (TelephonyManager) this.getSystemService(Context.TELEPHONY_SERVICE);String IMEI = t...原创 2020-02-06 11:44:59 · 2525 阅读 · 0 评论 -
IDA安卓真机调试
1.安卓手机一部,360超级root 取得root权限2.将android_server复制到手机的/data/local/tmp目录下面,chmod 777 as./as 启动Android_server3.adb forward tcp:23946 tcp:23946 命令 端口转发4.7.adb shell am start -D -n 包名/activity路径 启...原创 2020-02-04 16:51:49 · 1193 阅读 · 0 评论 -
Fiddler抓包设置
https://blog.csdn.net/lengdaochuqiao/article/details/88170522转载 2020-02-02 21:12:11 · 1884 阅读 · 0 评论 -
idc脚本dump内存dex
1、以调试模式启动程序adb shellam start -D -n 包名/入口activity2、启动ida勾选3项下断点对libdvm.so的dexfileparse函数下断点,ida先不要运行运行当程序断下的时候,r0寄存器的值就是dex文件的首地址,r1的值就是dex文件的大小,然后运行脚本就能dump出dex文件。3、运行jdb命令jdb -connect 包名:hos...原创 2020-01-31 13:14:26 · 1015 阅读 · 0 评论 -
linux hook相关代码
因为函数(__libc_dlopen_mode、malloc、free)都在libc库中,所以用获取的地址-基地址=偏移地址;https://blog.csdn.net/u014288349/article/details/84247889https://blog.csdn.net/lxb122435677/article/details/98185446...原创 2020-01-30 21:26:22 · 134 阅读 · 0 评论 -
linux常用命令
ptrace:附加进程,修改数据wait:等待进程结束, 进程一旦调用了wait,就立即阻塞自己,由wait自动分析是否当前进程的某个子进程已经 退出,如果让它找到了这样一个已经变成僵尸的子进程,wait就会收集这个子进程的信息,并把它彻底销毁后返回;如果没有找到这样一个子进程,wait就 会一直阻塞在这里,直到有一个出现为止。waitpid:三个参数,如果使用了WNOHANG参数调用wait...原创 2020-01-30 21:14:24 · 108 阅读 · 0 评论 -
android native调用so结束指定的进程实现
android native部分参考前面的文章,这里主要是so文件代码,通过kill函数实现的。#include <jni.h>#include <stdio.h>#include <stdlib.h>#include <dlfcn.h>#include <sys/ptrace.h>//#include <sys/wai...原创 2020-01-30 20:51:41 · 806 阅读 · 0 评论 -
ptrace函数(附近进程,修改进程数据)
1、ptrace定义Ptrace 提供了一种父进程可以控制子进程运行,并可以检查和改变它的核心image。它主要用于实现断点调试。一个被跟踪的进程运行中,直到发生一个信号。则进程被中止,并且通知其父进程。在进程中止的状态下,进程的内存空间可以被读写。父进程还可以使子进程继续执行,并选择是否是否忽略引起中止的信号long ptrace(enum __ptrace_request request...原创 2020-01-30 20:42:00 · 2249 阅读 · 0 评论 -
linux下elf调用so文件函数执行shell命令及Android下调用so库函数实现
分为三个部分elf部分,so部分及Android部分1、elf部分编程#include <stdio.h>#include <stdlib.h>#include <dlfcn.h>typedef void(*pfnkill)(int);//函数类型指针,这个函数用来结束指定的进程typedef int(*pfnadd)(int,int);///列出正...原创 2020-01-27 12:40:50 · 1113 阅读 · 0 评论 -
Android Activity Button Intent Textview Toast使用
1、两个Activity通过Intent相互调用需要在AndroidManifest.xml中增加第二个Activity2、添加Activity之后不要忘记调用setContentView来调用第二个Activity来显示package com.example.jiutian01;import android.support.v7.app.ActionBarActivity;import ...原创 2020-01-25 21:40:59 · 187 阅读 · 0 评论 -
Linux下加载SO的ELF文件编写
#include <unistd.h>#include <stdio.h>#include <dlfcn.h>typedef void (*pfnfoo)(void);//函数类型指针const char path[]="/data/local/tmp/1.so";///1.so就是要加载的动态链接库的名称int main(){ void *ha...原创 2020-01-24 15:30:04 · 449 阅读 · 0 评论 -
objdump反编译使用
1、objdump.exe readelf.exe两个文件的路径E:\AndroidTools\android-ndk-r10e\toolchains\arm-linux-androideabi-4.8\prebuilt\windows-x86_64\bin2、objdump -S(大写S) ELF文件路径 >导出文件名如下图 -S命令能分析出ELF的源文件加汇编的形式2、objd...原创 2020-01-23 21:27:39 · 1755 阅读 · 0 评论 -
ida调试ELF技巧
1、下断点ida****调试器设置下面的3个选上,运行之后,暂停然后Ctrl+s或者通过菜单找到**“跳转到断”,找到要调试的断下段,恢复执行,断下之后按下“P”键显示arm汇编代码**2、ida调试R0-R12寄存器:存放的是参数,选中16进制显示窗口点击Rn寄存器之后的回车键就转到相应的地址sp:堆栈寄存器pc:相当于x86汇编的IP寄存器指向当前运行的地址LR:指向函数的返回地...原创 2020-01-23 15:07:10 · 791 阅读 · 0 评论 -
ida动态调试总结
雷电、蓝叠的cpu是x86的ida不能正常调试,需要用Android编译器自带的创建模拟器。ida模拟器动态调试,当执行到断点时会出现错误,通过百度知道是因为雷电、蓝叠模拟器的cpu都是x86的架构,所以用来调试就会出错,通过观看视频发现教程中用的是Android自带的模拟器,所以这里也是创建一个模拟器。用Android studio创建模拟器会出现下面的选项,选择Other Images选项...原创 2020-01-23 14:00:28 · 1301 阅读 · 0 评论 -
使用IDA调试Android原生程序中遇到的问题及解决方法(转)
https://blog.csdn.net/skylinelulu/article/details/56025672转载 2020-01-22 18:01:00 · 517 阅读 · 0 评论 -
Linux可执行程序ELF与动态链接库程序so创建编译
1、安装ndk配置环境变量cmd下 ndk-build 看是否配置成功2、ELF与so文件创建源文件就是标准的c源文件新建一个jni目录里面包含下面的3个文件,hello.c的源文件如下:#include <stdio.h>#include <string.h>char name[20]={0};char pwd[20]={0};char _name...原创 2020-01-22 16:09:10 · 668 阅读 · 0 评论 -
ida动态调试android
1、将IDA dbgsrv目录下的android_server复制到模拟器的/data/local/tmp 目录下面为了防止反调试将android_server重命名为asadb push as路径 /data/local/tmp模拟器内将as的权限设置为 777chmod 777 as运行as./as2、雷电模拟器两个adb device的处理adb kill-server关...原创 2020-01-21 13:22:03 · 913 阅读 · 0 评论 -
Android Studio动态调试
https://blog.csdn.net/yusakul/article/details/81203174原创 2020-01-19 22:39:53 · 1242 阅读 · 0 评论 -
smail学习
原始类型V void (只能用于返回值类型)Z booleanB byteS shortC charI intJ longF floatD Double对象类型Lpackage/name/ObjectName; 相当于java中的package.name.ObjectNameL 表示这是一个对象类型package/name 该对象所在的包ObjectName 对象名称...原创 2020-01-14 15:18:25 · 1086 阅读 · 0 评论 -
smail数据类型
原创 2020-01-13 20:45:12 · 354 阅读 · 0 评论 -
Android开发环境搭建
https://blog.csdn.net/JerkSpan/article/details/85811265#_1转载 2019-12-04 11:14:40 · 76 阅读 · 0 评论 -
Android安全与逆向(一)
Android Killer反编译,回编译工具安卓配置文件AndroidManifest.xml,修改这个可以去广告原创 2019-12-03 08:06:53 · 144 阅读 · 0 评论