随着 Flutter愈来愈火热,我相信愈来愈多的小伙伴都跃跃欲试。可是一个很重要的问题是,不少第三方 SDK,如微信SDK,都没法在Flutter上直接使用。因此,我这几天开发了一个微信SDK的插件,但愿可以必定程度上帮助到你们。android
这是Fluwx的目标。如今Fluwx仍在开发阶段,android分享部分已经完成,ios部分还在持续开发。若是你想也成为Fluwx的开发者,能够给我留言。ios
使用Fluwx
以前,强烈建议先阅读微信SDK官方文档, 这有助于你使用Fluwx
。Fluwx
的api字段名称基本和官方的字段名称是一致的。git
在pubspec.yaml
文件中添加以下代码:github
dependencies:
fluwx: ^0.0.1
复制代码
Fluwx.registerApp(RegisterModel(appId: "your app id", doOnAndroid: true, doOnIOS: true));
复制代码
doOnAndroid: false
或者doOnIOS: false
,请务必在对应平台手动注册WXApi
,以保证 Fluwx正常工做。 注册完成后,请在对应平台添加以下代码: 在Android上:FluwxShareHandler.setWXApi(wxapi)
复制代码
在iOS上:web
isWeChatRegistered = YES;
复制代码
你也能够取消注册你的app。objective-c
Fluwx.unregisterApp(RegisterModel(doOnAndroid: true, doOnIOS: true));
复制代码
注意:尽管能够经过Fluwx完成微信注册,但一些操做依然须要在对应平台进行设置,如配置iOS的URLSchema等。
复制代码
以分享文本和网址为例:小程序
var fluwx = Fluwx();
fluwx.share(WeChatShareImageModel(image: "imagePath",thumbnail: "thumbanailPath"));
fluwx.share(
WeChatShareWebPageModel(
webPage: "https://github.com/JarvanMo/fluwx",
title: "Fluwx",
thumbnail: "http://d.hiphotos.baidu.com/image/h%3D300/sign=1057e22c6ed9f2d33f1122ef99ee8a53/3bf33a87e950352aadfff8c55f43fbf2b3118b65.jpg",
)).then((result){
},
onError: (msg){
});
复制代码
fluwx.share(WeChatShareModel)
目前仅支持系统内WeChatShareModel
的子类,不支持自定义。 全部字段名字和官方文档基本是一致的。api
图片仅支持png
和jpg
。 目前全部须要图片的地方支持网络图片及assets图片。
使用assets图片须要添加assets://
。
也能够在assets图片添加?package=package_name
以读取指定包的图片。
将来可能支持file://
。
若是不指定schema或者schema错误,将会被处理为网络图片,请谨慎。
微信
全部涉及缩略的最好给Fluwx一个合格的图片(小于32k,小程序小于120k),不然Fluwx将会对图片进行处理,这样作的结果可能并非你所预期的,如缩略图被裁剪。网络
Fluwx传送门 欢迎加入OpenFlutter交流群:892398530.