一、背景
小程序在运行过程中难免会遇到一些异常情况,将会给用户带来不好的体验。针对于此,我们总结出一些常见的case,总结成最佳实践,帮助开发者合理处理异常,提升小程序体验。
二、最佳实践
场景一:用户拒绝授权定位,二次进入页面不友好
一些小程序需要在进入首屏的时候,需向用户获取地理位置权限,但是若用户一旦误点击【拒绝】按钮,那么下次再次进入该小程序时,页面直接显示无法定位。那么对于一般用户,很难知道如何再次开启权限,并因此无法使用小程序,给用户造成了不好的体验。
首次进入小程序时,会弹出获取地理位置信息的对话框,用户点击拒绝。
再次进入小程序时,页面会如右图所示,整个页面无内容。
那我们如何解决这个场景的问题呢?这里提出一种优化建议:
- 在用户进入页面时,对当前用户的权限进行判断;
- 若用户没有对应权限,则弹出设置页面来引导用户开启权限。
Page({
onLoad() {
swan.authorize({
scope: 'scope.userLocation',
fail(err) {
// 更多错误码请查看官方文档:https://smartprogram.baidu.com/docs/develop/api/open/authorize_swan-authorize/
// 以 10003 用户拒绝授权为例