这样处理毕竟并没有处理好。原因: 1、从转发进入小程序,只应该被执行一次,而onAppShow是前后台切换,可能有多次;把只应执行一次的逻辑放在可能被执行多次的场景下,不合适。 2、问题的根源是因为如果已经有同一个小程序的实例,再从转发进入小程序时,因重用一个实例而导致转发链接中包含的路径和参数信息丢失;我觉得合理的设计应该是,要么允许两个实例同时存在,要么丢弃之前实例的路径和参数信息,保留当前进入的场景路径以及参数
你们的重大bug:getLaunchOptionsSync不能读取新的启动参数在真机上跑的时候,启动参数改变后,getLaunchOptionsSync不能读取新的启动参数。场景是这样的,两个手机的微信的版本号都是7.0.4,上面各有一个微信号(假定分别是A和B)登录,先在A上跑了我们的小程序(是用一些启动参数启动的,有特定的path、query什么的。),然后转发给B,希望B完成某项任务。B从转发中打开了小程序,完成了任务,然后转发回A(带了一些新的启动参数,新的path、新的query什么的。)。这个时候A上我们的小程序一直没有关,还在后台。那这个时候B给A转发回了小程序,A点开这个转发,在程序里调用getLaunchOptionsSync,得到的还是原先的启动参数。只有手动把小程序关了,再点开刚才那个转发,才能得到新的参数。 这当然是不合理的!!!!!!!!!!!
2019-07-18我也碰到这样的问题,有解决方法吗?
我来提个需求:别人给我转发了一个小程序,带着特定的path和query参数别人给我转发了一个小程序,带着特定的path和query参数。ta给我转发这个小程序,肯定是希望我在小程序里做一些特定的事情,所以带了一些特定的path和query参数。但是,但是,这个小程序我刚才已经用了,它还在后台运行。那这个时候我点开ta给我的转发,却得不到那些path和query参数,也就做不了ta要我做的事情。——————这是一个非常严重的错误。希望腾讯的人员能充分重视这个问题。
2019-07-18