SHARP端末はSDカードへのインストールを許可していないアプリも、SDカードにインストールできる

「何をいまさら...」という話かもしれないけど、さっきまで知らなかったもので。


AndroidManifest.xml で install-location を指定しない場合は、内部ストレージにインストールされるものと思い込んでいたけど、IS11SH を使ってみるとSDカードへのインストールと移動が可能になっていてびっくり。


↓このアプリは install-location を記述していないので、「microSDに移動」ボタンは無効になっています。

ところが IS11SHには「優先インストール先」という設定項目があり、これを「microSDカード」に設定すると...

なぜか、microSDに移動」ボタンが有効になり、実際に移動できるようになります。
移動前 → 移動後


SDカードへのインストールを許可していないのに「ウィジェットが表示されない」系の問い合わせが来るのでヘンだなと思っていたら、これが原因くさい。
この設定でマーケットからアプリをインストールすると、他の端末でSDカードにインストールできなかったアプリがどんどんSDカードに入っていきます。

追記

install-location を internalOnly に設定すれば移動不可になります。


Android のリファレンスでは、install-location のデフォルトは "internalOnly" であり、"auto" か "preferExternal" を指定しない限り外部ストレージにはインストールできないと書かれているので、この前提が崩れてしまうのは SHARP 独自仕様かなと...。

追記

設定自体はAndroidに標準で備わっているが、GUIを提供しているのがSHARPのみとのことです。