3
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【Unity】スマホアプリでカメラロールへの保存・SNSにシェアができるアセット NatShareのメモ

Posted at

#はじめに
【Unity】簡単にビデオ録画ができるアセット NatCorderのメモという記事の続きになります。
https://qiita.com/Formi/items/4b1ea2c53e25033436ea

スマホアプリ内で作成した画像や動画ファイルをカメラロールへ保存・SNSへシェアしたかったので利用しました。
NatCorderと違い無料のAssetになのがありがたいですね!

#NatShare

NatShare は、軽量で使いやすい Unity Engine 用のソーシャル共有 API です。NatShare を使用すると、わずか 3 つのステップでクロスプラットフォームのテキスト、画像、メディアの共有が可能になります。

公式API
https://docs.natsuite.io/natshare/
スクリーンショット 2021-03-07 23.41.06.png

こちらからインポートできます。
https://assetstore.unity.com/packages/tools/integration/natshare-mobile-sharing-api-117705

##Share方法
###SharePayloadクラス
SharePayloadクラスを生成します。
名前の通りこのオブジェクトを使ってシェアをすることになります。

var sharePayload = new SharePayload();

####SharePayload.AddText
シェアするときに利用するテキストを設定する関数です。
引数にはstring型で渡してあげます。

sharePayload.AddText(stringText);

####SharePayload.AddMedia
シェアしたい「音声・画像・ビデオ」ファイルを設定する関数です。
引数にはstring型でpathを渡してあげます。

sharePayload.AddMedia(mediaPath);

####SharePayload.AddImage
シェアしたい「画像」ファイルを設定する関数です。
引数にはTexture2D型で直接ファイルを指定します。(NatCorderと合わせて使う場合はpathが吐き出されるのでAddMediaでいい気がします)

sharePayload.AddMedia(mediaPath);

####SharePayload.Commit
上記関数で設定した情報をもとにShereをします。
プラットフォーム判別はいい感じにやってくれるので気にしなくても良いです。

sharePayload.Commit();

##カメラロールへの保存方法
###SavePayloadクラス
SharePayloadクラスを生成します。
オブジェクト生成時に保存するフォルダー名を指定します。
用意されている関数がSherePayLoadと同じなので簡単に使えます!

var savePayload = new SavePayload(FOLDER_NAME);

####SavePayload.AddMedia
シェアしたい「音声・画像・ビデオ」ファイルを設定する関数です。
引数にはstring型でpathを渡してあげます。

savePayload.AddMedia(mediaPath);

####SavePayload.AddImage
シェアしたい「画像」ファイルを設定する関数です。
引数にはTexture2D型で直接ファイルを指定します。

savePayload.AddMedia(mediaPath);

####SavePayload.Commit
上記関数で設定した情報をもとにカメラロールでフォルダの作成・保存をします。
プラットフォーム判別はこいつがいい感じにやってくれるので気にしなくても良いです。

savePayload.Commit();

##使い方
使いたいクラスのオブジェクトにAddしてCommitするだけで使えます。
Commit関数はTaskになっていて成功したかどうかをreturnしてくれるので、ちゃんと使いたい方は公式APIをのぞいてみてください。

#まとめ
NatCorderと合わせて使うことでMediaを扱う幅がグッと広がりました!
APIもしっかり用意されていて神Assetだと思います。

3
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?