1、后台小程序在运行过程中难免会遇到一些异常情况,给用户带来不好的体验。鉴于此,我们总结了一些常见的案例,归纳为最佳实践,以帮助开发者合理处理异常,提升小程序体验。2、最佳实践场景一:用户拒绝授权定位,二次入口页面不友好。有些小程序在进入首屏时需要获取用户的地理位置权限,但是如果用户误点击了【拒绝】按钮,那么下次再次进入小程序时,页面会直接显示不能位于。所以对于普通用户来说,很难知道如何重新启用权限,从而无法使用小程序,给用户带来不好的体验。首次进入小程序时,会弹出获取地理位置信息的对话框,用户点击拒绝。再次进入小程序时,页面会如右图,整个页面没有任何内容。那么我们如何解决这种场景下的问题呢?这里有一个优化建议:当用户进入页面时,判断当前用户的权限;如果用户没有相应权限,会弹出设置页面,引导用户开启权限。Page({onLoad(){swan.authorize({scope:'scope.userLocation',fail(err){//更多错误码参考官方文档:https://smartprogram.baidu.com/docs/develop/api/open/authorize_swan-authorize///以10003用户拒绝授权为例if(err.errCode===10003){swan.openSetting({success(res){//弹出异常提示toastswan.showToast({title:'请点击权限设置->地理位置开启地理位置权限',icon:'none'});},});}});}});这样用户在进入界面时可以收到友好的通知提示,通过重新启用权限使用该功能。场景二:获取用户信息及异常处理在业务开发中,经常需要获取用户信息、地址等;我们发现部分开发者仍在使用以下两个过时的API,我们不提倡这种做法。官方文档提供了通过按钮调用的方法,具体用法如下:
