ソラセルのブログ

定期的に分かりやすくなるように修正します

FireタブレットでmicroSDカードを内部用と外部用に分けて利用する

追記まだ検証中なのですが、内部用として設定している状態の時に、アプリストアからアプリをインストールできない場合がありました

内部用microSDに移していたデータを1度内部ストレージに移動させたら、通常通りアプリをインストールできるようになりました。その後、再び内部用microSDにデータを移動させてみましたが、問題なく新しいアプリもインストールできるようになりました

 

はじめましてソラセルです

今回はFire 7(第9世代)とFire HD 8(第8世代)に搭載されているFire OS 6で利用できるようになったmicroSDカードを外部ストレージではなく内部ストレージとして利用できる機能を試してみました

そしてただmicroSDを全て内部ストレージ用にするのではなく、利用しやすいように内部用と外部用に分けました

AndoroidでいうところのAdoptable Storageと呼ばれるものです。Fire OSはAndroidがベースになっているのでAndoroidと同様のやり方で進めます

今回、紹介する方法はパソコンが必要になります

 

 

はじめに

今までアプリは内部ストレージにしか保存できないため、内部ストレージが少ない端末では、たくさんのアプリを入れることはできませんでした

それがこの機能を使うことでmicroSDを内部ストレージの1部として利用できるようになり、アプリもmicroSD内にも保存することができるようになりました

とても便利な機能ではあるのですが、注意点もあります

内部ストレージとしたmicroSDは利用している間はその端末専用になります。つまりmicroSDを端末から外して、パソコンから写真や音楽を入れたりなどの由なデータのやり取りが出来なくなります

また全てのアプリを保存できるわけではないのと、アプリによっては起動が遅くなったり、動作が不安定になる可能性もあるようです

microSDカードの性能の良さもアプリに動作の速度に関わってきます

 

Fireタブレットに関していうと、プライムビデオなどAmazonのコンテンツは最初から外部ストレージに保存できますので、基本的にはmicroSDは外部ストレージのまま利用するのが良いと思います

なのですが、今回はせっかくある機能なので実際に試してみることにしました

Fire OS 6ではmicroSDカードを入れたときに内部用として利用するか、外部用として利用するか選択することになります

このとき内部用を選択することで内部ストレージとして利用できるのですが、この方法ではmicroSDが全て内部用のストレージになってしまいます

今回は内部用と外部用に分けて設定し、両方の良さを活かして利用したいので、別の方法で行いました

注意

今回、紹介する内容はパソコンの知識があまりないと難しいです

また場合によってはパソコンやタブレットmicroSDカードに不具合が出る可能性もあります。そのため、実践する場合は自己責任でお願いします

全体の流れ

  1. パソコンでadbコマンドを利用できるようにする
  2. Fireタブレットの開発者向けオプションを有効にし、USBデバッグをオンにする
  3. パソコンとFireタブレットを繋ぎ、パソコンからadbコマンドを実行する

必要なもの

microSDカードは内部ストレージとして設定する際に中のデータが削除されますので空のものを用意するか、中のデータは移動しておきましょう。またデータの転送速度が遅いものは内部用として利用できません

内蔵ストレージとしての速度が期待できる規格のA1(Application Performance Class 1)に対応しているmicroSDカードを利用すると良さそうです

AmazonでA1対応のmicroSDを探す

 私はA1よりもさらに高速らしいA2対応のmicroSDカードにしてみました


SanDisk ( サンディスク ) 64GB Extreme microSDXC SDSQXA2-064G-GN6MA [ 海外パッケージ ]

パソコンでadbコマンドを利用できるようにする

adb(Android Debug Bridge)とはAndroid端末と通信できるコマンドツールです

私もちゃんと理解できていませんが、私なりに説明しますと

通常、パソコンやタブレットはマウスや手で操作します。そうした操作以外にコマンドと呼ばれる命令文を打ち込んで、パソコンを操作する方法があります

通常の方法ではできない操作や設定がコマンドを打つことで出来るようになります

