torutkのブログ

ソフトウェア・エンジニアのブログ

Android開発環境を構築する(オフライン環境)

Androidの開発環境をインストールする手順は通常インターネットに接続しておく必要があります。しかし、開発環境がインターネットに接続できない現場であった場合や、インターネットとの接続に規制がかかっているためAndroid開発環境のダウンロードが失敗してしまう場合は、オフラインでの開発環境を構築できる手順が必要です。

いろいろ調べてみると、オフラインでの環境構築をしている事例があるので、それらを調べながら、事前に必要なファイルをダウンロードしておき、インストールをしてみました。

なお、以下の説明は、Android開発環境をWindows 7 64bitマシンにインストールし、開発対象AndroidのAPIレベルは15(Android 4.0.3)として記述しています。

ダウンロードするファイル

Android開発環境を整えるため、以下をあらかじめダウンロードします。

JDK

以下URLからJDK 6をダウンロードします。

http://www.oracle.com/technetwork/java/javase/downloads/index.html

Android SDK Tools

以下URLをWebブラウザで開きます。
http://developer.android.com/sdk/index.html

ページ下部にある[DOWNLOAD FOR OTHER PLATFORMS]をクリックします。するとページ内でダウンロード一覧表が現われます。SDK Tools Onlyの表のWindows行にある、[installer_r21.0.1-windows.exe]をクリックしてダウンロードします。

なお、同ページにある[Download the SDK ADT Bundle for Windows]をクリックしてダウンロードされるファイルは、今回必要とする"Android SDK Tools"と"Platform Tools"のほかに、今回使用しない余分なEclipse本体とそのプラグイン、最新(本日時点ではAndroid 4.2)のPlatformsとSystem imageを含み、サイズが大きい(400MB強)ため使用しません。

Platform Tools

インターネット接続環境でのインストールでは、Android SDK Toolsに含まれるSDK Managerを使ってオンラインインストールされます。SDK Managerはダウンロード先を以下のXMLファイルから取得しています。

https://dl-ssl.google.com/android/repository/repository-7.xml

このファイル名の「-7」は、Android SDK Toolsのバージョンが上がると変更される数値で、SDK Managerを起動して[Tools]メニュー>[About]を指定して開く画面で確認することができます。

XMLファイルをブラウザで開き、タグを探します。このタグの中からWindows用のダウンロードURLを探します。

<sdk:archive arch="any" os="windows">
  <sdk:size>11942563</sdk:size>
  <sdk:checksum type="sha1">bbf19963d705eba4cd4ac3a2cf79c80c4b6a80f8</sdk:checksum>
  <sdk:url>platform-tools_r16.0.1-windows.zip</sdk:url>
</sdk:archive>

このがダウンロードするファイル名になります。URLは、このXMLファイルと同じディレクトリになるので、合成した次のURLがPlatform ToolsのダウンロードURLとなります。

https://dl-ssl.google.com/android/repository/platform-tools_r16.0.1-windows.zip

Platform

上述のXMLの中から、タグを探します。バージョン毎に複数の要素が存在するので、今回構築対象とするAndroid 4.0.3を探します。

<sdk:platform>
  <sdk:revision>3</sdk:revision>
  <sdk:description>Android SDK Platform 4.0.3</sdk:description>
  <sdk:version>4.0.3</sdk:version>
  <sdk:api-level>15</sdk:api-level>
  ...
   <sdk:url>android-15_r03.zip</sdk:url>

このがダウンロードファイル名になります。上述同様にXMLファイルのURLと合成した次のURLがPlatform(Android 4.0.3用)のダウンロードURLとなります。

https://dl-ssl.google.com/android/repository/android-15_r03.zip

System Image

上述のXMLの中から、タグを探します。バージョン毎に複数の要素が存在するので、今回対象とするAndroid 4.0.3を探します。

<SDK:system-image>
  <sdk:revision>2</sdk:revision>
  <sdk:description>Android SDK Platform 4.0.3</sdk:description>
  <sdk:api-level>15</sdk:api-level>
  <sdk:abi>armeabi-v7a</sdk:abi>
  ...
  <sdk:url>sysimg_armv7a-15_r02.zip</sdk:url>

このがダウンロードファイル名になります。上述同様にXMLファイルのURLと合成した次のURLがSystem Image(Android 4.0.3用)のダウンロードURLとなります。

