applican

マイページに戻る

Camera

写真を撮ります。

機能

デバイスのカメラで写真を撮る / アルバム内にある写真を検索する 【 getPicture 】

一時ディレクトリに保存された画像ファイルを削除する 【 cleanup 】

Base64形式の文字列、又はファイルのパスを渡して端末のライブラリへ画像を保存する 【 saveToPhotoAlbum 】

ライトを制御する 【 light 】

ブラウザからカメラを呼び出すための権限をリクエストする 【 requestPermission 】

利用用途

写真撮影や動画撮影の機能をアプリ内で実装したい場合、こちらの機能をご利用ください。

【対応ランタイムバージョン】

ランタイムのバージョン毎に最適化したサンプルをダウンロードしてご使用ください。

サンプル Camera
サンプル Camera
サンプル Camera
サンプル Camera
サンプル Camera
サンプル Camera
サンプル Camera
サンプル Camera
サンプル Camera
サンプル Camera
サンプル Camera
サンプル Camera
サンプル Camera
サンプル Camera
サンプル Camera
サンプル Camera
サンプル Camera
サンプル Camera
サンプル Camera
サンプル Camera
サンプル Camera

プロパティ

DestinationType.DATA_URL 画像を Base64 形式で取得
DestinationType.FILE_URI 画像をファイル URI として取得
PictureSourceType.PHOTOLIBRARY 写真ライブラリから取得
PictureSourceType.CAMERA 写真を撮る
PictureSourceType.SAVEDPHOTOALBUM アルバムから取得
EncodingType.JPEG 画像を JPEG 形式で取得
EncodingType.PNG 画像を PNG 形式で取得
MediaType.PICTURE 取得元は静止画像のみとします。
MediaType.VIDEO 取得元はビデオのみとします。
MediaType.ALLMEDIA 全てのメディアタイプからの取得を許可します。
PopoverArrowDirection.ARROW_UP ポップオーバの矢印(上)
PopoverArrowDirection.ARROW_DOWN ポップオーバの矢印(下)
PopoverArrowDirection.ARROW_LEFT ポップオーバの矢印(左)
PopoverArrowDirection.ARROW_RIGHT ポップオーバの矢印(右)
PopoverArrowDirection.ARROW_ANY ポップオーバの矢印

メソッド

getPicture

メソッド説明

getPicture(Function<CameraResult> successCallback, Function errorCallback,CameraOptions option)

デバイスのカメラで写真を撮るかアルバム内にある写真を検索します。

画像をBase64形式でエンコードした文字列か、画像の URI が返されます。

パラメータ

successCallback : Function<CameraResult> 画像を取得出来た場合にCallbackされます。
errorCallback : Function 画像を取得出来なかった場合にCallbackされます。
option : CameraOptions 画像取得する際のオプション項目です。

Return

void

サンプルコード

//カメラ撮影base64で取得
function getPicture1(mode){
    var options = {
        quality: 70,
        destinationType: applican.camera.DestinationType.DATA_URL,
        sourceType: applican.camera.PictureSourceType.CAMERA,
        encodingType: applican.camera.EncodingType.JPEG,
        targetWidth:400,
        targetHeight:400
    };
    applican.camera.getPicture(getPicture1_getPictureSuccess, getPicture1_getPictureError, options);
}
function getPicture1_getPictureSuccess(res){
    var dump = "getPicture1_getPictureSuccess\n";
    dump += "result:"+res+"\n";
    document.getElementById("dumpAreaCamera2").value =dump;

    var image = document.getElementById('myImage');
    image.src = "data:image/jpeg;base64," + res;
}
function getPicture1_getPictureError(){
    var dump = "getPicture1_getPictureError\n";
    document.getElementById("dumpAreaCamera2").value =dump;
}

//カメラ撮影パスで取得
function getPicture2(mode){
    var options = {
        quality: 70,
        destinationType: applican.camera.DestinationType.FILE_URI,
        sourceType: applican.camera.PictureSourceType.CAMERA,
        encodingType: applican.camera.EncodingType.JPEG,
        targetWidth:600,
        targetHeight:600,
        saveToPhotoAlbum:false,
        correctOrientation:true,
        allowEdit:false
    };
    applican.camera.getPicture(getPicture2_getPictureSuccess, getPicture2_getPictureError, options);
}
function getPicture2_getPictureSuccess(res){
    var dump = "getPicture2_getPictureSuccess\n";
    dump += "result:"+res+"\n";
    document.getElementById("dumpAreaCamera2").value =dump;

    var image = document.getElementById('myImage');
    image.src = res;
}
function getPicture2_getPictureError(){
    var dump = "getPicture2_getPictureError\n";
    document.getElementById("dumpAreaCamera2").value =dump;
}

