2017-10-10 31 views
1

私はウェブ上で多くの検索を行いました。Android SDKは大量のディスク容量を必要とします

私のIDE(Androidスタジオ)から、Android SDKの最新のアップデートが利用可能であることが通知されたとき、私はそれらをインストールするように指示しました。今、私は、Android-SDKディレクトリが87GbのHDDメモリを占めていることに気付きました。 これは、すべてのAndroid APIが古いバージョンから最新の新しいバージョンにインストールされているためです。

今日、私はすべてのSDKディレクトリを削除し、SDKツールのクリーンインストールを実行することに決めました。 SDKのマネージャからインストールして、Android開発用に稼動させるために最低限必要なことは何ですか。 私のアプリはAndroid API 14(4.0 IceCream)から最低限のAPIバージョン(2017年10月現在はAPI 25)に移行する必要があると考えてください。 中毒では、AndroidエミュレータでLollipop 5.1(API 22)を使用しています。

最後に私が尋ねるのは、新しい使用可能なものがあり、それをインストールする場合です。古いAPIバージョンをすべてアンインストールして、SDKが成長しないようにする必要がありますか?

これはAndroid Studio SKDマネージャのスクリーンショットです。 あなただけのAPIを確認見ることができるように7.1.1ヌガーAPI 25 enter image description here

ですこれはSDKマネージャ enter image description here enter image description here

enter image description here

のパッケージの詳細他人のスクリーンショットのシリーズですすべてがチェックされていません。 Android 5.1 Lollipop API 22では、Lollipop Installedを使用してAndroidエミュレータを作成した後にチェックマークが表示されます。

NB:テレビやウェアラブルではなく、モバイルプログラミングに必要なものだけが必要です。

+0

あなたのAndroid SDKディレクトリには、スペースを占有しているものが正確に表示されることをお勧めします。たとえば、Linuxでは、 'du -d 1 -m'を実行して最上位のSDKディレクトリが使用するディスク容量を確認することができます。私の場合、〜80GBは 'system-images'にあり、それはエミュレータイメージが存在する場所です。あなたが同じ場合は、使用しないエミュレータイメージをアンインストールします。 – CommonsWare

+0

問題は、IDEが私にSDKのアップデートをインストールするように提案するたびにインストールされたので、すべてのAPI(システムイメージなど)を蓄積しました – Vin

答えて

2

SDKが成長しないように、すべての古いAPIバージョンをアンインストールする必要がありますか?

はいあなたはSDKによって取られた空間のサイズを小さくするためにこれを行うことができます

短所:あなたは上記のロリポップと上の特定のデバイス上でアプリケーションを実行している場合instant runを使用することはできません。

注:サポートライブラリも古いバージョン

From docs, Revision 26.0.0 Release (July 2017)

のサポートを落としているようにあなたは、API 14の下に古いバージョンを削除することができ、最小SDKのバージョンは、結果として14に増加されました、多くの 以前のAPIレベルとの互換性のために存在していたAPIは、 が廃止されました。これらのAPIのクライアントは、廃止予定の各APIのリファレンスページに記載されているとおり、 相当のフレームワークに移行する必要があります。

+0

たとえば、アプリケーションのbuild.gradleファイルで、 : 'minSdkVersion 21' ' targetSdkVersion 25' SDKマネージャでAPI 21以上をインストールしていなくても、この範囲のAPIを持つデバイスで私のアプリケーションを実行できますか? – Vin

+0

どの行?あなたのターゲットAPI、最小サポート(あなたはあなたがそのAPI上でapを実行しない限り、SDKのAPIをreuiredしません)、サポートライブラリバージョン、サードパーティなどのためにあなたのアプリケーションを削除した後にgradleの依存関係を追加する他のAPIで実行することはできますが、エミュレータ –

+0

ではテストできますが、エミュレータではなく物理デバイスでテストできます –

関連する問題