收藏
回答

鸿蒙app调用微信分享图片异常

https://developers.weixin.qq.com/doc/oplatform/Mobile_App/Share_and_Favorites/ohos.html

sdk版本为目前最新版1.0.4;微信为1.0.2.43

使用微信官方示例生成base64或者华为官方示例均报错

openWechat fail by err:{"code":16000050}

//方式一:鸿蒙官网base64示例
const base64 = 'data:image/jpeg;base64,' + buf.toString('base64', 0, buf.length);
imageObject.imageData = base64
// 方式二:微信官网base64示例
 imageObject.imageData = buf.toString('base64', 0, buf.length);



另外使用uri方式分享图片能够成功调起微信,但是最后微信页面异常“参数非法”;

imageObject.uri = fileUri.getUriFromPath(imageUrl);

今天的日志已通过微信-设置-帮助和反馈进行上报。

微信号:wx_zyq02

回答关注问题邀请回答
收藏

2 个回答

  • kk
    kk
    2025-07-07

    我也一样尝试用本地图片来转也是不成功的,有解决的吗?

    2025-07-07
    有用
    回复
  • 落叶🍂
    落叶🍂
    2024-12-25
    base64的方式报错16000050原因找到了。是因为图片大小,需要压缩到满足要求才可以;前头的'data:image/jpeg;base64,'加不加都行,不影响。
    

    2024-12-25
    有用
    回复 5
    • pioneerz
      pioneerz
      2025-01-08
      你是怎么压缩的?
      2025-01-08
      回复
    • SummerAir
      SummerAir
      2025-03-28回复pioneerz
      图片本身大小没有用,要计算转后的base64字符串的大小,字符串大小不能过大,如果过大,使用packToData压缩质量
      2025-03-28
      回复
    • 泽宥
      泽宥
      2025-05-21回复SummerAir
      我压缩了以后跳到微信报非法参数,用了demo里的代码还是报非法参数
      2025-05-21
      回复
    • 朱金金
      朱金金
      2025-05-22回复泽宥
      用base64字符串参数,压缩到100kb以内,我这边可以,你可以先弄20kb大小,保证能成功,然后往上一点点加。我给微信提了个问题,100kb太小了,很模糊,安卓的是1MB,ios的是10MB。
      2025-05-22
      回复
    • Insight
      Insight
      2025-06-30
      打听一下,微信有回复解决方案吗,同样等待中
      2025-06-30
      回复
登录 后发表内容