真机previewImage上不弹出toast

想要的效果是点击图片弹出预览图,并且提示用户长按识别小程序码

模拟器上妥妥的没有任何问题,结果到真机上....完戏苹果是直接不弹出toast,安卓手机上显示一下,当预览图出来就没有了。

各种百度,没有找到合理的解释。最后从微信的开发社区里面找到了官方的解释。https://developers.weixin.qq.com/community/develop/doc/000aa47b100dc82abd489d73a51400?highLine=previewImage

image.png

理解万岁。只能尝试从其他方向提示用户长按识别小程序码。
于是又给出了一个方案,预览图为一个带背景的小程序码图,在背景图上写上长按识别。
我便想了想,在哪里实现两张图的合并呢?
在预览文章的时候,合并图片,保存图片,并把图片地址返回

//在此之前我已经做了小程序码的上传,下面只需把小程序码与背景图合并生成一个新的图片,并保存。
...
$path = './uploads/look/'.$id.'_'.$key.'.png';//文件的存放路径
if(!file_exists($path)){
  $QIMG = './uploads/'.$value['app_code_date'].'/thumb/'.$value['app_code'];
  $dst_path = './static/images/look.png';//背景图片路径
  $src_path = $QIMG;//覆盖图
  $dst = imagecreatefromstring(file_get_contents($dst_path));
  $src = imagecreatefromstring(file_get_contents($src_path));
  //自己算自己小程序码放的位置
  imagecopymerge($dst, $src, 188, 240, 0, 0, 344, 344, 100);
  header("Content-type: image/png");
  imagepng($dst,$path);//根据需要生成相应的图片
}
$arrs['wxApp'][$key]['look'] = $id.'_'.$key.'.png'; //为我保存合并图片的变量
...

小程序上展示很简单了

bindViewTap: function(e) {
  var look = e.currentTarget.dataset.look;
  var url = app.globalData.imgurl+'/public/uploads/look/'+look
  wx.previewImage({
      current: url, // 当前显示图片的http链接   
      urls: [url], // 需要预览的图片http链接列表 
  })
}

你可能感兴趣的:(真机previewImage上不弹出toast)