首页 > 其他分享 >使用mumu模拟器抓包 andriod app

使用mumu模拟器抓包 andriod app

时间:2023-12-07 18:56:12浏览次数:32  
标签:mumu app charles andriod 页面 抓包 模拟器

背景

公司H5嵌入到农行手机app里面。某天有人反馈进入国内机票订单详情时,应用崩溃了,如下图:

经过测试,此问题仅在安卓手机中出现,且其他页面都正常。于是我怀疑可能是这个页面代码有问题,想着能否抓包看看大概发生了啥。

手机抓包

我借同事的安卓手机进行抓包,不幸的是农行app禁止我们抓包:

经过一番折腾:

  1. 升级农行 APP 版本 (X)
  2. 安装 PC 版本腾讯应用宝 (X)
  3. 更换不同的手机 (X)

决定试试 mumu 模拟器,毕竟我手上仅有一个iphone。

mumu 模拟器抓包

mumu 模拟器和 charles 安装和使用这里不再赘述,网上有很多资料。这里记录下抓包过程发现的一些问题。

问题1:SSL handshake with client failed

当完成模拟器和 charles 的安装后,对内嵌的H5抓包时,charles 的请求会会出现报错:SSL handshake with client failed: An unknown issue occurred processing the certificate (certificate_unknown),以及You may need to configure your browser or application to trust the Charles Root Certificate. See SSL Proxying in the Help menu.

大概就是说需要在模拟器中安装 charles 根证书(Charles Root Certificate)。幸好mumu模拟器官网就有安装说明:MuMu模拟器X版本如何安装证书?

问题2:新版app打开就闪退

好不容易下载到了农行的apk(ABC_Android_V8.3.1.apk),在mumu中安装后打开却闪退。还好农行官网提供了一个不会闪退的历史版本(ABC_Android_V7.3.0.apk)。要不然,还得换个模拟器继续折腾。

catch you!

终于,charles 能正常显示抓包内容了:

经过不同页面的比对,发现国内订单详情页面会多发送一个请求:https://xxx.xxx.com/api/log。这是一个日志上传的接口,我怀疑就是它在作祟。删除这段代码后,页面果然恢复正常了。

总结

现在看来这好像没啥难度,但在这个过程中还是走了不少弯路。譬如 chatgpt 对此类问题完全是个智障,除了翻来覆去的声明:很抱歉,我不能提供任何关于非法活动或破解软件的指导或支持。

另外,当我们遇到一个看似无法解决的问题时,应该多多尝试,遇到问题解决问题,或许答案就在其中。

最后,用google!

标签:mumu,app,charles,andriod,页面,抓包,模拟器
From: https://www.cnblogs.com/fayin/p/17883706.html

相关文章

  • uniapp 配置 基座调试指定页面
    在用hbuildx时,用自定义基座,调试程序时,有的页面因为基座缺少组件而进不去,这个时候就可以用指定页面的方式,我们只需要把进入页面的入参传进去,这个时候打开页面就是指定要调试的页面了。就在page.json文件最后加入"condition":{//模式配置,仅开发期间生效"current":0......
  • uniapp 图片懒加载的一种方式
    如果是列表页,可以采用前端分页,通过scroll-view下拉,在绑定图片地址信息,这样就能下拉部分,加载部分图片了。pageQuery(){letcurrentPage=this.pQuery.page;letpageSize=this.pQuery.size;constindex=(......
  • 开发APP应用程序到底是选ios好还是Android好?
    哈喽大家好,我是咕噜老尼,现在我们都知道,APP应用已经覆盖了我们的生活,成为我们生活中不可缺少的一部分,手机系统主要分两种,分别是安卓和ios系统,不少APP开发公司在制作手机APP时,都需要将同一款APP做成两种,分别适应安卓和iOS系统。那么,开发APP应用程序到底是选ios好还是Android好,我们一......
  • uniapp---wap2app去掉系统自带的导航栏
    在用uniapp进行将wap站转化为app的时候,默认打包后的文件,带有系统的导航栏,下面是去除的办法:第一步:找到sitemap.json 设置titleNView为false: 第二步:在pages加入{"webviewId":"common","matchUrls":[{"hostname":"R:.*","pa......
  • uniapp之合并行表格
    前言此文旨在记录微信小程序中需要使用合并表头的需求场景,由于此项目使用的是Uniapp和uView这两个UI框架。然后接到一个需要查成绩的需求,表头大概长这样:碰到问题然后我惊奇的发现uniapp的table组件压根没有封装tr和td的rowspan属性,uView更是直接没有table组件。......
  • uni-app 基础架构搭建 ts+vue3 命令行
    1. 安装全局degitnpminstall-gdegit2.创建工程my-vue3-ts-project#创建以javascript开发的工程npxdegitdcloudio/uni-preset-vue#vitemy-vue3-ts-project#创建以ts开发的工程npxdegitdcloudio/uni-preset-vue#vite-tsmy-vue3-ts-project3进入目录cdmy-v......
  • 实战最新鸿蒙系统的短视频App:教你一步步掌握HarmonyOS的几个要点
    鸿蒙(HarmonyOS)是华为公司推出的全场景分布式操作系统,具备高效、安全和灵活的特性。本文将分享如何实战鸿蒙系统的智能家居控制App,并教你一步步掌握HarmonyOS的关键要点,并提供相关示例代码。一、了解HarmonyOS的核心概念在实战HarmonyOS智能家居控制App之前,首先需要了解HarmonyOS的......
  • 渐进式web全栈:blazor web app
    前言本文要说的这种开发模式,这种模式并不是只有blazor支持,js中有一样的方案next.jsnuxt.js;blazor还有很多其它内容,本文近关注渐进式开发模式。是的,前后端是主流,不过以下情况也许前后端分离并不是最好的选择:小公司,人员不多,利润不高,创业阶段能省则省个人开发者,接接私活,要么一......
  • 关于uniapp打包APP自定义基座调试,遇到首页同意网络权限后白屏问题
    解决方案:1、在App.vue文件中,onShow生命周期内添加一段代码,检测是否同意使用互联网权限:uni.onNetworkStatusChange(function(res){ console.log('onNetworkStatusChange',res); if(res.isConnected){ setTimeout(()=>{ uni.reLaunch({ url:'/pages/......
  • 将 .NET Aspire AppHost 部署到 Kubernetes 集群
    使用Aspirate可以将Aspire程序部署到Kubernetes集群工具安装dotnettoolinstall-gaspirate--prerelease注意:Aspirate正在开发中,该软件包将作为预览版进行版本控制,--prelease选项将获得最新的预览版。 容器注册中心您将构建为容器的csproj文件(项目)必须至少包含Con......