FJCT_ニフクラ mobile backend(mBaaS)お役立ちブログ

スマホアプリ開発にニフクラ mobile backend(mBaaS)。アプリ開発に役立つ情報をおとどけ!

Flutter(Dart)用NCMB SDKの機能について(ファイルダウンロード)

f:id:mbaasdevrel:20200110154553p:plain

非公式ですが、Flutter(Dartでも)で使えるNCMB SDKを開発しています。

ncmb | Dart Package

今回はファイルストアのダウンロード機能の使い方について紹介します。

SDKのインポート

まずはSDKをインポートします。pubspec.yamlは以下のように記述します。

dependencies:
  ncmb: ^0.1.7

コードでは次のようにインポートします。

import 'package:ncmb/ncmb.dart';

Flutterであれば flutter pub get 、Dartであれば pub getでライブラリをインポートできます。Visual Studio Codeであれば、エディタからインポートできるでしょう。

SDKの初期化

次にSDKを初期化します。

NCMB ncmb = new NCMB('YOUR_APPLICATION_KEY', 'YOUR_CLIENT_KEY');

ファイルダウンロードについて

ファイルダウンロードは ncmb.File.download('ファイル名') で行います。

var file = await ncmb.File.download('dart.png');

fileにはblobというフィールドが追加されています。これは Uint8List になっています。例えば画像であれば Image.memory にそのまま渡せます。

Image.memory(file.get('blob'));

f:id:mbaasdevrel:20200310164224p:plain

まとめ

ファイルダウンロードはHTTPSアクセスからも可能ですが、ACLを使ったダウンロードは ncmb.File.download が必要です。なお、ソースコードは下記のリポジトリにて公開しています。ライセンスはMIT Licenseです。ぜひFlutterでもNCMBを活用してください!

NCMBMania/ncmb-dart: NCMB library for Dart and Flutter.