TWRPは2.3.2.0からAndroid 4.2に対応させていて、今のところ特に問題もなく使用できています。
Android 4.2ではマルチユーザー機能が搭載されたことによって、ユーザーのデータが保存されるフォルダのパスが/data/mediaから/data/media/0に変わりました。
2.3.1.0以前のTWRPはAndroid 4.2に非対応のバージョンなので、リカバリモードに入ってバックアップしていたファイルを復元する際に/data/media/TWRPを参照します。
ところが、実際はAndroid 4.2では/data/media/0/TWRPにバックアップファイルが移動していて/data/media/TWRPには何もない状態になるので、復元するバックアップがないという表示になります。
ですので、2.3.1.0以前のTWRPを使ってAndroid 4.2から以前バックアップしていた状態に戻すには、/data/media/0/TWRP以下のファイルを/data/media/TWRPに移動する必要があるという問題があります。
上記の問題についてはAndroid 4.2におけるsdcard(内部ストレージ)の仕様変更についてのまとめ。とAndroid 4.2のアップデート後に、今まではあった内部ストレージのフォルダやファイルが消えてアプリのデータ復元などができなくなった時の対処法。を参照してください。
TWRP 2.3.2.1では上記の問題を解決しており、バックアップファイルのパスを/data/media/0/TWRPに修正しているため、/data/media/0/TWRP以下のファイルを/data/media/TWRPに移動する必要がなくなりました。
今後Android 4.2のストックROMやカスタムROMを導入する予定であれば導入しておくことをおすすめします。
2.3.1.0以前のTWRPで、Android 4.2のストックROMを導入したNexus 7やGalaxy Nexus(SC-04D)のwipe data(Factory Reset)を実施します。
すると、/data/mediaの中に0フォルダが生成され、/data/media/0に/data/mediaのファイルやフォルダがまるごと移動します。
次は、/data/media/0がある状態で、更にTWRPからWipe⇒Factory Resetを実施します。
すると、/data/media/0の中にまた0フォルダが生成され、/data/media/0/0に/data/media/0のファイルやフォルダがまるごと移動します。
つまりAndroid 4.2に未対応のバージョン2.3.1.0以前のTWRPでは、Factory Resetをした回数だけ0フォルダがより深い階層に生成されていくバグがあります。
このバグは、/sdcard(/data/media)内のデータを残したままFactory Resetを実施することが原因で起こるとのことです。
詳しくは、Android 4.2 Updates, Multi-User, and TWRPで触れられています。
まず1回目のFactory Resetです。0フォルダが生成されています。
0フォルダをタップすると・・・
![twrp0folderissue1](https://androidlover.net/wp-content/uploads/twrp0folderissue1-187x300.png)
/sdcardに保存されていたファイル郡が/sdcard/0に移動しています。
![twrp0folderissue2](https://androidlover.net/wp-content/uploads/twrp0folderissue2-187x300.png)
更にFactory Resetを実施してみて、再度フォルダを確認してみます。0フォルダをタップします。
![twrp0folderissue3](https://androidlover.net/wp-content/uploads/twrp0folderissue3-187x300.png)
/sdcard/0の中に、更に0フォルダが生成されています。このフォルダをタップすると・・・
![twrp0folderissue4](https://androidlover.net/wp-content/uploads/twrp0folderissue4-187x300.png)
元は/sdcardにあったファイル群が、/sdcard/0/0に移動してしまっています。
![twrp0folderissue5](https://androidlover.net/wp-content/uploads/twrp0folderissue5-187x300.png)
TWRP 2.3.2.1では、上記のようなバグは起こらずAndroid 4.2におけるsdcard(内部ストレージ)の仕様変更についてのまとめ。と同じように、/sdcard内に0フォルダが作られることもなく、正常に動作するようになっています。
TWRP 2.3.2.1をインストールするために、まずGooManagerをインストールします。
インストール手順も上記記事と同じですが、再度触れておきます。
まず、GooManagerを起動するとスーパーユーザーリクエストが表示されるので「許可」をタップします。
![twrp0folderissue6](https://androidlover.net/wp-content/uploads/twrp0folderissue6-187x300.png)
画面右上のメニューアイコンをタップします。
![twrp0folderissue7](https://androidlover.net/wp-content/uploads/twrp0folderissue7-187x300.png)
Install OpenRecoveryScriptをタップします。
![twrp0folderissue8](https://androidlover.net/wp-content/uploads/twrp0folderissue8-187x300.png)
TWRPのインストールをしていいか尋ねてくるので「Yes」をタップします。
![twrp0folderissue9](https://androidlover.net/wp-content/uploads/twrp0folderissue9-187x300.png)
TWRPのバージョン(2.3.2.1)が表示されるので、間違いなければ「Yes」をタップします。
![twrp0folderissue11](https://androidlover.net/wp-content/uploads/twrp0folderissue11-187x300.png)
TWRPのダウンロードが始まります。まずは10秒待ちます。
![twrp0folderissue12](https://androidlover.net/wp-content/uploads/twrp0folderissue12-187x300.png)
10秒経つと、ダウンロードが始まります。しばらく待ちましょう。
![twrp0folderissue13](https://androidlover.net/wp-content/uploads/twrp0folderissue13-187x300.png)
ダウンロードが完了したら、インストールも実施してくれます。「Recovery has been installed!」と表示されれば、TWRP 2.3.2.1のインストールは完了です。
![twrp0folderissue14](https://androidlover.net/wp-content/uploads/twrp0folderissue14-187x300.png)
GooManagerからTWRPを直接起動してみます。Reboot recoveryをタップします。
![twrp0folderissue15](https://androidlover.net/wp-content/uploads/twrp0folderissue15-187x300.png)
リカバリモードに入るかどうか尋ねてくるので「Yes」をタップします。
![twrp0folderissue16](https://androidlover.net/wp-content/uploads/twrp0folderissue16-187x300.png)
TWRP 2.3.2.1が起動するので、試しにWipe⇒Factory Resetを選んでwipe dataした後、Reboot⇒Systemをタップして再起動してみてください。
/sdcard内に0フォルダも生成されず、Android 4.2でも問題なく使うことができます。
![twrp0folderissue17](https://androidlover.net/wp-content/uploads/twrp0folderissue17-187x300.png)
Android 4.2に対応&Wipe data(Factory Reset)時に/sdcard内で無限に0フォルダが生成されるバグを修正されたTWRP 2.3.2.1については以上です。