そのため間違ったコマンドを打ち込むと意図しないトラブルが起きる可能性もあります

 

つまりadbコマンドを利用できるようにするとは、自分のパソコンでFireタブレットをコマンドで操作できる状態にするということです

まずは下記のサイトでSDK Platform Toolsをダウンロードします

SDK Platform Tools release notes  |  Android Developers

Androidアプリの開発ツールの1つです

f:id:taiyouden:20190719213100p:plain

私はWindowsなので赤く丸したところからダウンロードします

ダウンロードしたら圧縮されてるので解凍して、出てきた「platform-tools」というフォルダを分かりやすい場所に配置します。後でフォルダの場所を設定する必要があるからです

私はCドライブ直下に移動しました

 

ダウンロードしただけではまだadbコマンドは利用できません

次にadbコマンドが利用できるようにPathを通します。Pathを通すとはadbコマンドが利用できるように、ダウンロードしたSDK Platform Toolsをパソコンに認識してもらう、そんなイメージになります

コントロールパネルを起動して、システムとセキュリティ、システム、システムの詳細設定と進み、詳細設定の環境変数をクリックします

f:id:taiyouden:20190721204419p:plain
f:id:taiyouden:20190721204726p:plain
f:id:taiyouden:20190721204933p:plain
f:id:taiyouden:20190719220635p:plain

下側のシステム環境変数の中にあるPathを選択して、編集をクリックします

f:id:taiyouden:20190721205520p:plain

この中にplatform-toolsのフォルダの場所を追加します

新規からフォルダの場所を直接文字で入力するか、新規をクリックしてから参照で先ほどのフォルダを選択するかです

Cドライブ直下にフォルダを置いた場合は左側赤丸のように表示されます

追加できたらOKをクリックです

別の場所を編集したり削除したりしないように注意です!間違えて他の場所を編集してしまったときは右下のキャンセルをクリックしてください

f:id:taiyouden:20190719220949p:plain

これで、AndoroidデバイスやFireタブレットをコマンドで操作できるようになりました

コマンドを打つときはコマンドプロンプトと呼ばれるものを利用します

コマンドプロンプトとはコマンドで操作、設定をするためのパソコンにもともと備わっているツールです

コマンドプロンプトを起動するには、デスクトップ左下の検索のところでcmdと入力してEnterか、スタートを右クリック、ファイル名を指定して実行、名前のところにcmdと入力してOKで起動できます

f:id:taiyouden:20190721205823p:plain

 ここにコマンドを打ち込むことで様々な操作や設定ができます

初めにadbコマンドが利用できるようになったか確認します

キーボードで「adb」と入力しEnterキーを押します

f:id:taiyouden:20190721205914p:plain

わーっとたくさん文字が出てきたら設定できています

f:id:taiyouden:20190721210131p:plain

もし認識されていませんと出てきたら、Pathを通す設定が間違っています

f:id:taiyouden:20190721210220p:plain

 認識されていればパソコン側の準備は完了です

Fireタブレットの開発者向けオプションを有効にする

次はFireタブレット側の準備です

microSDカードもFireタブレットに挿しておきましょう

microSDの規格等が書いてある面が見える向きで挿入します、挿入するとセットアップが表示されます。この時、内部ではなく外部ストレージとして設定しておきます

f:id:taiyouden:20190721150723j:plain
f:id:taiyouden:20190721150839p:plain

 

microSDカードを挿入したら、adbコマンドが利用できるようにFireタブレットの開発者向けオプションを有効にします

開発者向けオプションはある動作をしないと表示されないようになっています

 

Fireタブレットの設定からデバイスオプション、Fireタブレットのバージョン情報に進みます。私の場合は設定後なので、すでにバージョン情報の下に開発者向けオプションが追加されています 

f:id:taiyouden:20190721142058p:plain
f:id:taiyouden:20190721142051p:plain

シリアル番号の上で連続で何回もタップします

これをすることで1つ前の画像にのように、デバイスオプションの中に開発者向けオプションが表示されるようになります

f:id:taiyouden:20190721143857p:plain

続いてデバイスオプションから有効にした開発者向けオプションに進み、開発者向けオプションをオンにします

そして少しスクロールしたところにあるUSBデバッグをオンにします

USBデバッグをオンにすることで、パソコンからのコマンド操作が有効になります

f:id:taiyouden:20190721143114p:plain
f:id:taiyouden:20190721144043p:plain

これでFireタブレット側の準備も完了しました

パソコンとFireタブレットを繋ぎ、パソコンからadbコマンドを実行する

パソコンとFireタブレットをMTP接続

Fireタブレットとパソコンを繋ぎます。Fireタブレットで充電に使っているUSBケーブルで大丈夫です

繋げるとFireタブレットにこんな表示がされますのでOKをタップします

f:id:taiyouden:20190721210754p:plain

Fireタブレットとパソコンを繋げただけではただ充電するだけになるので、データ通信が出来るように設定を変更します

Fireタブレットの開発者向けオプションの真ん中あたりにあるUSB設定の選択をタップし、充電中になってるのをMTP接続にします

f:id:taiyouden:20190721152441p:plain
f:id:taiyouden:20190721152445p:plain

これでパソコンとFireタブレットでデータのやり取りが出来るようになりました

パソコンからadbコマンドを実行

ついにパソコンのコマンドプロンプトからFireタブレットを操作します

コマンド実行するときは他のAndroid端末は繋げないようにします

Fireタブレットをパソコンに繋げたときか、コマンドプロンプトで実際にコマンドを実行するときにFireタブレットの画面にUSBデバッグを許可しますか?表示されますのでOKを選択してください

f:id:taiyouden:20190721153811p:plain

練習がてらコマンドプロンプトで「adb devices」と入力しEnterを押してみましょう

これはパソコンに接続されているAndoroidデバイスを表示するコマンドです

adbとdevicesの間は半角スペースです

f:id:taiyouden:20190721154350p:plain

もし「List of devices attached」と表示されたらFireタブレットが認識されていないので、MTP接続になっているか確認しましょう

またデバイス名が表示されず、Fireタブレットの画面の方にUSBデバッグを許可しますか?と表示されていたらOKにして、もう1度「adb devices」とコマンドを入力します

 

続いて「adb shell」と入力して実行します

Fireタブレットをコマンド操作する状態にするコマンドです

f:id:taiyouden:20190721162437p:plain

次に「sm list-disks」と入力して実行します

端末内のmicroSDを特定するコマンドです。私の場合は「disk:179,160」と表示されました。これはmicroSDによって変わり、microSDの識別番号のような感じです

f:id:taiyouden:20190721162326p:plain

いよいよmicroSDを内部と外部に分けて設定します

「sm partition disk:179,160 mixed 75」

disk:の数字の部分はsm list-disksで表示された各自の数字を入力します

最後の「mixed」の数字はmicroSDの容量の外部ストレージとして使いたいパーセンテージを入力します

私の場合は64GBのmicroSDの75%にあたる48GBを外部ストレージ、残りの16GBを内蔵ストレージとして利用することにしたので「mixed 75」としました

半分半分であれば「mixed 50」となります

f:id:taiyouden:20190721163954p:plain

このコマンドを実行すると、Fireタブレットの画面にmicroSDカードを挿入したときの画面が表示されます。ここでまた外部ストレージとして使用を選択してください

f:id:taiyouden:20190721150839p:plain

これでmicroSDが内部用と外部用に分けて設定することが出来ました

設定が終わったら、コマンドプロンプトは閉じて、パソコンからFireタブレットを外して大丈夫です

私は外すときはFireタブレットの開発者向けオプションのUSBデバッグをオフにしてから外すようにしています。開発者向けオプションも使わないときはオフにしておくと良いと思います

 ストレージの確認

Fireタブレットの設定のストレージで確認してみます

