<p id="lvhml"></p>

<bdo id="lvhml"><th id="lvhml"><rp id="lvhml"></rp></th></bdo>

  • <td id="lvhml"><ruby id="lvhml"></ruby></td>

    小程序資訊

    微信小程序如何適配用戶頭像昵稱獲取規則調整

    小程序資訊 2022-11-22 17:40:21 | 閱讀:1525 | 作者:方維網絡 | 標簽:小程序定制開發    
    小程序調整

    相信大家都收到這個通知了,關于微信小程序獲取用戶頭像和昵稱這個問題,可謂變化頻繁,可真苦了開發者,每次重新提交代碼,都需要重新適配。
    最開始是使用wx.getUserInfo ,后面改為wx.getUserProfile,現在又變了。

    調整說明

    自 2022 年 10 月 25 日 24 時后(以下統稱 “生效期” ),用戶頭像昵稱獲取規則將進行如下調整:

    自生效期起,小程序 wx.getUserProfile 接口將被收回:生效期后發布的小程序新版本,通過 wx.getUserProfile 接口獲取用戶頭像將統一返回默認灰色頭像,昵稱將統一返回 “微信用戶”。生效期前發布的小程序版本不受影響,但如果要進行版本更新則需要進行適配。
    自生效期起,插件通過 wx.getUserInfo 接口獲取用戶昵稱頭像將被收回:生效期后發布的插件新版本,通過 wx.getUserInfo 接口獲取用戶頭像將統一返回默認灰色頭像,昵稱將統一返回 “微信用戶”。生效期前發布的插件版本不受影響,但如果要進行版本更新則需要進行適配。通過 wx.login 與 wx.getUserInfo 接口獲取 openId、unionId 能力不受影響。
    「頭像昵稱填寫能力」支持獲取用戶頭像昵稱:如業務需獲取用戶頭像昵稱,可以使用「頭像昵稱填寫能力」(基礎庫 2.21.2 版本開始支持,覆蓋iOS與安卓微信 8.0.16 以上版本),具體實踐可見下方《最佳實踐》。
    小程序 wx.getUserProfile 與插件 wx.getUserInfo 接口兼容基礎庫 2.27.1 以下版本的頭像昵稱獲取需求:對于來自低版本的基礎庫與微信客戶端的訪問,小程序通過 wx.getUserProfile 接口將正常返回用戶頭像昵稱,插件通過 wx.getUserInfo 接口將正常返回用戶頭像昵稱,開發者可繼續使用以上能力做向下兼容。

    對于上述 3,wx.getUserProfile 接口、wx.getUserInfo 接口、頭像昵稱填寫能力的基礎庫版本支持能力詳細對比見下表:

    小程序表

    從上表可看出  沒有一個是全部通用的,那怎么辦呢?只能寫3種代碼進行適配了。代碼如下
    const version = wx.getSystemInfoSync().SDKVersion
    
    if (compareVersion(version, '2.21.1') >= 0) {
      //使用獲取昵稱頭像接口
    } else {
      //使用wx.getUserProfile接口
    }
    
    因為wx.getUserInfo 是非常老的接口,基本不用適配,正常用戶都升級了。
    
    獲取頭像代碼
    
    <button class="avatar-wrapper" open-type="chooseAvatar" bind:chooseavatar="onChooseAvatar">
        <image class="avatar" src="{{avatarUrl}}"></image>
     </button>
    

    onChooseAvatar(e) {
        const { avatarUrl } = e.detail 
        this.setData({
          avatarUrl,
        })
    }

    獲取昵稱代碼

    <input type="nickname" class="weui-input" placeholder="請輸入昵稱"/>

    input type為nickname即可 還是挺方便的

    獲取昵稱有個坑是,他獲取的只是微信文件等,要讓別人看到,還是需要上傳到服務器,所以需要多一步。
     
     
    
    精品国产成人av制服_日日橹狠爱欧美视频国产_亚洲日韩制服师生第一页中文字幕_日韩制服国产中文第一区
    <p id="lvhml"></p>

    <bdo id="lvhml"><th id="lvhml"><rp id="lvhml"></rp></th></bdo>

  • <td id="lvhml"><ruby id="lvhml"></ruby></td>