Javascript 防止PWA在启动时重新启动';访问

Javascript 防止PWA在启动时重新启动';访问,javascript,stripe-payments,progressive-web-apps,samsung-galaxy,Javascript,Stripe Payments,Progressive Web Apps,Samsung Galaxy,我正在开发一个PWA,在付款页面上遇到了这个问题。基本上: 情景1 用户填写付款单 点击提交,被重定向到第三方支付页面-条带(这将在移动设备上的Chrome中打开一个选项卡,并且无法调整以打开类似桌面的模式) 付款成功后,第三方页面将重定向到PWA,PWA将自动重新启动 问题是,我有一个无法显示的成功页面,因为重新启动时,我失去了我所处的整个状态 场景2 用户填写付款单 点击手机上的后退按钮/主页按钮 从桌面,再次打开应用程序。有时,应用程序会以以前的状态打开(表单已填充),有时会重新启动,再次

我正在开发一个PWA,在付款页面上遇到了这个问题。基本上:

情景1

  • 用户填写付款单
  • 点击提交,被重定向到第三方支付页面-条带(这将在移动设备上的Chrome中打开一个选项卡,并且无法调整以打开类似桌面的模式)
  • 付款成功后,第三方页面将重定向到PWA,PWA将自动重新启动
  • 问题是,我有一个无法显示的成功页面,因为重新启动时,我失去了我所处的整个状态

    场景2

  • 用户填写付款单
  • 点击手机上的后退按钮/主页按钮
  • 从桌面,再次打开应用程序。有时,应用程序会以以前的状态打开(表单已填充),有时会重新启动,再次丢失所有内容
  • 我能做些什么来防止这种情况?我知道当你从桌面打开一个PWA图标时,你基本上就是在打开chrome。但是,如果应用程序已经打开(并且在最近的选项卡中仍然可见),我可以做些什么来阻止它重新启动?我猜电话会自动关机

    可能的解决方案:

    我现在唯一能想到的就是将所有内容存储在localStorage中,并尝试在刷新时重新加载。这样我可以确保即使它再次关闭和打开,我仍然保持以前的状态

    有趣的是,场景1(最让我困扰的)只发生在三星Galaxy S7上(到目前为止已经测试了6-7款设备,而且它是唯一一款可以复制的设备)。所有浏览器上的Chrome版本基本相同


    有什么想法吗?谢谢

    因此保存到本地存储例程工作正常。我传递给Stripe的回调函数被调用了,但是在PWA重新启动之后

    因此,我所做的是将状态保存在localStorage中,这是回调中的第一件事,标记为
    paymentInProgress
    ,然后尝试在服务器上调用save并显示成功页面。如果在这段时间内一切都崩溃了,应用程序会重新启动,在
    componentDidMount
    中,我正在检查本地存储数据和
    paymentInProgress===true
    标志


    我仍然很好奇,是否有其他解决方案可以防止页面从头开始重新加载。

    因此保存到本地存储例程起作用。我传递给Stripe的回调函数被调用了,但是在PWA重新启动之后

    因此,我所做的是将状态保存在localStorage中,这是回调中的第一件事,标记为
    paymentInProgress
    ,然后尝试在服务器上调用save并显示成功页面。如果在这段时间内一切都崩溃了,应用程序会重新启动,在
    componentDidMount
    中,我正在检查本地存储数据和
    paymentInProgress===true
    标志

    我仍然很好奇,是否有其他解决方案可以防止页面从头开始重新加载