Fluwx:微信SDK在Flutter上的實現


前言

隨着 Flutter越來越火熱,我相信越來越多的小伙伴都躍躍欲試。但是一個很重要的問題是,很多第三方
SDK,如微信SDK,都無法在Flutter上直接使用。所以,我這幾天開發了一個微信SDK的插件,希望能夠一定程度上幫助到大家。

Fluwx要做什么

  • 分享
  • 登錄
  • 支付

這是Fluwx的目標。現在Fluwx仍在開發階段,android分享部分已經完成,ios部分還在持續開發。如果你想也成為Fluwx的開發者,可以給我留言。

需要准備的

使用Fluwx之前,強烈建議先閱讀微信SDK官方文檔
這有助於你使用FluwxFluwx的api字段名稱基本和官方的字段名稱是一致的。

引入

pubspec.yaml文件中添加如下代碼:

  1.  
    dependencies:
  2.  
    fluwx: ^0.0.1

初始化

Fluwx.registerApp(RegisterModel(appId: "your app id", doOnAndroid: true, doOnIOS: true)); 
  • appId:在微信平台申請的appId。
  • doOnAndroid:是否在android平台上執行此操作。
  • doOnIOS:是否在平台上執行此操作。
    每一個字段都是非必須的,但是如果不傳appId或doOnAndroid: false或者doOnIOS: false,請務必在對應平台手動注冊WXApi,以保證
    Fluwx正常工作。
    注冊完成后,請在對應平台添加如下代碼:
    在Android上:
FluwxShareHandler.setWXApi(wxapi)

在iOS上:

isWeChatRegistered = YES; 

你也可以取消注冊你的app。

Fluwx.unregisterApp(RegisterModel(doOnAndroid: true, doOnIOS: true)); 
注意:盡管可以通過Fluwx完成微信注冊,但一些操作依然需要在對應平台進行設置,如配置iOS的URLSchema等。

開始分享

以分享文本和網址為例:

  1.  
    var fluwx = Fluwx();
  2.  
    fluwx.share(WeChatShareImageModel(image: "imagePath",thumbnail: "thumbanailPath"));
  3.  
    fluwx.share(
  4.  
    WeChatShareWebPageModel(
  5.  
    webPage: "https://github.com/JarvanMo/fluwx",
  6.  
    title: "Fluwx",
  7.  
    thumbnail: "http://d.hiphotos.baidu.com/image/h%3D300/sign=1057e22c6ed9f2d33f1122ef99ee8a53/3bf33a87e950352aadfff8c55f43fbf2b3118b65.jpg",
  8.  
    )). then((result){
  9.  
    },
  10.  
    onError: (msg){
  11.  
    });

fluwx.share(WeChatShareModel)目前僅支持系統內WeChatShareModel的子類,不支持自定義。
所有字段名字和官方文檔基本是一致的。

圖片處理

圖片僅支持pngjpg
目前所有需要圖片的地方支持網絡圖片及assets圖片。</br>
使用assets圖片需要添加assets://。</br>
也可以在assets圖片添加?package=package_name以讀取指定包的圖片。</br>
未來可能支持file://。</br>
如果不指定schema或者schema錯誤,將會被處理為網絡圖片,請謹慎。</br>

注意

所有涉及縮略的最好給Fluwx一個合格的圖片(小於32k,小程序小於120k),否則Fluwx將會對圖片進行處理,這樣做的結果可能並不是你所預期的,如縮略圖被裁剪。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM