web-dev-qa-db-ja.com

Android 4.4仮想デバイスの内部ストレージはサイズ変更されません

AVD Managerを使用して新しいAndroid 4.4仮想デバイスを作成するとき、200MBを超える内部ストレージを取得できません。

512MBは、設定したい内部ストレージサイズです。

私はもう試した:

  • AVD Managerでデバイスの内部ストレージを512MBに設定します。
  • Eclipseプロジェクトの[デバッグの構成]の[ターゲット]タブで、[追加のエミュレータコマンドラインオプション]を-partition-size 512に設定します。
  • Eclipse環境設定のAndroidで、デフォルトエミュレータオプションを-partition-size 512に設定します。
  • (User)/。Android/avd /(device).avd/config.ini の下にある仮想デバイスの構成ファイルの編集
    • 次に、disk.dataPartition.sizeをdisk.dataPartition.size = 512Mに設定します
    • また、disk.dataPartition.size = 512MBに設定してみました
    • また、data.dataPartition.size = 512Mに設定してみました

これは、ARMとIntel Atom x86 CPUの両方で発生します。

ここでAndroid 3.0(ARM)に切り替えると、心のコンテンツに合わせてAVD Managerを使用してサイズを変更できます。Android 4.4?見逃したことはありますか?または回避策はありますか?

45
Someone13

エミュレータファイルシステムがext4になったので、標準のLinuxツールを使用してuserdata.imgのサイズを変更できました。

# Navigate to AVD
cd ~/.Android/avd/Nexus5
# Delete old image
rm userdata-qemu.*
# Re-size the image
resize2fs userdata.img 512M
# Start the emulator and enjoy
emulator @Nexus5

編集userdata-qemu.imgのサイズを直接変更することもできましたが、最初にe2fsckを実行する必要がありました。

 e2fsck -f userdata-qemu.img
 resize2fs userdata-qemu.img 512M
54
Frohnzie

上記の提案でさえ、Androidエミュレーターがブートロゴにハングアップする可能性があります。理由は、resize2fsは一般的には正しいが、Android =そして、それがrwモードでマウントするのを防ぎます。それはブートプロセスをハングアップさせます。

ブートログを調べると、次のようなことがわかります。

EXT4-fs error (device mtdblock1): ext4_mb_generate_buddy:741: group 2, 32366 clusters in bitmap, 32370 in Gd

イベントe2fsckは、Androidの場合は修正せず、回避策としてtune2fsを使用して、Androidが壊れたfsをマウントし続ける方法を変更します。

tune2fs -e continue userdata-qemu.img
29
Alexei Volkov

Someone13、これは間違いなくターゲットのバグです:「Android 4.4.2-API Level 19」

私は同じ問題を抱えています-エミュレータのデバイスの内部ストレージのサイズをAndroid SDKの方法で変更することはできません(設定の「disk.dataPartition.size = xxxM」でも) iniまたはAndroid SDKのエミュレータでAndroid 4.4.2を使用する場合のコマンドプロンプト引数「-partition-size xxx」).

唯一の方法は、ターゲットとして使用する場合にカスタムサイズを設定することです:Android 3.0-API Level 11.

私のハードウェア:Windows 7 Ultimate SP1、RAM 4GB; Core Duo 2.28GHz; GT630

5
Angel T

2016年も引き続きこの問題が発生する場合は、AVDマネージャーからイメージを削除してから、エミュレーターを追加し直してください。

どうしてもエミュレータのサイズを変更できないように見えましたが、イメージを削除してから1GBの内部ストレージでイメージを再作成すると機能しました。

4
green0range

この仮想デバイスを作成できました。デバイスのタイプなどを変更できますか?

enter image description here

1
Akshat Agarwal

@Frohnzieの回答に基づいて、resize2fsとe2fsckが SDKツール に含まれるようになりました(これらを表示するにはSDKツールを更新する必要がある場合があります)。これらを個別にインストールする必要はありません。それらはyourAndroidSDKFolder/ tools/bin(Windows、Linux)またはyourAndroidSDKFolder/ tools/bin64(Mac、Linux)。

1
horstwilhelm

ここで、バージョン22より前の古いAndroidツールでは、いくつかの問題があるようです。これは機能しません。 Androidツールを23にアップグレードすると、これが機能し始めました。

私の構成は、APIレベル21 CPU:Intel X86 OS:Ubuntu Linuxでした

0
Kiran

私にとって、AndroidStudio。AOSP4.4.2エミュレーターを誤って選択したときの問題でした。GoogleInc. x86エミュレーター(下記)にはこのバグがないようです。

enter image description here

0
Daniel Wilson

Assaf G.の答えは良いです。しかし、私は最初のユーザーの次のリンクで、内部ストレージでEmulatorを作成できることに気づきました500MB。しかし、彼はexceptionsを取得していますが、内部ストレージとは関係ありません。また、他のリンクユーザーは、内部メモリを使用してemulatorを作成できます4096MB。しかし、彼は速度の問題に直面しています。だから、最初のリンクで提供されている仕様を試してみる必要があると思います。

1 . Android 4.4エミュレーター

2 . Androidエミュレーターが永遠に起動する

0
Kanwaljit Singh

delete /data/data/com.google.Android.gms/filesは200M +をリリースします

0
BuffK