实践发现,在小程序生命周期内,如果在无网络环境下,第一次碰到需要使用授权才能使用的组件或API,微信必须通过网络读取授权信息才能使用相对功能!如果第一次有网络,那在这次生命周期里就后续均可以。这个机制在我们可以触及的所有机型和版本中都是这样。我想问以下问题:
一个用户在没网络情况下,可以把已经看过的朋友圈照片保存到本地么?那为什么小程序api需要网络才能有album权限!
一个用户在无网络情况下,凭什么不能用自己手机的摄像头拍照?
一个用户在无信号的地下室仓库,凭什么不能通过扫码做货品的盘点!?
一个用户在没有信号的山区内,如果不能获取自身位置,如何进行轨迹导航?
【无网络无法scancode】请问实现个完全脱离网络的扫码有多难!!
我们应用主要场景就是在山区,之前为了在无信号下可以正常使用小程序,本地数据缓存,上传队列做了很多工作,结果发现授权上居然隐藏了这样一个大问题。对于网络做这样的强依赖,的确在很多互联网业务里没什么问题,但碰到工具类的小程序,这是无法绕开的死穴!
代表全公司每天在论坛给微信小程序团队下跪。跪到公司解散或者需求可以被采纳!
谢谢
----
代码片段复现:
真机打开后,第一次授权使用camera
退出微信杀掉进程
打开飞行模式
重新打开微信
打开此代码片段的小程序
可以看到页面一片空白
如果把error打印出来:
detail :{ errMsg: "insertCamera:fail userAuth response is nil" } |
每日一跪,请问题主目前是怎么处理的?
现在让工作人员在有信号的时候先取得授权并不退出小程序,这样保证工作时候授权还在缓存里。
另外我们做了支付宝小程序做backup,没有这个问题。
谢谢回复,目前我实际测试支付宝小程序,似乎是可以离线打开扫码的,并不需要用到camera再自己实现一套扫码的逻辑。不知道我的信息是否准确。
就凭我是腾讯 ... O(∩_∩)O哈哈~