码迷,mamicode.com
首页 > 移动开发 > 详细

Android 修改imei、gps等信息分析

时间:2015-08-28 19:03:34      阅读:322      评论:0      收藏:0      [点我收藏+]

标签:

之前有朋友希望能修改Android的gps信息,也就是说让其他应用获取gps信息时,取到修改后的信息。一开始听上去感觉挺不靠谱的,后来网上查了下资料,发现还是有人搞定的,主要都是通过古河发布的注入代码,将自己的内容注入到对应应用的内存。在这里,注入的过程就不叙述了,主要说下为什么能修改内容,用获取gps信息来举例。

首先Android中获取gps信息的话主要通过这种方式:

技术分享

关键代码出现了,主要通过getSystemService()方法来获取句柄,中间省略一系列复杂的查找步骤,,,我们最终找到一个地方,文件android.os.ServiceManager.java 中的getService()方法:

技术分享

sCache又是什么呢:技术分享,,,看这里,直接根据名称从HashMap中取,如果有就直接返回了。

关键代码看完了,那么具体怎么做呢,很简单,就是自己写一个类,实现IBinder接口,然后通过反射方式将对应的名称和你自己的IBinder添加到sCache这个HashMap中,那么程序通过getSystemService()方法取到的就是自己实现的IBinder类。接着就是实现自己的IBinder类了,很幸运的,在github上搜到了这个项目:https://github.com/aeoliazhang/android_inject_hook_demo,,这个是修改imei信息的,代码相当全面,测试用的GpsIBinder也是根据这里面的ImeiBinder来修改的。

代码就这么多,不过当时没把具体的编译和运行记录下来,所以就自己搞定吧。坑还是很多的,新手还是多花点时间吧,有空会将编译和运行的过程贴出来的。

 

Android 修改imei、gps等信息分析

标签:

原文地址:http://www.cnblogs.com/chenhn071/p/4767176.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!