fc2ブログ

    Android4.4ではSDカードに保存できない件


    ■Android4.4ではSDカードにファイルが保存できない件

    画像の保存先なんかで、外部SDカードをよく利用しているんですが、Android4.4では外部SDカードの利用が制限されているっぽいです。

    参考:
    KitKat端末では今後アプリからMicro SDカードへの書き込みができくなる模様
    え?じゃあどうすんの?って話ですが…





    どうしよう( ;´Д`)

    一応、SDカード内のアプリ固有のディレクトリは取得できるようです。
    [SD\Android\data\パッケージ名\] みたいな感じで。

    が、この方法だと今までみたいにフォルダを選択して、みたいなことができなくなっちゃいますかね。(そのアプリ内でフォルダを作れば可能だと思いますが)

    参考:
    AndroidはKitKat以降アプリからSDカードへの書き込み不可に?

    たぶん、上記手法で修正を行ったと思われる例↓(GALAPAGOS STORE)
    Android™4.4 に関するご注意事項

    なんせまだ4.4の実機もいじってないんで検証もできてない状態です。
    ちょっとしばらく調査必要ですね

    スポンサーサイト








    AndroidでSDカードのpathを取得する



    ■AndroidでSDカードのpathを取得する

    経緯:
    いままでは、「AndroidでSDカードを呼び出す」の方法で、SDカードのpathを取得していた。

    時と共に、「SDカードに保存できないけどバカなの?」という励ましを頂くようになる。

    知らんがな(・ω・´)

    というわけにもいかないので調査開始。
    いやほんと、手持ちの3機種だと動くから不具合箇所がわかんないんですよ、誇張抜きでw

    参考コード発見:【android】 SDカードのpathを取得する方法

    自分メモ用に、載せておきます。
    参考にする際は、元サイトも見てくださいね。非常にわかりやすく解説してくれています。
    APIレベルが9以降で指定してるので注意。

    なので、上記方法でnullが返ってきてしまう場合は、以前の方法と組み合わせるといいと思います。


    しかし、機種が増えるたびに動かくなるのも、いい加減嫌になってきたなぁ・・・w







    AndroidでSDカードを呼び出す



    ■AndroidでSDカードを呼び出す


    ※現在はこちらの記事を優先的に参考にしてください。API8以下の時に、下記と組み合わせるといいと思います。


    ------------------------------------------------------------------------
    以前、「AndroidでSDカードに画像を保存」という記事で、"Environment.getExternalStorageDirectory()"を使用した方法でSDカードを利用するサンプルを書きました。

    が、この方法では正確に外部SDカードのパスが取得できない機種があるらしい
    ということで、そういった機種に対応する記述が↓


    ※参考サイト:http://inujirushi123.blog.fc2.com/blog-entry-30.html

    内部SDと外部SDを持っている機種があるので、それぞれ判別してパスを取得しましょう、という内容です。
    参考サイトにも書いてある通り、実は上記方法では完全に対応しきれていません。
    ですが、Environment.getExternalStorageDirectory()を使っていて、どうにも不具合の出る機種があったら、とりあえずこんな方法で対処してみるといいんじゃないでしょうか。

    なにせ実機検証できてないからな~、だれか余ったスマホください(笑)





    テーマ : android
    ジャンル : コンピュータ

    カテゴリ
    検索フォーム
    メールフォーム

    名前:
    メール:
    件名:
    本文:

    お世話になっている書籍達




















    リンク



    最新記事
    月別アーカイブ
    最新コメント
    プロフィール

    yukinori110

    Author:yukinori110
    Androidってなに?Javaってなに?というレベルから勉強してます。