SDカードを内蔵メモリの一部にする

 mashmallowにしてカメラをCameraICS+を常用するようになったが、データを外部SDカードに保存できない、たとえ保存できてもsyncthingがシンクロナイズできないので内蔵SDカードに保存するようになった。データはどんどん増えて、ついにアプリのアップデートができなくなった。
 いったんは古いデータを削除してアップデートしたが、やはり根本的対策をということで、mashmallowの新機能であるSDカードの内蔵カード化を実行。64GBのmicroSDXCをtwotopで購入してきた。

 作業はあちこちのサイトに載っているが、xubuntuマシンからでもまったく同様にadb shellでできる。mixedにして、25%を外部SDカードにして、残りを内蔵化した。

 いろいろと試行錯誤はしたが、内蔵ストレージの下のメニューからデータを移行させれば画像とか動画とかのデータが仮装内蔵メモリに移動し、以降の保存もそこになるもよう。ただ、ESファイルエクスプローラで見た感じは変わらない。どのファイルがどの物理的ディスクにあるかがわからない。

 もうちょっと検証しようと、ESエクスプローラでホームフォルダーを開いたら/storage/emulated/0/が表示される。

 ところがひとつ下の/strage/emullated/を開くと空フォルダと表示される。なんか複雑なことやってそう。

ならばと、SDカードをxubuntuのPCに接続してGpartedで見てみた。ext4あたりのフォーマットなんだろうなと思っていたが、はずれ。

で、アプリの動作等の検証。

 CameraICS+の写真がSDカードに移動され、新しい写真も同じディレクトリにあることを確認した。
 しかしsyncthingがエラーを出している。「このバージョンのAndroidでは書き込めまへんのや」とのメッセージが表示される。中途半端に外部SDカード扱いが残っている。一瞬絶望感が襲ってきたが、以前調べたものを思い出した。

This means, Syncthing can only read from SD Card and you have to manually create the .stfolder file.

 ESファイルエクスプローラから該当ディレクトリに空の.stfolderを作成したらシンクロナイズるようになった。これでひとまず解決。