//ライブラリから画像取得 base64で取得
function getPicture3(mode){
    var options = {
        quality: 70,
        destinationType: applican.camera.DestinationType.DATA_URL,
        sourceType: applican.camera.PictureSourceType.PHOTOLIBRARY,
        encodingType: applican.camera.EncodingType.JPEG,
        targetWidth:200,
        targetHeight:200,
        saveToPhotoAlbum:false,
        correctOrientation:true,
        allowEdit:true,
        mediaType:applican.camera.MediaType.PICTURE
    };
    applican.camera.getPicture(getPicture3_getPictureSuccess, getPicture3_getPictureError, options);
}
function getPicture3_getPictureSuccess(res){
    var dump = "getPicture3_getPictureSuccess\n";
    dump += "result:"+res+"\n";
    document.getElementById("dumpAreaCamera2").value =dump;

    var image = document.getElementById('myImage');
    image.src = "data:image/jpeg;base64," + res;
}
function getPicture3_getPictureError(){
    var dump = "getPicture3_getPictureError\n";
    document.getElementById("dumpAreaCamera2").value =dump;
}

cleanup

メソッド説明

cleanup(Function successCallback, Function errorCallback)

一時ディレクトリに保存された画像ファイルを削除します。

パラメータ

successCallback : Function 画像ファイルを削除出来た場合にCallbackされます。
errorCallback : Function 画像ファイルを削除出来なかった場合にCallbackされます。

Return

void

サンプルコード

//カメラ画像クリーンアップ
function cleanupPicture(){
    applican.camera.cleanup(cleanupPictureSuccess, cleanupPictureError);
}
function cleanupPictureSuccess(){
    var dump = "cleanupPictureSuccess\n";
    document.getElementById("dumpAreaCamera2").value =dump;
}
function cleanupPictureError(message){
    var dump = "cleanupPictureError\n";
    dump += "message:"+message;
    document.getElementById("dumpAreaCamera2").value =dump;
}

saveToPhotoAlbum

メソッド説明

saveToPhotoAlbum(String fileStr, Function successCallback, Function errorCallback)

Base64形式の文字列、又はファイルのパスを渡して、端末のライブラリへ画像を保存する機能です。
ファイルパスを指定する場合は、一番目の引数を「file://」で始めます。そうでない場合はbase64形式と認識します。

パラメータ

fileStr : String Base64形式の文字列、又はファイルのパス
successCallback : Function 成功時にCallbackされる引数はありません。
errorCallback : Function 失敗時にエラー内容の文字列がCallbackされます。

Return

void

サンプルコード

//base64形式で指定する場合
var imageData = "base64 string data....";

//ファイルパスで指定する場合
var imageData = "file://....";

applican.camera.saveToPhotoAlbum(imageData, saveToPhotoAlbumSuccess, saveToPhotoAlbumError);

function saveToPhotoAlbumSuccess(){
	alert('Success');
}
function saveToPhotoAlbumError(message){
	alert(message);
}

補足

FileAPIでダウンロードした画像のパスを引数に渡してライブラリに保存することも可能です。

light

メソッド説明

light(boolean flag)

ライトを制御できます。

パラメータ

flag : boolean 引数にtrueを渡すと点灯、falseを渡すと消灯します。

Return

void

サンプルコード

applican.camera.light(true);

requestPermission

メソッド説明

requestPermission(Function successCallback, Function errorCallback)

ブラウザからカメラを呼び出すための権限をリクエストできます。

パラメータ

successCallback : Function 成功時にCallbackされる引数はありません。
errorCallback : Function 失敗時にエラー内容の文字列がCallbackされます。

Return

void

サンプルコード

// カメラ許可要求
applican.camera.requestPermission(requestPermissionSuccess, requestPermissionError);

// カメラ許可要求成功時のCallback処理
function requestPermissionSuccess() {
	var dump = "要求成功\n";
	alert(dump);
}

// カメラ許可要求取得失敗時のCallback処理
function requestPermissionError(message) {
	var dump = "要求失敗\n";
	dump += "message:" + message;
	alert(dump);
}