• app第三方授权登录之ios登录


    在 iOS13 中,如果 App 提供第三方登录,就必须添加 苹果登录 Sign in with Apple 选项,并要求所有开发者于 2020年4月之前 完成现有应用的更新,否则审核不给通过。

    在 HBuilderX 配置 apple 登录

    1、在 HBuilderX 打开需要配置 苹果授权登录(Sign in with Apple)的项目找到 manifest.json-App SDK配置-登录鉴权-苹果登录(Sign In with Apple) 将其勾选

    代码

    1、在 template 添加以下代码, 苹果授权登录(Sign in with Apple)是 iOS 13 才有的,做下系统版本判断

    1 <template>
    2     <view class="content">
    3         <!-- 苹果登录 -->
    4         <view class="sign-in-with-apple" v-if="system >= 13 && platform=='ios'" @click="appleLogin">sign in with apple</view>
    5     </view>
    6 </template>

    2、在 script 里添加点击以下代码

      export default {
            data() {
                return {
                    title: 'Hello',
                    system: '', // 系统版本
                    platform: '',   // 平台
                }
            },
            onLoad() {
                // 先判断 系统版本
                uni.getSystemInfo({
                    success: (res) => {
                        this.system = res.system
                        this.platform = res.platform
                    },fail: (err) => {
                    },complete: () => {
                    }
                })
            },
            methods: {
                // 苹果登录
                appleLogin() {
                    // 判断是 iOS13版本
                    uni.login({
                        provider: 'apple',
                        success: (loginRes) => {
                            uni.getUserInfo({
                                provider: 'apple',
                                success: (userInfoRes) => {
                                },
                                fail: (err) => {
                                }
                            })
                        },
                        fail: (err) => {
                        }
                    })
                }
            }
        }
    </script>

    3、授权成功回调

    {
        "errMsg": "getUserInfo:ok",
        "rawData": "json字符串",
        "userInfo": {
            "openId": "xxx.xxxxx.xxx", // 苹果用户唯一标识符,该值在同一个开发者账号下的所有 App 下是一样的,开发者可以用该唯一标识符与自己后台系统的账号体系绑定起来。
            "fullName": {}, // 当且仅当第一次授权才会返回
            "authorizationCode": "12345678xxx", // 服务器验证需要使用的参数
            "identityToken": "header.payload.signature", // 服务器验证需要使用的参数
            "realUserStatus": 1 // 用于判断当前登录的苹果账号是否是一个真实用户
        },
        "signature": ""
    }
  • 相关阅读:
    oracle 判断字符串是否包含指定内容
    java 如何使用多线程调用类的静态方法?
    oracle 快速复制表结构、表数据
    oracle 清空表数据的2种方式及速度比较
    一、Instrument之Core Animation工具
    net登录积分(每天登录积分仅仅能加一次) 时间的比較
    正规方程 Normal Equation
    笑谈贝叶斯网络(干货)上
    SQL SERVER 面试题
    好的创始人想要改变世界,最好的创始人还要不放弃——扎克伯格清华中文演讲
  • 原文地址:https://www.cnblogs.com/qdjj/p/14755466.html
Copyright © 2020-2023  润新知