フォンギャップ初心者です。phonegapの公式チュートリアルを使用して、AndroidでSDカードからファイルを読み取ってイメージしようとしています。問題は、画像が表示されず、代わりに疑問符が表示されることです。
私のコード:
var pictureSource;
var destinationType;
document.addEventListener("deviceready",onDeviceReady,false);
function onDeviceReady(){
document.getElementById("test").innerHTML="onready about to request";
window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, gotFS, onFail);}
function onFail(message) {
alert('Failed because: ' + message);
}
function gotFS(fileSystem) {
fileSystem.root.getFile("1.jpg", null, gotFileEntry, fail);
}
function gotFileEntry(fileEntry) {
fileEntry.file(gotFile, fail);
}
function gotFile(file){
readDataUrl(file);
}
function readDataUrl(file) {
var reader = new FileReader();
reader.onloadend = function(evt) {
console.log("Read as data URL");
console.log(evt.target.result);
};
document.getElementById("smallImage").style.display='block';
document.getElementById("smallImage").src = reader.readAsDataURL(file);
}
function fail(evt) {
console.log(evt.target.error.code);
}
</script>
編集: API 16 と min-sdk8 を使用すると、「smallImage」は onphotodatasuccess で正常に動作するタグです。したがって、ここではカメラは問題ではありません。カメラ機能に関連するものはすべて問題ありません。SDカードからの読み取りは、割り当てステートメントで問題を引き起こしています。
document.getElementById("smallImage").src = reader.readAsDataURL(ファイル); これを追加すると、文字列と不明なクロム エラー -6 が表示されます。それ以外の場合は、通常の画像変換文字列が表示されます。ありがとう