通过 button 的 open-type 方式来获取相应的权限及信息(如用户信息,手机号等)。
通过 wx.authorize()
和 wx.openSetting()
两个接口来申请相应的权限。
wx.authorize()
调用需授权 API 之前,提前向用户发起授权请求。调用后会立刻弹窗询问用户是否同意授权小程序使用某项功能或获取用户的某些数据,但不会实际调用对应接口。如果用户之前已经同意授权,则不会出现弹窗,直接返回成功。
wx.openSetting()
调起客户端小程序设置界面,返回用户设置的操作结果。设置界面只会出现小程序已经向用户请求过的权限(开发者可以调用该端口打开设置界面,引导用户开启授权)
API触发授权窗口,无论成功或者失败,授权窗口只弹出一次
而手动触发的授权窗口,只要之前没允许授权每次点击都会一直弹出!
如青桔骑行:
在刚打开进入时候:会申请获取你的位置信息:
当点击拒绝的时候,会弹出一个提示框:
若用户一直没有授权位置信息,每次当需要获取地理位置的时候都会提出该提示框,点击确定,会引导用户到设置界面进行手动开启授权。
当用户想要查看个人信息,点击“我的”,会出现申请个人信息:(这里左边是“取消”而不是“拒绝”)
如果用户点击取消,之后再次点击“我的”,该授权界面还会再次出现。
在使用界面删除该小程序,再次进入,以上两项权限依旧会再次向用户申请。
但是好像登录会自动获取用户手机号?删除也没有用?
使用了cookie技术来收集和存储信息