xposed修改手机联网方式、蓝牙信息、手机基站信息、网络类型。

package camera.app.com.backward.hook.phoneinfo;import android.os.Build;
import android.util.Log;import camera.app.com.backward.hook.phoneinfo.utils.SharedPref;
import de.robv.android.xposed.XC_MethodHook;
import de.robv.android.xposed.XC_MethodReplacement;
import de.robv.android.xposed.XposedBridge;
import de.robv.android.xposed.XposedHelpers;
import de.robv.android.xposed.callbacks.XC_LoadPackage;public class Phone {public Phone(XC_LoadPackage.LoadPackageParam sharePkgParam) {getType(sharePkgParam);Bluetooth(sharePkgParam);Wifi(sharePkgParam);Telephony(sharePkgParam);}// 联网方式public void getType(XC_LoadPackage.LoadPackageParam loadPackageParam) {XposedHelpers.findAndHookMethod("android.net.NetworkInfo", loadPackageParam.classLoader, "getType",new XC_MethodHook() {protected void afterHookedMethod(MethodHookParam param) throws Throwable {super.afterHookedMethod(param);param.setResult(SharedPref.getintXValue("getType"));};});}// ------- MAC 蓝牙-----------------------------------------------------------public void Bluetooth(XC_LoadPackage.LoadPackageParam loadPkgParam) {try {// 双层 MACXposedHelpers.findAndHookMethod("android.bluetooth.BluetoothAdapter",loadPkgParam.classLoader, "getAddress",new XC_MethodHook() {@Overrideprotected void afterHookedMethod(MethodHookParam param)throws Throwable {// TODO Auto-generated method stubsuper.afterHookedMethod(param);param.setResult(SharedPref.getXValue("LYMAC"));}});// 双层MACXposedHelpers.findAndHookMethod("android.bluetooth.BluetoothDevice",loadPkgParam.classLoader, "getAddress",new XC_MethodHook() {@Overrideprotected void afterHookedMethod(MethodHookParam param)throws Throwable {// TODO Auto-generated method stub// super.afterHookedMethod(param);param.setResult(SharedPref.getXValue("LYMAC"));}});} catch (Exception e) {XposedBridge.log("phone MAC HOOK 失败 " + e.getMessage());}}// -----------------------------------------------------------------------------// WIF MACpublic void Wifi(XC_LoadPackage.LoadPackageParam loadPkgParam) {try {XposedHelpers.findAndHookMethod("android.net.wifi.WifiInfo",loadPkgParam.classLoader, "getMacAddress",new XC_MethodHook() {@Overrideprotected void afterHookedMethod(MethodHookParam param)throws Throwable {// TODO Auto-generated method stubsuper.afterHookedMethod(param);param.setResult(SharedPref.getXValue("WifiMAC"));}});// 内网IPXposedHelpers.findAndHookMethod("android.net.wifi.WifiInfo",loadPkgParam.classLoader, "getIpAddress",new XC_MethodHook() {@Overrideprotected void afterHookedMethod(MethodHookParam param)throws Throwable {// TODO Auto-generated method stubsuper.afterHookedMethod(param);Log.d("chao", "hookIpAddress:" + SharedPref.getintXValue("getIP"));param.setResult(SharedPref.getintXValue("getIP"));// param.setResult(tryParseInt(SharedPref.getXValue("getIP")));}});XposedHelpers.findAndHookMethod("android.net.wifi.WifiInfo",loadPkgParam.classLoader, "getSSID", new XC_MethodHook() {@Overrideprotected void afterHookedMethod(MethodHookParam param)throws Throwable {// TODO Auto-generated method stubsuper.afterHookedMethod(param);param.setResult(SharedPref.getXValue("WifiName"));}});} catch (Exception e) {}// ------------------------基站信息// 基站的信号强度XposedHelpers.findAndHookMethod("android.net.wifi.WifiInfo",loadPkgParam.classLoader, "getBSSID", new XC_MethodHook() {@Overrideprotected void afterHookedMethod(MethodHookParam param)throws Throwable {// TODO Auto-generated method stubsuper.afterHookedMethod(param);param.setResult(SharedPref.getXValue("BSSID"));}});XposedHelpers.findAndHookMethod(java.net.NetworkInterface.class.getName(), loadPkgParam.classLoader, "getHardwareAddress", new Object[]{new XC_MethodHook() {protected void afterHookedMethod(MethodHookParam param) throws Throwable {super.afterHookedMethod(param);//TODO 修改硬件地址}}});}public void Telephony(XC_LoadPackage.LoadPackageParam loadPkgParam) {String TelePhone = "android.telephony.TelephonyManager";try {XposedHelpers.findAndHookMethod("android.telephony.TelephonyManager", loadPkgParam.classLoader, "getDeviceId", XC_MethodReplacement.returnConstant(SharedPref.getXValue("IMEI")));
//            XposedHelpers.findAndHookMethod("com.android.internal.telephony.PhoneSubInfo", loadPkgParam.classLoader, "getDeviceId", XC_MethodReplacement.returnConstant(SharedPref.getXValue("IMEI")));if (Build.VERSION.SDK_INT < 22) {XposedHelpers.findAndHookMethod("com.android.internal.telephony.gsm.GSMPhone", loadPkgParam.classLoader, "getDeviceId", XC_MethodReplacement.returnConstant(SharedPref.getXValue("IMEI")));XposedHelpers.findAndHookMethod("com.android.internal.telephony.PhoneProxy", loadPkgParam.classLoader, "getDeviceId", XC_MethodReplacement.returnConstant(SharedPref.getXValue("IMEI")));}} catch (Exception ex) {XposedBridge.log(" IMEI 错误: " + ex.getMessage());}HookTelephony(TelePhone, loadPkgParam, "getDeviceSoftwareVersion",SharedPref.getXValue("deviceversion"));// 返系统版本HookTelephony(TelePhone, loadPkgParam, "getSubscriberId",SharedPref.getXValue("IMSI"));HookTelephony(TelePhone, loadPkgParam, "getLine1Number",SharedPref.getXValue("PhoneNumber"));HookTelephony(TelePhone, loadPkgParam, "getSimSerialNumber",SharedPref.getXValue("SimSerial"));HookTelephony(TelePhone, loadPkgParam, "getNetworkOperator",SharedPref.getXValue("networktor")); // 网络运营商类型HookTelephony(TelePhone, loadPkgParam, "getNetworkOperatorName",SharedPref.getXValue("Carrier")); // 网络类型名HookTelephony(TelePhone, loadPkgParam, "getSimOperator",SharedPref.getXValue("CarrierCode")); // 运营商HookTelephony(TelePhone, loadPkgParam, "getSimOperatorName",SharedPref.getXValue("simopename")); // 运营商名字HookTelephony(TelePhone, loadPkgParam, "getNetworkCountryIso",SharedPref.getXValue("gjISO")); // 国家iso代码HookTelephony(TelePhone, loadPkgParam, "getSimCountryIso",SharedPref.getXValue("CountryCode")); // 手机卡国家XposedHelpers.findAndHookMethod("android.telephony.TelephonyManager", loadPkgParam.classLoader, "getNetworkType", new XC_MethodHook() {@Overrideprotected void afterHookedMethod(MethodHookParam param)throws Throwable {// TODO Auto-generated method stubsuper.afterHookedMethod(param);//      网络类型param.setResult(SharedPref.getintXValue("networkType"));}});XposedHelpers.findAndHookMethod("android.telephony.TelephonyManager",loadPkgParam.classLoader, "getPhoneType", new XC_MethodHook() {@Overrideprotected void afterHookedMethod(MethodHookParam param)throws Throwable {// TODO Auto-generated method stubsuper.afterHookedMethod(param);param.setResult(SharedPref.getintXValue("phonetype"));}});XposedHelpers.findAndHookMethod("android.telephony.TelephonyManager",loadPkgParam.classLoader, "getSimState", new XC_MethodHook() {@Overrideprotected void afterHookedMethod(MethodHookParam param)throws Throwable {// TODO Auto-generated method stubsuper.afterHookedMethod(param);param.setResult(SharedPref.getintXValue("SimState"));}});}private void HookTelephony(String hookClass, XC_LoadPackage.LoadPackageParam loadPkgParam,String funcName, final String value) {try {XposedHelpers.findAndHookMethod(hookClass,loadPkgParam.classLoader, funcName, new XC_MethodHook() {@Overrideprotected void afterHookedMethod(MethodHookParam param)throws Throwable {// TODO Auto-generated method stubsuper.afterHookedMethod(param);param.setResult(value);}});} catch (Exception e) {}}}

xposed修改手机信息相关推荐

  1. adroid xpose 修改java方法实例_基于xposed 修改硬件信息(xposed框架使用)

    [实例简介]android Hook框架Xposed [实例截图] [核心代码] package com.lixin.hardwarecode; import android.app.Activity ...

  2. 通过build.prop修改手机信息

    本文以CM的build为例讲解如何修改这些参数 # begin build properties (开始设置系统性能) # autogenerated by buildinfo.sh (通过设置形成系 ...

  3. 反编译008神器,修改手机型号与android版本号信息

    一个可以修改手机信息的xposed插件 008神器依赖xposed可修改其他应用获取到的系统参数值,见下图 但是我们直接从网上下载的008神器生成的手机型号和安卓版本号都是好几年前的.下面就来分析下怎 ...

  4. 手机修改设备信息之安装xposed框架

    最近想做APP刷量,研究了下群控技术,基本上都是通过adb去桥接电脑和手机.github上有一套开源代码,开源群控项目.不过还是要成熟的,再折腾怎么弄就需要更多的时间,可能对大牛来说不费吹灰之力. 电 ...

  5. 红米手机使用应用沙盒一键修改imsi信息

    较早前文章介绍了怎么样在安卓手机上安装激活Xposed框架,Xposed框架的极强的功能各位都清楚,能够不修改应用程序的前提下,修改系统底层的参数,好比在某些应用范畴,各位需要修改手机的某个系统参数, ...

  6. 华为手机一键修改机器码信息

    前面文章介绍了如何在安卓手机上安装激活XPosed框架,XPosed框架的强大功能我们都清楚,能够不修改APK的前提下,修改系统底层的参数,好比在某些应用场景,我们需要修改手机的某个系统参数,这个时候 ...

  7. 华为手机使用应用沙盒一键修改电池信息

    较早前文章介绍了怎么样在安卓手机上安装激活Xposed框架,Xposed框架的强大功能我们都介绍过,能不修改Apk的前提下,修改系统内部的参数,比如在某些应用情景,我们需要修改手机的某个系统参数,这情 ...

  8. 红米手机使用应用沙盒动态修改imei信息

    之前文章介绍了怎么在安卓手机上安装激活xposed框架,xposed框架的极强的功能各位都清楚,可以不修改APK的前提下,修改系统内部的参数,比如在某些应用范畴,各位需要修改手机的某个系统参数,这个时 ...

  9. oppo手机使用应用沙盒动态修改序列号信息

    之前文章介绍了如何在安卓手机上安装激活XPosed框架,XPosed框架的强悍功能我们都介绍过,能够不修改apk的前提下,修改系统内部的参数,打比方在某些应用领域,我们需要修改手机的某个系统参数,这种 ...

最新文章

  1. RHEL5一个网卡绑定多个IP
  2. C#访问SQLServer增删改查代码实例
  3. for循环优化_前端js if判断以及for循环该如何写的更好,优化upup
  4. 【转】WSS3.0开发--你还在为写CAML痛苦吗?
  5. 寻一名师傅叫我破译电脑各种密码和攻克防火墙
  6. 前端学习(1553):复习2
  7. java 输出字符串的所有排列_JAVA 输出指定字符串所有排列组合
  8. java55矩阵output_将矩阵乘积输入到keras中的两个模型的输出
  9. n皇后问题c语言报告,关于N皇后问题
  10. 暴力破解黄巴登录网站
  11. simpleperf 使用记录
  12. java流作为参数,java-8 – 将Java 8流映射函数作为参数传递
  13. 海康威视存储服务器的作用,海康存储服务器CVR存储方式配置说明
  14. Android 开发环境搭建
  15. 【Linux】Linux的字符终端
  16. matlab二叉树期权定价,二叉树期权定价模型
  17. 3d开发所需要知道的坐标系
  18. Parker机电产品(运动控制/伺服电机/直线电机)在FPD行业应用
  19. 虚拟机安装麒麟系统设置root用户登录和安装wps
  20. win32 007

热门文章

  1. Redis:NOAUTH Authentication required.解决方法
  2. linux虚拟实验室关闭了,Linux在线虚拟云实验室,助力提升RHCE考试通过率
  3. 网闸和防火墙的区别是什么?
  4. mitmproxy使用详解
  5. 【Docker 常用命令】
  6. c++里的getline函数
  7. logback里面pattern详解
  8. java drawboard_java Swing实现五子棋游戏
  9. python列表常见排序方法
  10. 独热编码和自然数编码