flutter分享图片到微信
随着项目的不断完善,需要向外推广app,微信分享就是一个很常用的方式。分享图片至微信,分享长图,分享截屏等。
·
随着项目的不断完善,需要向外推广app,微信分享就是一个很常用的方式。分享图片至微信,分享长图,分享截屏等
1. GlobalKey
GlobalKey 是 Flutter 框架提供的一个类,可以在 Widget 树中唯一标识一个 Widget。这个键可以用于在 Widget 树中查找特定的 Widget,并在必要时提供对它的引用。
final GlobalKey repaintKey = GlobalKey();
2. RepaintBoundary
在需要分享的Widget外层包裹一层RepaintBoundary。
final GlobalKey repaintKey = GlobalKey();
RepaintBoundary(
key: repaintKey,
child:Text('滚动区域') // 包含截图的所有内容
)
3.Fluwx
Fluwx 是一个专为Flutter框架设计的微信SDK插件,它使开发者能够轻松调用微信的原生API,包括分享功能(支持图像、文本、音乐等至会话、朋友圈和收藏)、微信支付、小程序启动、订阅消息以及通过微信打开应用或从微信链接启动应用等功能。引入配置略...
//分享图片到微信好友
shareImageToFriend() async {
final renderObject =
repaintKey.currentContext?.findRenderObject() as RenderRepaintBoundary;
// 将当前页面渲染为图片
final pixelRatio = MediaQuery.of(context).devicePixelRatio;
print(pixelRatio);
final image = await renderObject.toImage(pixelRatio: pixelRatio);
final byteData = await image.toByteData(format: ImageByteFormat.png);
final pngBytes = byteData?.buffer.asUint8List();
Fluwx fluwx = Fluwx();
fluwx.share(WeChatShareImageModel(WeChatImage.binary(pngBytes!)));
}
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐

所有评论(0)