App Cloud アプリ内から写真や動画をアップロードする方法

最新の App Cloud SDK 1.12 ではユーザのカメラやライブラリから写真を撮ったり、その情報を取得する事が出来ます。また、それらのデータを POST することも出来るようになりました。

ここに、ユーザのカメラから新しいイメージ画像をキャプチャする方法を示します。

コールバック関数内にて、"camera" というソースタイプと"images" というメディアタイプを指定し、写真を撮るコマンドを指定します。

この uploadMedia 関数は URL、成功した際のコールバック関数、失敗した際のコールバック関数を引数に取ります。bc.device 系の関数に馴染みの深いあなたなら、失敗した際のコールバック関数には慣れているかもしれません。写真がキャプチャされてすぐに、成功した際のコールバック関数が実行されます。その際に、その進行状況を次のように指定出来ます。

【注意】uploadMedia 関数内にて様々なオプションが指定出来ます。

http://docs.brightcove.com/en/app-cloud-api/core/symbols/bc.device.mediaUpload.html

画像がアップロードされるにつれて、ユーザにフィードバックを返したいものです。その際には、PROGRESS、ERROR、そして COMPLETE イベントなどを使用します。

PROGRESS イベントを取得する場合には、どのくらいアップロードされているかパーセンテージを表示します。

COMPLETE イベントを取得する場合には、あなたのサーバから得た返答を基づいて、追加のアクションを引き起こします。

上記の例は非常にシンプルなもので、サーバはアクションが成功した場合には "OKAY" が返ってきます。しかしながら、アップロードしたイメージ画像を返すことも出来ます。

このブログに記載さている内容のデモは下記よりダウンロード可能です。

https://github.com/BrightcoveOS/App-Cloud-Demos/tree/master/media-upload

これからも App Cloud のブログを宜しくお願い致します。