首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
华为云
V2EX  ›  Android

如何获得微信小游戏跳一跳源码

  •  
  •   zhgqthomas · 286 天前 · 33124 次点击
    这是一个创建于 286 天前的主题,其中的信息可能已经有所发展或是发生改变。

    前言

    昨天 V2EX 上的一篇通过抓包来获取微信跳一跳源码的文章走红,文章连接点击这里

    我也在通过文章中的方式进行了抓包,但是并未探测到小游戏的下载连接,可能微信对此已经进行了修复。而且上文中提供的下载连接也显示为 404 的状态码。

    虽然抓包未果,但是依然可以从本地将源码抽离出来,下面将介绍如何从 Android 手机里面找到微信下载的小游戏源码

    准备工作

    需要注意的是必须是已经 root 了的 Android 手机,否则将没有权限访问对应手机的系统文件夹

    通过 USB 将手机连接到电脑上,然后运行以下命令

    $  adb devices
    

    如果显示了一下信息

    List of devices attached
    71MBBL6228EU	device
    

    说明手机已经连接到电脑上,如显示未找到 adb 命令,则说明 Android SDK 安装错误或 adb 未添加到电脑 path 中,请自行上网进行相应查阅

    手机连接电脑成功后,运行一下命令

    $  adb shell
    $  su
    

    终端出类似 root@{手机型号} 前缀,说明已经进入到 root 模式下

    $ cd /data/data/com.tencent.mm/MicroMsg/{User}/appbrand/pkg
    

    {User} 为当年用户的用户名,类似于 1ed**********c514a18

    然后当前目录就是微信用于存放小程序和小游戏下载包的位置

    $ ls
    _-791877121_3.wxapkg
    _1079392110_5.wxapkg
    _1079392110_5.wxapkg_xdir
    _1123949441_92.wxapkg
    _576754010_1.wxapkg
    

    以上是我的微信中所下载过的小程序和小游戏源码

    因为 /data 目录为系统级目录,无法直接将其进行复制,需要重新挂载为可操作模式

    $ mount -o remount,rw /data
    

    此时就可以将当前目录下的文件拷贝到 sdcard 中

    $ cd /data/data/com.tencent.mm/MicroMsg/{User}/appbrand/pkg/_1079392110_5.wxapkg /mnt/sdcard
    

    然后将 _1079392110_5.wxapkg 文件拷贝到电脑里,通过该脚本进行解压后,即为其源码

    编译源码

    通过微信小游戏开发工具新建一个空白的小程序或者小游戏的项目,主要不要选择快速启动模板

    然后把刚才解压出来的源代码复制到刚刚创建的项目目录中,开发工具会提示编译错误,这时只要在项目中新建一个 game.json 文件,并在文件里写入以下代码

    {
      "deviceOrientation" : "portrait"
    }
    

    然后将开发工具的调试基础库改为 game

    程序就会在开发者工具里运行起来了

    参考

    第 1 条附言  ·  286 天前

    更正文中错误: 文中拷贝目录下的文件到 sdcard 中的命令,笔误写错,应该为

    $ cp /data/data/com.tencent.mm/MicroMsg/{User}/appbrand/pkg/_1079392110_5.wxapkg /mnt/sdcard
    

    重要提醒就是不建议普通用户将自己的安卓手机进行 root,本人 root 的也只是测试机,自用安卓手机 root 后有很高的安全风险,请慎重!!!

    126 回复  |  直到 2018-06-26 16:57:23 +08:00
    1  2  
        101
    gzlock   285 天前
    翻页~感谢楼主分享
    建了个微信小游戏开发学习 QQ 群 117844722
    目前合力将 three.js 修改成适应微信小游戏的版本,谢谢
        102
    conglovely   285 天前
    留名留名,万一火了能上新闻。
        103
    zzf2017   285 天前
    强无敌!留名
        104
    6diyipi   285 天前
    @zhgqthomas 我意思是要抓个源码我还得去买台安卓手机。。。
        105
    v2exe2v   285 天前   ♥ 1
        106
    midmiss   285 天前
    刘明 不会删吧
        107
    zhgqthomas   285 天前   ♥ 1
    @6diyipi 也可以通过直接下载的方式 不过那个不知道微信会不会修改,但是本地直接拉取源代码 微信一般不容易解决
        108
    zhgqthomas   285 天前
    @midmiss 本帖只是提供获取源码方法 并为流传源码 应该不会被和谐
        109
    v2exe2v   285 天前
    现在的版本现在已经混淆了,5 以前的都没有
        110
    6diyipi   285 天前
        111
    liuxiaofengone   285 天前
    应该是混淆了,我看 JS 文件全是一大片~可读性就……
        112
    zhgqthomas   285 天前   ♥ 1
    @6diyipi 那是因为你打开了一个小程序的项目并不是小游戏的项目 看一下前面的评论有解决方法
        113
    zhgqthomas   285 天前
    @Bazhe 昨天研究了一下 request 合法域名列表的问题是可以解决的 具体请看这里 https://www.v2ex.com/t/419682
        114
    huangsw   285 天前
    洗摸杯
        115
    hegemonhe   284 天前
    手机没 root。谁能弄个腾讯自选股小程序的连接?谢谢咯
        116
    hegemonhe   284 天前
    求 腾讯自选股 appid
        117
    tcpdump   284 天前
    @zhgqthomas 小程序都运行不起来的?
        118
    lydspet   283 天前
    @v2exe2v 可以把 4.wxapkg 或者 5.wxapkg 发我一份吗,现在下载不到了,谢谢
    lydspet@163 邮箱
        119
    simonsmh   283 天前   ♥ 1
        120
    conglovely   282 天前
    我在 windows 上的开发者工具里没看到 game 这个选项,姿势不对?
        121
    xx314327475   282 天前
    oneplus3t android8.0 通过这个命令挂载的

    mount -o rw,remount /data
        122
    chengxixi   255 天前
    mark
        123
    moke   239 天前
    @simonsmh 你能帮我取一个小程序的源码吗?
        124
    Alife   111 天前
    @v2exe2v 请问是要安装 5.x 版本的微信吗?
        125
    v2exe2v   111 天前
    @Alife 是跳一跳的版本
        126
    Alife   110 天前
    @v2exe2v 这样啊,多谢
    1  2  
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   3227 人在线   最高记录 3762   ·  
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.1 · 19ms · UTC 08:39 · PVG 16:39 · LAX 01:39 · JFK 04:39
    ♥ Do have faith in what you're doing.
    沪ICP备16043287号-1