記錄分享一下uni.getUserProfile的使用,前一段時間接手了一個小程序反饋的微信登錄后無法獲取用戶信息問題,經排查問題原因是,源代碼使用的是uni.getUserInfo方法,在今年初四月份微信團隊針對微信登錄做了優化,用uni.getUserProfile 代替了 uni.getUserInfo方法的使用,


未優化的代碼則會出現,雖然已經授權但是獲取不到用戶的微信信息,出現了默認用戶名為“微信用戶”的匿名信息


使用uni.getUserProfile需要注意兩點:
1. 重點留意的就是 desc 和 success 這兩個重要參數,千萬不要忘了加 desc!!!
2. uni.login和uni.getUserProfile的調用順序
在實際開發的過程中,很多同學會選擇在uni.login中包裹uni.getUserProfile,來保證獲取code和獲取的encryptedData順序,從而避免解密失敗
但實際上在調用uni.login獲取code后,再調用uni.getUserProfile,可能會失敗,觸發fail函數,error msg: ''getUserProfile:fail can only be invoked by user TAP gesture"。所以正確的調用順序是先調用uni.getUserProfile在其中包裹uni.login

