最近在写获取微信头像的代码, 通过微信开放平台SDK授权登录后, 个人信息请求中会返回一个微信头像的url, 类似于这种形式:
"headimgurl": "http://wx.qlogo.cn/mmopen/g3MonUZtNHkdmzicIlibx6iaFqAc56vxLSUfpb6n5WKSYVY0ChQKkiaJSgQ1dZuTOgvLLrhJbERQQ4eMsv84eavHiaiceqxibJxCfHe/0",
注意,最后的/0代表大头像 /46代表小头像
如何读取这个头像, 首先想到的是协程, 然后通过WWW类,用Http请求来获取它;
当然之后还会考虑去获取所有好友的微信头像, 这就需要将很多图片的URL下载下来保存在本地, 所以百度学习了一下unity本地存取图片的方法.
主要用到了c#的gethashcode()来区分图片, 下载图片后将Texture压缩成bytes存在本地, www类加协程异步读取本地图片。
using UnityEngine;
using UnityEngine.UI;
using System.Collections;
using System.IO;
public class AsyncImageDownload : MonoBehaviour
{
public Sprite myWXPic;
private static AsyncImageDownload _instance = null;
public static AsyncImageDownload GetInstance() { return Instance; }
public static AsyncImageDownload Instance
{
get
{
if (_instance == null)
{
GameObject obj = new GameObject("AsyncImageDownload");
_instance = obj.AddComponent<AsyncIma