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

遇到一个诡异的 BUG,需要安卓实机上连接 Windows 并调试真实页面,求个思路。

  •  
  •   jmyz0455 · 2018-07-11 17:04:17 +08:00 · 1078 次点击
    这是一个创建于 2334 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我遇到了个棘手的问题,希望能通过安卓手机,实机去调试页面。但情况比较复杂,能搜到的方法都试过了,请各位指点一下。

    我们有一个电商页面放微信上用的,新版本里需要加一个活动游戏。在测试环境里完全是没问题的,一上线就出现了游戏时身份验证失效的问题,经过多番排查,发现情况是这样的:

    使用预装了国产 ROM 的安卓手机,在微信上玩这个游戏时,程序通过正式服务器的域名访问身份验证接口,必然会触发这个 BUG。

    所以这意味着,我所了解的手机调试办法,都不行:

    1、在电脑浏览器里打开页面是无法重现的,包括微信自家的 web 开发者工具。

    2、iOS 是不会遇到这个问题的,所以 macOS 连接 Safari 那一套也可以放弃。那我为什么强调国产 ROM 的安卓手机才会有问题呢,因为我司所有的安卓手机都会遇到这个 BUG,唯独我手上刷了 LineageOS15.1 的可以运行,这是重点。

    3、根据第 2 点,基本就可以放弃用 Chrome DevTools 的 Remote devices 来调试了,全公司只有我这台刷了原生 ROM 的 Android 手机能让 Windows 的 Chrome DevTools 成功 inspect 到页面,而偏偏就我这台机是遇不到问题的。真不知道腾讯对非 Google Play 渠道发布的微信的 Webview 魔改了什么东西,全公司的安卓手机微信都连不上 Chrome DevTools (其他手机在浏览器里连接电脑是可以的,就偏偏微信不行),苦逼啊。

    4、第 3 点比较复杂,很难解释清楚,估计只有遇到过的前端才明白我在说什么,除了前面三个办法,我最后一个杀手锏就是 weinre 了,因为测试环境是没问题的所以我只好部署在正式环境,用一个测试页面来调试,问题是绕了一大圈之后,console 延迟非常严重,无法重现玩游戏时的身份验证丢失问题。

    以上四招都失败之后,我就没办法了,我的期望是能让国产 ROM 的安卓手机也能在 Chrome DevTools 的 Remote devices 里 inspect 到手机里的微信页面,毕竟这种调试方式最接近普通用户在玩游戏的真实情况,不知道有没有老哥有 hack 方法?

    听说过 X5 内核能用 TbsSuiteNew.apk 那一套来调试,但是搜到的教程都比较老旧了,可能微信已经做了处理吧,我总是无法安装本地 tbs 内核。或者有没有 v 友有其他调试思路的,请支招,谢谢。

    4 条回复    2018-08-28 09:23:39 +08:00
    whileFalse
        1
    whileFalse  
       2018-07-11 18:33:50 +08:00
    你们生产环境部署了 https 吗?是不是 https 的问题?
    还有就是用代理抓过包了吗
    jmyz0455
        2
    jmyz0455  
    OP
       2018-07-12 17:46:49 +08:00
    @whileFalse 用了 https,但是后端说觉得不是这个原因,因为其他接口都能通,其他设备调用这个身份验证。
    代理抓包这个我漏了讲,试过过了,但是用代理抓包就只能用 ip 地址去访问(而不是用正式服务器的域名去访问),不用域名的话,一样没问题的。所以这个方法也没用。

    这个问题超诡异的,安卓微信客户端用代理去访问,不用代理直接访问 ip 都是没问题的。直接访问正式域名才不行。
    jmyz0455
        3
    jmyz0455  
    OP
       2018-07-19 11:47:29 +08:00
    最后发现原因是 http 请求头的数据丢失,不过关于调试手机这个问题,我还是希望有人来指教指教。
    jmyz0455
        4
    jmyz0455  
    OP
       2018-08-28 09:23:39 +08:00
    求指教。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1703 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 16:40 · PVG 00:40 · LAX 08:40 · JFK 11:40
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.