はい、今日はAndroidSDKのインストール方法の紹介です。
何故今まで紹介しなかったかというと、nexus7にはそこまで必要なものではないものだったからです。
しかし、Multi ROMという素晴らしすぎるMODが登場した以上、これを導入するために避けては通れぬ道なので、まとめることにしました。続きからどうぞ。
まず、AndroidSDKとは何か軽く書いておきましょう。
-
そもそもAndroidSDKって何?
AndroidSDKとは、パソコンでAndroidのアプリやソフトウェアを開発するのに必要となるパッケージ類を全てまとめたものを総称して呼んでいるものです。
開発ツール(コンパイラ、デバッガ)や、パッケージマネージャ、ドライバやAndroidエミュレータなどがひとまとめになっていて、Androidアプリイ開発者だったり、一昔前はrootを取得する際にインストールが必須であったりもしました。
-
何に使うの?
Androidアプリを開発するための環境が欲しければインストール必要があります。
また少し前まではAndroidOSではスクリーンショットキャプチャ機能が搭載されていなかったので、スクリーンショットを撮るためだけにAndroidSDKをインストールしてエミュレータから無理やりキャプチャするなど面倒なことをしていました。
開発者以外にインストールする理由として、「外部(コマンドスクリプト)からAndroid端末に命令を送ってファイルを送受信したり、再起動したり、リカバリーを(手動で)導入したりする」ことが挙げられます。
nexus7にMulti ROMのMODを導入する際、この機能が必要になりますのでインストール方法を紹介します。
- ファイルのダウンロード、インストール
まず以下のリンクからファイル(インストーラ)のダウンロードです。
「DOWNLOAD FOR OTHER PLATFORMS」をクリックし、
SDK Tools Onlyの方から自分の環境に合ったものをクリック。
※ADT Bundleの方は、SDKに加えてエディタ(Eclipse)も入っているので重いです。
必要なければSDK Tools Onlyで大丈夫です。
僕の場合はWindows7 32bitなのでandroid-sdk_r21.0.1-windows.zip、もしくは
installer_r21.0.1-windows.exe(インストーラ、推奨。) r以下はバージョンなので随時リンクなども変わると思います。
インストールする際は、必ずインストールした場所をメモするか覚えておいてください。あとで必要になります。
デフォルトでは
「C:\Users\○○(ユーザー名)\AppData\Local\Android\android-sdk」以下のようですが、個人的には「C:\」直下にインストールを推奨します。
(以下ではC直下にインストールした場合で説明しますので随時変えてください。)
ちなみにインストーラ実行中自動で判別してくれますが、Javaがインストールされている必要があります。
無事にインストールされると、
C:\以下に「android-sdk-windows」というフォルダが作られ、色々なものがインストールされているはずです。
この中にある、「SDK Manager」を使って必要なファイル群をダウンロードします。
SDK Manager.exeを起動。
ここから必要なパッケージを選択します。
今回はadb環境があればいいので、「SDK Tools」と「SDK Platform-tools」があれば問題ないですが、必要であれば「Google Driver」などもインストールしておきましょう。
選択したパッケージが多いととてつもない時間がかかってしまうので、少し待ちましょう。
無事にインストールされたら、とりあえずSDK Managerは落としてしまって構いません。
- パスを通す
ここが一番大事な作業かもしれません。簡単に言えば、SDKをインストールしても、PCやAndroidに
「Android関連のツールはここにあります」
というような指示を出しておかなければ使うことはできません。
そこで、「tools」と「platform-tools」の2つの場所をユーザー変数にしまっておく必要があります。
「スタート」→「コンピューター」を右クリック
「プロパティ」をクリックしシステム画面を表示
システムの詳細設定をクリック→詳細設定画面(システムのプロパティ)
環境変数をクリック→○○のユーザー環境変数→「新規」をクリック
「変数名」に「PATH」と入力し、「変数値に」toolsとplatform-toolsの2つのフォルダのパス(アドレス)を入力。
C直下であれば
C:\android-sdk-windows\tools;
C:\android-sdk-windows\platform-tools;
の2つを入力し「OK」。
- 動作させてみる
というわけで正しくインストールされてパスが通っているか確認するためにテスト的に動作させてみる。
予めつなげるAndroid端末の設定→開発者向けオプションで「USBデバッグ」をオンにしておこう。
スタート→「プログラムの検索」から「cmd」と入力しエンター
もしくはスタート→「全てのプログラム」→「アクセサリ」→「コマンドプロンプト」を実行
例えば、「adb shell」と入力しエンター(root権限必須)
こうするとADB Shellが使えますね。
このまま「ls」と入力しエンターをすると(rootディレクトリの)ファイル一覧が表示されたり、
「cd sdcard」と入力しエンター、更に「ls」と入力しエンターするとsdcard内のファイルが見れたりしますね。
adb shellから抜けたければ「exit」と入力しエンターです。
また「adb reboot」と入力しエンターすると端末が再起動したりします。
(「adb reboot fastboot」と入力しエンターするとそのままbootloaderまでいけたり。)
いちいちコマンドを紹介すると長くなってしまうのでいくつかサイトを紹介しておきます。
Android開発コマンド memo(adbの欄などが参考になります)
どうでしたでしょうか。うまくできていればコマンドは動きます。
逆にコマンドがうまく動かなければ、
- 正しくファイル郡がインストールされていない
- 正しくパスが通っていない
- ドライバが正しくインストールされていない
などの原因が考えられますので、慎重に原因を調べてみる必要があります。
ピンバック: nexus7にMultiROMを導入してカスタムROMをマルチブート! | 極 Nexus7
ピンバック: ついにキタ!ubuntu for tabletsをnexus7に焼いてみた!/導入編 | 極 Nexus7
解りやすい説明大変参考になりました。先日、NEXUS-7(2013)を購入しました。上記を参考にして、NEXUS1(2013)のシステムで新しいディレクトリィを生成しようと以下の操作をしたところ怒られてしまいました。(環境設定は上記解説と全く同じ、他のadb commanは動作確認できました)
e:\My_Project\>adb shell
shell@flo:/ $
shell@flo:/ $ chmod 777 /system/etc
chmod 777 /system/etc
Unable to chmod /system/etc: Read-only file system <—— 書き込み不可 (?)
10|shell@flo:/ $
NEXUS7-(2013)では新しいディレクトリィの作成は不可能なのでしょうか(?) Andorid端末を触るのは始めてなので、、、、誰かアドバイスお願いします。
kimuraさん
コメントありがとうございます。
システム領域に独自にディレクトリ作成等行うのはあまり推奨できませんが、書き方だけ書いておきます。
基本的に管理者権限が必要な場合など、コマンドを実行する前に
「sudo ○○」というように、sudoを記述する必要があります。
chmodでパーミッションを変えるのには管理者権限が必要ですので、おそらくこれで解決すると思われます。
kaminuraさん
有難うございます。確かにシステム領域にディレクトリィ作成等は避けたいのですが、確かどこかのブログ(h_kojimaの日記)で”ドライバーモジュール配置用フォルダーを作成”すると言う内容( db > mkdir/system/etc/lib/modules)を見たもので、、、独自Driver(USB SD Card Driver)を組み込み、Plug&Play機能を確かめたくて、、TRYしています。mkdirでも管理者権限無しで𠮟られたので、chmodで
属性変更してからと思い、chmodを試してみました。Linux Systemにおいて、
管理者権限がないとこのようなOperationが不可能な事は理解しています。
(adb commandを使って、管理者権限を得るにはどうするのでしょうか ?)
adb shell コマンドだけでは管理者権限を持ったOperationができないのでは、、、現在、私の頭は、混乱状態です。。。。。
sudo xx で行ないましたが、”そんなcomandはない”と言われてしまいました。
shell@flo:/ $ chmod 777 /system/etc
chmod 777 /system/etc
Unable to chmod /system/etc: Read-only file system
10|shell@flo:/ $ sudo chmod 777 /system/etc <– R/W可に変更したい
sudo chmod 777 /system/etc
/system/bin/sh: sudo: not found adb version
Android Debug Bridge version 1.0.31
ですが、最新版と思っていますが、、、
すみません、お手数でしょうが、再度アドバイス頂けると助かります。
よろしくお願い致します。
Kimura
なるほど、何か特別な事情があるのですね。
shellコマンドをsu権限で実行する場合、
adb shell _(エンター)
su_(エンター)
でできたかと思いますが、現在こちらで試せる環境は無いので、全て憶測での発言となってしまっています。
少しでも力になれたらとは思うのですが、なかなか確実な解決策を提案できなく申し訳なく思います。
単純に「システム領域にディレクトリを作成する」だけの方法であれば、rootをとった端末であれば
「root explorer」などのファイラーを使って、(PCから通信を行うのではなく)端末で直接ディレクトリを作成してしまう方法はあるといえばありますが。。
私は確かこの方法でディレクトリ作成を行ったと記憶しております。
kaimuna さん
早速の返信有難うございます。Ubuntsの世界(Linux Kernel)でも、ROOT権限をもったTerminalを使って管理者権限でできるOperation(例:、Read Only->Write可に変更)したりと、自由自在なのですが、、、adb shellが提供してるcommandに”sudo”が無い事に、困りました。古いAndroid SDKを探し、旧版のadb.exeを探してみます。有難うございました。新情報の入手を得られたら、又ご教授頂きたく、よろしくお願い致します。又、現在TRY中の経過/結果について進展がありましたら、連絡させて頂きます。