追記:書いたまま放置してましたが下書きがいっぱいになったので放出します。2015年末頃の作業ログです。
久々にAndroidを触る必要が出てきたので開発を始めてみようと思います。
経験はあるもののEclipseが主流だった頃以来なので浦島状態。
今はAndroid Studioが定番ということだけは知っていたのでとりあえず使ってみることにしました。
Android Studioの準備
ダウンロード
Android Developersからインストーラーをダウンロードします。
https://developer.android.com/intl/ja/sdk/index.html
インストール
古い環境などからのインポートの必要もないので流れに従ってそのままインストール。
何かのインストールがうまくいかなかったけどとりあえず気にしない。
Complete Installation
前のバージョンをインストールしたことがあれば
You can import your settings from a previous version of Studio.
と聞かれる。
データを引き継ぐ場合は
I want to import my settings from a previous version (~/Library/Preferences/AndroidStudio1.4)
を選択。
Preferencesの変更
Appearance & Behavior > Appearance
Theme: Darcula
に変更。目に優しい。
Editor > Colors & Fonts > Font
Schemeを新規作成。
フォントをIconsolata
、サイズを18
に変更。
Editor > General > Appearance
以下にチェックを入れました
-
Show line numberes
行番号表示 -
Show whitespaces
空白表示
vim化したい
普段はvimを使っているのでどうしてもやりたくなります。
調べたところ一応プラグインはあるようです。
IdeaVim
https://github.com/JetBrains/ideavim
ですが、それなりに使えはするものの完璧ではないらしいのと、
IDEでわざわざ使うのもどうなんだろうと思い素直に慣れることにしました。
プロジェクトの作成
Android Studio 1.4になり以前と変わったようですが、初めてなので気にせず進めます。
Configure your new project
Application name
やCompany Domain
などはお好み。特に変えなくても進められました。
Target Android Devices
ここも特に変える必要はないですが、最近は4.2以上のほうが何かとよいらしいので
API 17: Android 4.2 (Jelly Bean)
を選択しました。
Add an activity to Mobile
お作法を知るためにスタンダードな
Navigation Drawer Activity
を追加して始めてみることにしました。
Customize the Activity
最初は特に変える必要はなかったです。
がっつり開発する際にはFragmentは必須のようですが、
最初は気にせずUse a Fragment
にはチェックは入れません。
開発
Rendering Probrems
レイアウトのプレビューで何やらエラーが出るので
ちょっと調べてみるとdeplicatedなActionbarを使おうとしていたらしい。
情報元と同じ対応で解決。
<!-- ThemeにBaseを追加 -->
<style name "AppTheme" parent="Base.Theme.AppCompat.Light.DarkActionBar">
ビルド
上の三角ボタンでできます。
Terminalから直接ビルドすることもできます。
$ ./gradlew
Build Variant
Build TypesとFlavorによりビルドのバリエーションを作ることができます。
この2つの詳細についてはこちらの記事を参考にさせていただきました。
ビルド時に切り替える場合は左下のBuild Variantsで設定できるようです。
その他
Android SDKのアップデート
Tools > Android > SDK Manager
からアップデートできます。
他にも必要なライブラリの追加などもできます。
参考:http://qiita.com/labeneko/items/f6c46f9a21f321827d88
参考リンク
Android アプリ開発の基礎知識と実務スキルを身に付けるトレーニングコース
http://mixi-inc.github.io/AndroidTraining/