https://dl-ssl.google.com/android/repository/sysimg_armv7a-15_r02.zip

サンプルコード

上述のXMLの中から、タグを探します。バージョン毎に複数の要素が存在するので、今回対象とするAndroid 4.0.3(APIレベル15)を探します。

<sdk:sample>
  <sdk:revision>2</sdk:revision>
  <sdk:api-level>15</sdk:api-level>
  ...
   <sdk:url>samples-15_r02.zip</sdk:url>

ダウンロードURLは次となります。

https://dl-ssl.google.com/android/repository/samples-15_r02.zip

Google APIs

Google APIsは、上述のXML(repository-7.xml)ではなく、別XMLファイルに定義されています。
SDK Managerを起動して、[Tools]メニュー>[Manage Add-on Sites...]を選択すると、次の画面が表示されます。

この画面にある、Google Inc. の行のURLをブラウザで開きます。

https://dl-ssl.google.com/android/repository/addon.xml

このXMLの中から、タグの中身がgoogle_apisであるものを探し、今回対象とするAndroid 4.0.3(APIレベル15)を、タグの中身が15であるものを見つけます。

<sdk:add-on>
  <sdk:vendor-id>google</sdk:vendor-id>
  <sdk:vendor-display>Google Inc.</sdk:vendor-display>
  <sdk:name-id>google_apis</sdk:name-id>
  ...
   <sdk:url>google_apis-15_r02.zip</sdk:url>

ダウンロードURLは、addon.xmlのURLと合成し、以下となります。

https://dl-ssl.google.com/android/repository/google_apis-15_r02.zip

Android Support Library

上述addon.xmlの中から、Android Support Libraryのものを探します。

<sdk:extra>
  <sdk:revision>11</sdk:revision>
  <sdk:vendor-display>Android</sdk:vendor-display>
  <sdk:vendor-id>android</sdk:vendor-id>
  <sdk:name-display>Android Support Library</sdk:name-display>
  ...
   <sdk:url>support_r11.zip</sdk:url>

ダウンロードURLは、addon.xmlのURLと合成し、以下となります。

https://dl-ssl.google.com/android/repository/support_r11.zip

Google USB Driver

上述addon.xmlの中から、Google USB Driverのものを探します。

<sdk:extra>
  <sdk:vendor-id>google</sdk:vendor-id>
  <sdk:vendor-display>Google Inc.</sdk:vendor-display>
  <sdk:name-display>Google USB Driver</sdk:name-display>
  <sdk:path>usb_driver</sdk:path>
  <sdk:revision>7</sdk:revision>
  <sdk:description>USB Driver for Windows, revision 7</sdk:description>
  <sdk:desc-url>http://developer.android.com/</sdk:desc-url>
  <sdk:uses-license ref="android-sdk-license"/>
  <sdk:archives>
    <sdk:archive os="windows">
      <sdk:size>8681704</sdk:size>
      <sdk:checksum type="sha1">147c339fde22f98ae41b15349a8303d39a2cf6e5</sdk:checksum>
      <sdk:url>usb_driver_r07-windows.zip</sdk:url>

ダウンロードURLは、addon.xmlのURLと合成し、以下となります。

https://dl-ssl.google.com/android/repository/usb_driver_r07-windows.zip

System Image(x86)

必須ではありませんが、Intel x86(Atom)用のSystem Imageをダウンロードする場合は、SDK Managerを起動し、[Tools]メニュー>[Manage Add-on Sites...]で、Intel Corporation System ImagesのURL(XMLファイル)を開き、対象バージョンのSystem ImageのURLを調べ、ダウンロードします。

<sdk:system-image>
  <sdk:revision>1</sdk:revision>
  <sdk:description>Android SDK Platform 4.0.4</sdk:description>
  <sdk:api-level>15</sdk:api-level>
  <sdk:abi>x86</sdk:abi>
  <sdk:uses-license ref="intel-android-sysimage-license"/>
  <sdk:archives>
    <sdk:archive arch="any" os="any">
      <sdk:size>112619605</sdk:size>
      <sdk:checksum type="sha1">d540325952e0f097509622b9e685737584b83e40</sdk:checksum>
      <sdk:url>
        http://download-software.intel.com/sites/landingpage/android/sysimg_x86-15_r01.zip
      </sdk:url>

http://download-software.intel.com/sites/landingpage/android/sysimg_x86-15_r01.zip