上の方の「SDカード」が内部用、下の方の「SDカードのストレージ」が外部用として設定できているのが確認できます

f:id:taiyouden:20190721191002p:plain

利用方法

上の画像にもありますが、ストレージの設定から「データをSDカードに移動」で画像などのデータ類をmicroSDの内部用の領域に移動することができます

アプリは「SDカードにアプリを移動」で移動することができます

最初だけ自分で行う必要がありますが、それ以降は内部用microSDに保存できるものは、自動で保存されるようです

データやアプリを内部ストレージに戻したい場合

 内部用microSDに移したデータを内部ストレージに戻したい場合はストレージの設定の内部ストレージの項目のすぐ下に「データを内部ストレージに移動」と表示されるので、そこから戻すことができます

アプリの場合はストレージの設定からSDカード、アプリとゲームと進み

f:id:taiyouden:20190721195612p:plain
f:id:taiyouden:20190721195509p:plain

内部ストレージに戻したいアプリを探してタップし、アプリ情報のストレージをタップ

f:id:taiyouden:20190721195859p:plain
f:id:taiyouden:20190721200003p:plain

そのアプリのストレージ情報のCHANGEから内部ストレージに戻すことが出来ます

今回ストレージの設定から進めましたが、Fireタブレットの設定の「アプリと通知」からも目的のアプリを探して同様に移動できます

f:id:taiyouden:20190721200451p:plain
f:id:taiyouden:20190721200453p:plain

使ってみて内部用microSDに保存したアプリの起動が遅かったり不安定な場合は内部ストレージに戻すと良いでしょう

解除方法

完全に解除したい場合はストレージのSDカードを消去からmicroSDカードのデータを1度全て消すことで解除することができます

アプリは再ダウンロードすればいいですが、データ類は消えてしまうので、必要な画像やファイル、データは先に移しておきましょう

microSDを外す場合

内部用として設定した後、パソコンからデータを移すためなど、microSDカードを外したい場合は、ストレージの設定の1番下に「SDカードを取り外す」とあるのでそこをタップしてから外します

microSDカードを外した時、データを内部ストレージから内部用microSDに移している時はFireタブレットの画面に「SDカードが取り外されました」と表示され、この表示はmicroSDカードを戻すまで消えません

この表示の下に「SDカードを削除」と出ますが、ここで削除してしまうと内部用microSDとして設定したことが解除されてしまい、microSDを戻しても内部用microSDとして利用してたデータにアクセスできなくなってしまうので注意してください

アプリだけを内部用microSDでデータは内蔵ストレージであれば、この表示は出ないようです

 

また、パソコンにmicroSDカードを挿入したときに「フォーマットしないと利用できません」と表示されてもフォーマットしないでください。データが消えてしまいます

これはあくまでmicroSDカードの内部用として設定した領域に対して言っていることで、外部用の領域にファイルを入れたりすることはできます

1度、外してmicroSDを戻すとき、またSDカードの設定が表示されますが、この時も外部用として設定します

最後に

途中やり直したり、設定しなおしたりを何回も行いましたが、無事にmicroSDカードを内部用と外部用に分けて設定することができました

各項目で書きましたが、今回の設定は色々と注意しないといけない点があります

 まだ設定したばかりで、日が浅いので分かりませんが、今後、使っていて不具合が起きる可能性もあります。このまま使って不具合等が起きるか検証していきたいと思います

他のAndoroid端末ではmicroSDを内部用として設定した場合に、ストレージなどで内部ストレージの容量を見た時、もともとの内部ストレージの容量と内部用microSDの容量が足されて表示されるようですが、Fireタブレットでは違います

ファイルマネージャーアプリで見るとデータを移動させている方のストレージが内蔵ストレージとして表示されます

 

 

最初の方にも言いましたが基本的には外部ストレージとして利用する方が分かりやすくて良さそうです。ただ、どうしても内部ストレージが足りてない方には有効な設定になるかもしれません

 

だいぶ長くなってしまいました。最後まで読んでいただきありがとうございます