首页 > 其他分享 >记录一次支付宝无法跳转到支付页面Bug处理过程

记录一次支付宝无法跳转到支付页面Bug处理过程

时间:2023-03-21 21:57:23浏览次数:60  
标签:支付宝 浏览器 获取 报错 跳转 处理过程 Bug 页面

背景

使用apicloud将h5项目打包成app,在该项目中用到了支付宝付款的api,流程是前端将订单信息提交到后端,后端返回一个url,前端跳转到这个url,页面如下。在浏览器中可以正常跳转到支付宝付款页面,打包成app后在安卓高版本中有些机型无法打开支付宝。
image

调试过程

尝试获取报错信息

打不开的话,按经验来说应该会有报错,要解决问题,首先要获取到报错信息或者警告信息。但这是外部界面,又在app中才能复现,log没有那么好获取。获取log尝试如下:
1 apicloud是否有什么配置,可以在app中弹出log,经过寻找没有找到。

2 apocloud真机同步,可以在apicloud studio中输出日志。但是不知道打开方式不对还是怎么样,现在的项目是老项目翻新的,同步死活连不上。于是新建了一个项目,编译自定义loader,成功同步了,一点点从老项目搬运代码到新项目。获取警告如下:

[WARN] 已设置yuyanId,其他 id 将不生效 at index.umd.min.js:1

但没查到有用信息,然后悲剧的是第二天新项目也无法同步了,再新建项目也不行,各种尝试后决定使用其他方法。

3 尝试给支付宝页面插入一段加载vconsole的js。思路是打开新页面的同时,给新页面插入一段js代码,查了一下好像没有直接实现的方法。变通一下,在iframe中打开支付宝页面,然后在iframe中插入js代码。
结果在iframe中内嵌支付宝页面显示不正常,操作部分的按钮没有加载出来。

获取报错信息失败,尝试使用openApp

openApp是apicloud提供的一个方法,可以打开其他应用。然后发现兼容性很差,安卓高版本中提示“未找到可执行的应用”,我猜测是安卓高版本中无法直接访问data。所以获取不到对应的应用。

退一步,通过浏览器跳转到支付宝

实在无法解决,只能在浏览器中打开支付宝页面,再在浏览者跳转到支付宝付款页面了。摆烂一点,直接把url暴露出来,让用户复制到手机浏览器中打开。稍微优化一点,直接打开浏览器。按照以下链接,成功解决。
https://blog.csdn.net/LiAly66/article/details/127725909

标签:支付宝,浏览器,获取,报错,跳转,处理过程,Bug,页面
From: https://www.cnblogs.com/code-R/p/17240131.html

相关文章

  • 微信小程序之引导页自动跳转
    #情境现在想要自己做一个微信小程序,参考DD小程序,返现人家的有类似的引导页不过,1.5s后就自动跳转了,感觉很不错,跳转不会那么突兀,所以借鉴搞一下#示例Page({//引导页自动......
  • mysql5.7奇怪bug
          看这个查询很奇怪,1145就错,子查询返回多于 1 行。。。 1就对。1145跟1144都不行,1143可以。更新为0 ,是正常执行的    1145也只有一条......
  • 【C/调试实用技巧】—作为程序员应如何面对并尝试解决Bug?
    @​​TOC​前言我相信大家在写代码,或者刷题时,不可能每一次都是一次就能写出完美的不出错误的代码,如果真实这样的话,恭喜你,你是一个天才,并不需要进行本篇文章的学习,此文章是我......
  • debian ipxe-qemu (version 1.0.0+git-20190125.36a4c85-5 bug and install kvm+qemu+
    环境debiansid/testingbug1我发现了在sid中的一个BUG,并在debianwiki中找到了这个BUG的记录BUG2以上我们得知了,这个重要BUG不影响我们本身,所以直接安装安装可以只安装QEMU......
  • 2022年度腾讯研发数据公布:70%的Bug在两天内解决
    3月20日,腾讯正式发布《2022年腾讯研发大数据报告》(以下简称《报告》)。《报告》由腾讯技术委员会出品,全面披露了2022年腾讯在研发投入、研发效能、开源协同等方面的重要数据......
  • 打印三角形及Debug模式
    打印三角形packagetest.operator;publicclassprintTriangle{publicstaticvoidmain(String[]args){for(inti=1;i<=5;i++){......
  • 06-逻辑仿真工具VCS-Debug
    逻辑仿真工具VCSverdi只进行debug进行使用,不进行编译,只进行产生波形之后的debug仿真速度和代码质量有关系,选项也会影响仿真速度,行为级>RTL>门级信号的可见性和......
  • flutter项目运行时一直卡在Running Gradle task 'assembleDebug'... & Could not reso
    先是看了别人的文章  Flutter项目启动一直卡在RunningGradletask‘assembleDebug‘问题解决-灰信网(软件开发博客聚合)(freesion.com),做了同样的处理,但接着又报错......
  • switch...case跳转表
    0.本文结构概述switch...case语法格式C和C++的switch不同点switch...case反汇编switch...case跳转表case值间距过大不用跳转表1.switch...case语句switch(表达......
  • 解决编程式路由跳转,多次执行抛出NavigationDuplicated异常
      解决:在vue-router的index.js中添加如下代码//先保存router原型对象的pushletoriginPush=VueRouter.prototype.pushletoriginReplace=VueRouter.prototype......