applican

マイページに戻る

Camera

写真を撮ります。

  • デバイスのカメラで写真を撮る / アルバム内にある写真を検索する 【 getPicture 】
  • 一時ディレクトリに保存された画像ファイルを削除する 【 cleanup 】
  • Base64形式の文字列、又はファイルのパスを渡して端末のライブラリへ画像を保存する 【 saveToPhotoAlbum 】

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

サンプル 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されます。

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形式の文字列、又はファイルのパスを渡して、端末のライブラリへ画像を保存する機能です。

パラメータ

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

Return

void

サンプルコード

var imageData = "base64 string data....";
applican.camera.saveToPhotoAlbum(imageData, saveToPhotoAlbumSuccess, saveToPhotoAlbumError);

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

補足

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