当前位置:首页 » 《关注互联网》 » 正文

记一次APK反编译,拿到自己想要的API过程及应用_DeathAndLife的博客

29 人参与  2021年08月20日 12:03  分类 : 《关注互联网》  评论

点击全文阅读


目的

我的电脑装了一个开机卡

本身已提供了windows和Android和微信的程序

我使用的是iPhone,想拿到API 写快捷指令,这样就可以通过

嘿,Siri 打开/关闭/重启电脑 (现有的app 要打开app 还要点击 觉得麻烦,之前本来想写py脚本用快捷指令运行,但是Pythoniate太贵了 凎)

等等操作

在做这些操作之前询问过客服,不能提供。所以我就自己来弄了。

注意:这些都是我个人使用,这里就不贴出开机卡的厂家和店铺地址了

之前抓过包,抓不到

反编译过程

教程很多,可以直接跳过

反编译工具

  1. apktool

    下载地址

  2. dex2jar

    下载地址

  3. jd-gui

    下载地址 (Github 可能需要加速器)

准备反编译的apk包

  • xxx.apk

开始反编译

  • 准备

    为方便,将三个工具和apk放在同一目录(最好不要有中文路径)

  1. 使用apktool 反编译apk

    java -jar apktool_2.5.0.jar d -f [apk的路径] -o [反编译后的文件夹]
    //执行过程没有报错则反编译成功
    
  2. 使用dex2jar反编译apk拿到Java源代码

    1. 首先将apk后缀名改为rar / zip 压缩包格式并解压

    2. 解压后将其中的 classes.dex文件放到dex2jar-2.0文件夹内

    3. 在这个目录打开cmd

    4. 执行

      ./dej-dex2jar.bat classes.dex
      
    5. 执行完之后就会在当前目录生成一个classes-dex2jar.jar包了,这就是Java源码

  3. 用jd-gui打开Jar包就可以查看源码了

通过一段时间的源码阅读成功找到关键代码

  • 找到了api接口

    在这里插入图片描述

  • 以及各种接口的方法

在这里插入图片描述

  • 这里就不在多说,每个apk都不一样,而且找的过程复杂且枯燥

通过Postman测试接口

发现要成功的请求需要有顺序的三步(三个接口)

这里就不贴出详细的信息了:手动狗头

  1. 第一接口用来初始化客户端(请求的机器)让服务器认为你是一个合法的客户端
  2. 第二个接口是登录接口,会返回 用户id session cookie
  3. 第三个接口就是真正的发送远程控制的命令了(开机,关机,软关机,重启等)

这里看这比较简单,但却是最耗时的,其中找deviceId花费了大量的时间(代码中没有)

最终应用

  • Postman测试好之后就开始了 ios的快捷指令的编写

  • 在这里插入图片描述

  • 在这里插入图片描述

效果

视频
哔哩哔哩

CSDN口诉一下

  • 嘿,Siri 打开电脑
  • 嘿,Siri 关闭电脑
  • 嘿,Siri 重启电脑

点击全文阅读


本文链接:http://zhangshiyu.com/post/25826.html

<< 上一篇 下一篇 >>

  • 评论(0)
  • 赞助本站

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

关于我们 | 我要投稿 | 免责申明

Copyright © 2020-2022 ZhangShiYu.com Rights Reserved.豫ICP备2022013469号-1