アプリケーションでカメラで写真を撮り、このコードをユーザーに表示しようとしています。 phonegap api に完全に従おうとしましたが、 phonegap の例で自分のコードを使用して変更すると機能しません。 phonegap の例で使用する関数名を指定し、サンプル スクリプトを実行すると、完全に正常に動作します。私が使用しているコードは
function gotoPicture() {
if (/Android/.test(navigator.userAgent)) {
try {
alert("test2");
navigator.camera.getPicture(setImage,onError,{sourceType: Camera.PictureSourceType.CAMERA, destinationType: Camera.DestinationType.DATA_URL,quality:60});
} //try
catch (e) {
alert("onerror")
alert(e.Message);//test
} //catch
} //if
else {
$.mobile.changePage('#expense-page-picture');
} //else
} //gotoPicture
setImage と onError のコードは次のとおりです。
function onError(error) {
alert("test1")
navigator.notification.alert(error, null, "Error");
}
function setImage(imageData) {
alert("test3")
artificialReceipt = imageData;
/* document.getElementById('expense-form-picture').src = 'data:image/jpg;base64,' + artificialReceipt; */
document.getElementById('expense-form-picture').src = artificialReceipt; // with cordova 1.5.0, it seems that imageData is a file location
$.mobile.changePage('#expense-page-picture');
}
キャッチにあるonerrorアラートを受け取ります test1アラートを受け取りません また、onDeviceReadyを追加してみて、それが違いを生むかどうかを確認します コードの上にこれを追加する前にそれを試したと思いますが、何も起こりませんでした
document.addEventListener("deviceready",onDeviceReady,false);
function onDeviceReady()
{
alert("i am ready");
}
準備ができているというアラートを受け取ったことはありません。