【2013-9-11 追記】iOS 6 では、Safari やその他今までは対応が無かったブラウザで写真アプリ内の画像のアップロードには対応したようです。その場で写真を撮影するというのもOKです。ファイルはまだダメです。【2013-9-11 追記ここまで】
iPad/iPhone の場合、Webフォームに付けた <input type=”file” /> フィールドがグレーアウトされてしまってファイルアップロードができない。これは iOS の方針だとかで、デフォルトでインストールされている Safari の他、Opera や iLunascape、Sleipnir などでも同じ現象になる。
しばらく方法を探していて、画像なら PickUP というネイティブプラグインを使う方法がある事を見つけたのだが、
(日本語での参考記事:Picup を利用して Rails アプリに iPhone / iPad から画像をアップロードする)
- 画像以外に対応できない。
- うっかり開発者のサーバにテストでアップすると画像が消せない。
という問題があり、特に2番の方は恐ろしくお客様などにはご紹介できないので、別の方法を探していた。
ら、ありました。
Special Thanks to ブログ記事:How To Fix iPhone/iPad Mobile Safari Greyed out and Disabled File Upload Control
iCab Mobile という iPad/iPhone 用ブラウザがファイルアップロードに対応していました。有料ですが 170円なので、業務用Webアプリを iPad/iPhone でちょいちょい使う方にはおそらく価値ありと思います。ブラウザとしても高機能で、インターフェースも日本語化されています。先ごろ公開された iOS 5.1 でもちゃんと動きました。
iPad/iPhone で iCab Mobile を使って画像をアップロードする方法
画像のアップロードは簡単。有効になっている「選択」ボタンをタップすると「ダウンロード」というパネルがまず開くので、画面下の「写真」というアイコンをタップすると切り替え表示される画像選択パネルから画像を選ぶだけです。
iPad/iPhone で iCab Mobile を使ってファイルをアップロードする方法
画像以外のファイルをアップロードするには、まず iCab にファイルの場所を知らせなければなりません。このために、一旦 Web経由でダウンロードするか、メールで受け取るというステップが必要になります。iPad/iPhone でファイルを作成するというのはほとんど考えられないからまあいいのかな?
Web I/F 経由(Webメールなど)でダウンロードしたものは、iCab Mobile のダウンロードパネル(右上の下向き矢印アイコン)内に自動的に登録されていきます。
メールで受け取ったものは、メール画面でファイルアイコンを長押しすると「次の方法で開く」→「iCabMobile」が出るので、これを選択。
iCab Mobile の画面にファイルが表示されている状態で1回ダウンロードアイコンをタップすると、ダウンロードされたファイルとして登録されます。この時、URL欄には「オフライン…」と表示されています。
アップロードする際は、「選択」ボタンをタップして開いた「ダウンロード」パネルからアップロードしたいファイルを選択します。
iCab Mobile を使ってファイルをアップロードする際の注意事項
日本語名のファイルは、Webフォームのページがファイル名としてUTF-8 エンコーディングを受け取れるようになっていないと文字化けします。このため、Shift_JIS や EUC-JP のフォームの場合は事前にダウンロードパネルからファイル名を半角アルファベットのものに変更しておきます。
ピンバック: iPad/iPhone から画像/ファイルをアップロードする方法 | ミヤビッチの穴 | TextMagic
ピンバック: 準備中 | kaleidoscope