微信 使用chooseImage api返回的localld以如:”img src=wxLocalResource://imageid987654321123456789”的方式预览图片。
开发者测试返回“wxLocalResource://imageid987654321123456789”地址失效,只在ios里面出现,查API发现 :微信iOS客户端将于2017年3月1日
前逐步升级为WKWebview内核。
解决方法:更新微信 https://res.wx.qq.com/open/js/jweixin-1.2.0.js ,如果还是不能获取到,请使用getLocalImgData 接口来直接获取数据。
补充----------------------------------------------------------------------------------------------------------------------
getLocallmgData 获取的本地资源,在项目中添加删除图片多次,会出现问题就是已有的图片在选中时有BUG,出现多张,或者替换图片现象。
项目中用背景图片IOS显示不正常,用img安卓端显示不正常,所以就判断了终端,代码如下
var phone_type = '';
if (/(iPhone|iPad|iPod|iOS)/i.test(navigator.userAgent)) { //判断iPhone|iPad|iPod|iOS
phone_type = 'iphone';
} else if (/(Android)/i.test(navigator.userAgent)) { //判断Android
phone_type = 'android';
}
wx.chooseImage({
count:sel_num,
success: function (res) {
for(var j=0; j<res.localIds.length;j++)
{
images.localId.push(res.localIds[j]);
images.selected.push(1);
images.deleted.push(0);
total++;
select_num++;
}
document.getElementById('imagefiles2').innerHTML =''; //不支持jquery选择器
for (var i=0;i<images.localId.length;i++)
{
if(images.selected[i]==1){
if(phone_type=='iphone'){
document.getElementById('imagefiles2').innerHTML += '<div class="col-xs-3"><div class="test"><img style="width:100%;height: 100%;" id="images'+i+'" src="'+images.localId[i]+'" /><img class="del" data-id="'+i+'" src="{:C(IAS_PUBLIC_PATH)}/img/del.png" width="20%"></div></div>';
}else if(phone_type=='android'){
document.getElementById('imagefiles2').innerHTML += '<div class="col-xs-3"><div class="test" id="images'+i+'" style="background-image: url('+images.localId[i]+');background-size: cover;"><img class="del" data-id="'+i+'" src="{:C(IAS_PUBLIC_PATH)}/img/del.png" width="20%"></div></div>';
}
}
}
}
});