PDFダウンロードが出来ない。

開発中のWEBアプリケーションで、とあるリンクをクリックするとPDFファイルをダウンロードするという機能があります。
PC、iPhoneはOKだったんですが、Androidではダウンロードしたファイルが不明なファイルとして扱われ、ビューワで開く事ができません。
ちなみに、Androidのバージョンは2.1です。XperiaとIS03で確認済み。
Xperiaの1.6だと出来てた。


原因は、サーバー側の問題で、レスポンスヘッダの指定の仕方に問題があった模様。

ダメだったコード。

サーバーサイドはjavaで組まれています。

response.setContentType("application/octet-stream");
response.setHeader("Content-disposition", "attachment;filename=\"" + getEndodedFileName(fileName) + "\"");

上手くいったコード。

String mimeType = getServlet().getServletContext().getMimeType(fileName);            
response.setContentType(mimeType);
response.setHeader("Content-disposition", "attachment;filename=\"" + getEndodedFileName(fileName) + "\"");

contentTypeの部分は実際には「application/pdf」となります。
「octet-stream」ではAndroidはPDFファイルと認識してくれないようです。