LoginSignup
2
3

More than 5 years have passed since last update.

FileAPIでAndroidのフォトライブラリから画像が読み込めない問題

Last updated at Posted at 2016-06-08

file.typeを確認

今回のケースは、Android端末で
・カメラから読み込んだ画像はfile.type=image/jpeg
・フォトライブラリから読み込んだ画像はfile.type=null

という状態だったので、強制的にfile.typeを付けることで解決

var file    = document.querySelector('input[type=file]').files[0];
var reader  = new FileReader();

reader.onloadend = function (e) {
    // file.apiの処理

    // 画像生成
    var img = new Image();

    img.onload = function(){

    }

    if (file.type.indexOf('image') >= 0) {

        // 画像が入っている場合は 0が返ってくる
        // そのまま使用
        img.src = reader.result;

    } else {

        // nullの場合は -1が返ってくる
        // 強制的にfile.typeを付ける
        var base64 = reader.result.replace('data:', '');
        var newSrc = "data:image/jpeg;" + base64;
        img.src = newSrc;

    }

}
2
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
3