Android 4.2でストレージの仕様が変更されている

Android 4.2で追加されたマルチユーザー機能の関係からかストレージの仕様変更がされています。

マルチユーザー機能を使えば、各ユーザーごとにアプリのインストール・写真を保存・ファイルのダウンロードをしたりすることができます。この為にユーザーごとのフォルダ管理をする必要があるので仕様変更されたようです。

Galaxy NexusをファクトリーイメージでAndroid 4.2にアップデートしたので、IMEIをバックアップしとこうとefs.imgを内部ストレージ以下にadbでコピーしたのですが、PCからsdcard(内部ストレージ)を見てもファイルがありませんでした。

「adbコマンドを間違った?」と思い再度adbを実行しても同じ。
/data/フォルダ内のmedia/0を確認したらちゃんとコピーされていました。
調べてみたらマルチユーザー機能で複数ユーザー用にストレージ仕様が変更されているという事でした。

ルート以下のフォルダ構成ですが、デフォルトが「/data/media/0」以下に格納されるようです。
各ユーザーはデフォルトが「/media/0」となり以降はフォルダの数字が10,20,30・・・と2ケタの数字で増えていきます。

ただしPCとUSBデバッグモードで接続した時は「/sdcard」となり今までどうりルート以下のsdcardフォルダしか見る事ができません。まんまとヤラレました・・・
このsdcardフォルダはデフォルトユーザーと紐付けされているようでmedia/0に内容がコピーされるようです。

現状ではこのストレージ仕様の変更に対応していないアプリがあるので/data/media/からしか参照されない場合もあるようです。
今後Android 4.2のマルチユーザーに対応していけばきちんとユーザーフォルダを参照するようになると思います。

普通にマルチユーザー機能を利用する場合は特に気にしなくても使えますが、Rootedなユーザーは各ユーザーのフォルダ構成を把握しておいたほうが良いと思います。

Galaxy Nexus
aotanをフォローする
Gadget Note

コメント

タイトルとURLをコピーしました