2012年2月24日金曜日

Android標準ブラウザ+Ajax Upload(fileuploader.js)でファイルアップロード

Androidの標準ブラウザは <input type="file" .... ファイルアップロードができるとかできないとか、色々情報があったのでとりあえず残しておくことにしました。

結論としては、できます。
(Androidのバージョンによるっぽく、エミュレーターでは2.2以上でOKでした。)

で、それじゃしょーもないので、Ajax Uploadを使ってみようと。
Ajax Uploadは <input type="file" .... を使ったファイルアップロードをajaxを使って非同期で実行できるライブラリです。

結論としては、そのままじゃ無理。

どうも、fileSizeとかsizeでファイルのサイズが取れないらしく(サイズが0とみなされる)、ファイルサイズチェックの部分でエラー判定されます。

なので、多分そのエラーチェックが呼ばれる場合に本当にサイズが0のファイルを扱うことになるのはレアケースでしょうから、無理やりサイズを入れる変数に適当な数字を入れました。
そしたら動きました。

以上です。

追記(2012/3/10)
2.2の方でもできない場合があり、ブラウザを変える(標準ブラウザ→Dolphin)とOKという報告もありました。
このエントリーをはてなブックマークに追加

0 件のコメント:

コメントを投稿