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

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

  •  
  •   zhgqthomas · 2018-01-02 12:56:06 +08:00 · 54101 次点击
    这是一个创建于 2517 天前的主题,其中的信息可能已经有所发展或是发生改变。

    前言

    昨天 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 条附言  ·  2018-01-02 13:52:51 +08:00

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

    mount -o rw,remount /data
    chengxixi
        122
    chengxixi  
       2018-02-01 19:08:24 +08:00
    mark
    moke
        123
    moke  
       2018-02-18 15:57:38 +08:00
    @simonsmh 你能帮我取一个小程序的源码吗?
    Alife
        124
    Alife  
       2018-06-25 17:16:13 +08:00
    @v2exe2v 请问是要安装 5.x 版本的微信吗?
    v2exe2v
        125
    v2exe2v  
       2018-06-25 20:05:07 +08:00
    @Alife 是跳一跳的版本
    Alife
        126
    Alife  
       2018-06-26 16:57:23 +08:00
    @v2exe2v 这样啊,多谢
    1  2  
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2203 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 01:33 · PVG 09:33 · LAX 17:33 · JFK 20:33
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.