uni-app 打包 app

调用第三方登录(微信等)

页面代码

<view class="auth">

      <!-- #ifdef APP-PLUS -->

      // 条件编译, 代码只有在app内才生效

      <image src="../../static/icos/weixin.png" data-loginType="weixin" @click="auth"></image>

      <image src="../../static/icos/QQ.png" data-loginType="qq" @click="auth"></image>

      <image src="../../static/icos/weibo.png" data-loginType="sinaweibo" @click="auth"></image>

      <!-- #endif -->

      <!-- #ifndef MP-WEIXIN -->

      // 条件编译, 代码只有在微信小程序内才生效

      <image src="../../static/icos/weixin.png"  @click="weixinLogin"></image>

      <!-- #endif -->

</view>

事件处理

methods: {

      auth(e) {

        let loginType = e.currentTarget.dataset.logintype

        // 获得定义在image标签上的logintype属性, 属性取值只能使用小写

        // 授权登录

        uni.login({

          provider: loginType,

          // 给provider传入不同的值, 调用不同的应用登陆接口

          success(res) {

            // 登录成功后, 获取用户数据

            uni.getUserInfo({

              provider: loginType,

              success(e) {

                console.log(JSON.stringify(e.userInfo));

                //  返回的数据是json格式

          }

        })

      }

    }

provider值

provider值

官方链接

https://uniapp.dcloud.io/api/plugins/provider?id=getprovider

根据不同的平台,做不同的处理

auth(e) {

        let loginType = e.currentTarget.dataset.logintype

        uni.login({

          provider: loginType,

          success(res) {

            // 登录成功后, 获取用户数据

            uni.getUserInfo({

              provider: loginType,

              success(info) {

                var userInfo = info.userInfo

                var nickName = ""

                var avatarUrl = ""

                var openId = ""

                if (loginType == "weixin") {

                  nickName = userInfo.nickName

                  avatarUrl = userInfo.avatarUrl

                  openId = userInfo.openId

                } else if (loginType == "qq") {

                  nickName = userInfo.nickname

                  avatarUrl = userInfo.figureurl_qq_2

                  // qq返回了多个尺寸的头像, 按需选择

                  openId = userInfo.openId

                }else if (loginType == "sinaweibo") {

                  nickName = userInfo.nickname

                  avatarUrl = userInfo.avatar_large

                  openId = userInfo.id

                }

              }

            })

          }

        })

      }

链接地址

https://www.jianshu.com/p/c636336b5c7e

打包APP

申请微信相关信息

一、登录注册

首先进入微信开放平台,如果有账号的话直接登录,没有的话则根据步骤申请一个账号。


登录

二、创建应用

1、点击移动应用开发进入


进入移动应用


2、创建应用界面根据需要填写下面的资料,注意名字半年才可以更改一次,这个名字就是分享后显示的名字(和应用名保持一致)logo尺寸 28x28一张,108x108一张,这个图片就是分享后显示的logo(和应用logo保持一致)


填写资料

三、填写平台信息

1、勾选所需要的平台


选择平台

2、填写平台信息需开发人员提供,选填的可不填写,测试的Bundle ID 可与上面的一致,


ios
Android

提交审核上面信息填写完毕后就可以提交申请了,一般1-7个工作日审核完成。

提交审核

四、审核通过

通过后就获得了微信分享的能力,需要把AppID和AppSecret提供给开发者。

注意 AppSecret每次只能看到一次,在看到的时候需要保存下来,如果没有保存,下次就要重置,重置后就是一个新的secret,开发者那里也要相应的更新替换。

审核完成

安卓证书在线制作工具

安卓证书在线制作工具

链接地址

http://www.appuploader.net/appuploader/keystore.php

登录开发中心

登录Hbulider

链接地址

https://dev.dcloud.net.cn/app/index?type=0


我的应用

我的应用

创建应用

输入应用的名称

填写应用名称
创建成功

打包


填写信息

输入信息,即可打包

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容