インストール

JDK 6

ダウンロードしたファイルを実行するとインストーラが起動します。

Android SDK Tools

ダウンロードしたファイル installer_r21.0.1-windows.exe を実行します。UACチェックの後、インストーラが起動します。JDKを自動検出します。複数バージョンのJDKをインストールしていた場合、最新バージョンを検出していました。なお、ここでは使用するJDKを変更することができません。

次に利用者をインストールしているユーザーだけか、そのマシンのユーザー全員が使えるかを指定します。ここでは全員が使えるを選択しました。その後でインストール先ディレクトリを指定します。ユーザー全員が使用できる設定では、デフォルトのインストール先ディレクトリは、C:\Program Files (x86)\Android\android-sdkとなっていました。ここは、そのままでインストールを開始します。

インストール完了後、次のディレクトリ構成となりました。

C:\Program Files (x86)
   +-- Android
         +-- android-sdk
               +-- add-ons
               +-- platforms
               +-- tools
               +-- AVD Manager.exe
               +-- SDK Manager.exe
               +-- SDK Readme.txt
               +-- uninstall.exe

インストール完了後、[Start SDK Manager(to download system image,etc.)]にチェックが付いていますが、オフラインでインストールするのでチェックを外します。

Platform Tools

ダウンロードしたファイル platform-tools_r16.0.1-windows.zip を、Android SDK Toolsのディレクトリ直下に展開します。次のディレクトリ構成になるようにします。

C:\Program Files (x86)
   +-- Android
         +-- android-sdk
               +-- platform-tools
Platform

ダウンロードしたファイル android-15_r03.zip を、Android SDK Toolsのplatformsディレクトリの下に展開します。次のディレクトリ構成になるようにします。

C:\Program Files (x86)
   +-- Android
         +-- android-sdk
               +-- platforms
                     +-- android-4.0.4
System Image(ARM)

Android SDK Toolsのディレクトリ直下にsystem-images\android-15という名前でディレクトリを作成し、そこにダウンロードしたファイル sysimg_armv7a-15_r02.zip を展開します。次のディレクトリ構成になるようにします。

C:\Program Files (x86)
   +-- Android
         +-- android-sdk
               +-- system-images
                     +-- android-15
                           +-- armeabi-v7a
System Image(x86)

ダウンロードしたファイル sysimg_x86-15_r01.zip を、Android SDK Toolsのsystem-images\android-15ディレクトリ下に展開します。次のディレクトリ構成になるようにします。

C:\Program Files (x86)
   +-- Android
         +-- android-sdk
               +-- system-images
                     +-- android-15
                           +-- x86
サンプルコード

Android SDK Toolsのディレクトリ直下にsamplesディレクトリを作成し、そこにダウンロードしたファイル samples-15_r02.zip を展開します。次のディレクトリ構成になるようにします。

C:\Program Files (x86)
   +-- Android
         +-- android-sdk
               +-- samples
                     +-- android-4.0.4
Google APIs

ダウンロードしたファイル google_apis-15_r02.zip を、Android SDK Toolsのadd-onsディレクトリ下に展開します。次のディレクトリ構成になるようにします。

C:\Program Files (x86)
   +-- Android
         +-- android-sdk
               +-- add-ons
                     +-- google_apis-302030-mac-x86
Android Support Library

Android SDK Toolsのディレクトリ直下にextras\androidという名前でディレクトリを作成し、そこにダウンロードしたファイル support_r11.zip を展開します。次のディレクトリ構成になるようにします。

C:\Program Files (x86)
   +-- Android
         +-- android-sdk
               +-- extras
                     +-- android
                           +-- support
Google USB Driver

Android SDK Toolsのextrasディレクトリ下にandroidという名前でディレクトリを作成し、そこにダウンロードしたファイル usb_driver_r07-windows.zip を展開します。次のディレクトリ構成になるようにします。

C:\Program Files (x86)
   +-- Android
         +-- android-sdk
               +-- extras
                     +-- google
                           +-- usb_driver

インストールの確認

SDK Manager.exeを起動します。
インストールした各コンポーネントが"Installed"になっていればOKです。
"Not installed"のままであれば、展開したディレクトリが違っている等の問題があることを示します。

なお、USB Driverに関しては、"Google USB Driver"として認識されず、"USB Driver"として認識されています。これで機能するかどうかは現時点では未確認です。