2015年のAndroidアプリ開発入門 1限目
JDK(Java開発環境)、Android Studioのインストール。インストール全体の流れはようてんさんの[Android Studio] Hello, Android Worldが詳しく説明しているのでお勧めです。
- (Windows)Java 8のJDKをインストール
セミナーではJDK 8をインストールしてました。Googleの推奨環境だとJava 7の方だと思うんですよね。Java 8でも問題は無いと思うんですが私は警戒してJava 7の方を入れています - (Mac) Java 6のJDKをインストール
Apple社製のJava 6をインストールした後、Java 7/8をインストールするのは有。Java 6のままだと最新のAndroid 6.0の開発は出来ません。 - 本日公開されたAndroid Studio 1.0がMacで「Java not found」になり起動出来ない場合の対処法
JDKのバージョンを騙す方法。Eclipseとの併用で検討したけどあまりお勧めはしない。JDK 7をインストールすれば解決するはず。JDK 7をインストールした後にAppleパッチを当てる方法でもJava 7のままで大丈夫だった、気がする。今の所、上手く行ってるよ。 - (Windows) 環境変数の設定
面倒臭いですね。嵌り所です。[Android Studio] Hello, Android Worldに確認方法があるので調べてみてね。 - (Mac) ネット経由でアプリが起動できない対処方法
セキュリティ設定を変更する方法はお勧めしません。「開く」を選ぶ方法で大丈夫ですよ。
- Minimum APIは「API 21」
minimumを21に設定するとLollipop端末未満の端末では動作しなくなります。流石にそれは寂しいので慣れてきたらAPI 15あたりをお勧めしたい。 - プロジェクト設定のCompany name
テストなら適当な名前で大丈夫。アプリ公開する場合ではダメ。というかGoogle Playで弾かれます =)。お勧めなのは自分でドメインを取ってそれを使う事です。COMドメインなら年間1000円以内で運用できますよ。私はムームードメインという会社で登録しています。ドメイン登録で必要とされている住所は代理で登録できるのでお勧めですよ =)。
私は「synchack.com」で運用しています。 - エミュレータの設定
AVDManagerボタンを押下→『Nexus S』→『Lollipop armeabi-v7a』→『Finish』を選択。高解像度の設定を選ぶと起動や実行に時間が掛かるのでテスト用にはNexus S程度の画面の大きさがお勧めです。
2015年のAndroidアプリ開発入門 2限目
これ、初心者には相当厳しい内容になってるぞ、、、
- ボタンを押してTextViewを変更する
- GPSより位置情報を取得する
どうだろう。今だとAndroid開発者サービス(Google Play services)から位置情報を取得した方が電池の消費が抑えられると思うんだ。GPSを搭載していない機器も結構ありますしね。GPSのパーミッションの付け忘れ注意。GPSを使用するにはユーザーの許可が必要になります。エミュレーターでは位置情報を設定できます。Android Device MonitorのEmulator設定に位置情報を設定します。 - 位置情報を使ってみよう(1):位置情報を取得する仕組み - @IT
- Android x Google Play Services #3 Location API で位置情報を取得する | Developers.IO
- Google Geocoding APIより緯度情報から住所を取得する
外部ネットワーク接続を行うにもパーミッション設定が必要です。HTTPConnectダイレクトで取得しようとしているのでまあエラーになるよね。Thread化が必要なんだけど、それは次の時間で。 - Weather Hacksより住所から天気情報を取得する
後でSourceは公開されるとのこと。
- Ctrl+Pで引数情報が見れる
- Android端末の動作確認ってどうよ?
全部を動作確認するのは不可能。癖のある端末を中心に確認したらどうだろうか。 - Eclipse(ADT)とAndroid Studioの違いどうよ?
Android Studioの正式サポートと切り替えにADTのサポートは打ち切る事になっているのでこれから始めるのならAndroid Studioお勧め。
NDKと付き合う人はもう少しADTと付き合う必要があるのかな? - アプリの容量制限はある?
ある。公式情報は手元にないが調べれば出てくるはず。大きくなればそれなりの手法があるのであまり気にしなくていいのではないか。
APIレベルの変更
- 『Android』→『Project』に変更
左上の押せるかどうかよく分からないエリアです。クリッククリック! - app下のbuild.gradleを選択
下の方にもう一つbuild.gradleがあるんですがそれはスルーで。 - minSdkVersionを15に変更
対象の端末のAPIに合わせるといいですよ。
2015年のAndroidアプリ開発入門 3限目
2限目の延長になってます。なので2限目の資料を見ておくんなまし。
Androidのお約束
ネット系のクラスはUI Thread(Main Thread)で使ってはならないという掟。Android 3.xあたりでエラーになり始めた。UI Threadで処理を止めると画面更新が出来ないのよ。ANR、ダメ絶対。Windowsとかも同じなんだけど、まあアレは緩いOSなんで =)。
掟についてはエラーログにちゃんと書かれているので、動かない時は必ずログは確認しよう。
逆にUI関連は、Main Thread以外で操作してはならない掟もある。
Handler(+Thread)、AsyncTaskを活用しよう。
お約束で知っておきたい作法
日本語で説明してる。中級者向け。オススメ。
Intent呼出にによる画面遷移
①画面の単位はActivity。追加したActivityは、 AndroidManifest.xmlに記述する ②ActivityはIntentで呼び出す。Intentにはパラメーターを 設定して、呼び出し先のActivityから取得できる ③Intentには、明示的Intentと暗黙的Intentがある
このスプラッシュ画面の手法はAndroid 2.x系からあるテクニックだが、Activityを消耗してしまうので今はオススメ出来ないかな。外部からのIntent情報が劣化するはず。どうしても上手く渡せないタイミングが出来てしまう。
ナウなヤングはFragmentを活用するとメモリもストレスも少なく、ユーザーにも優しいのでお勧め。難易度はややムズなのでIntent呼びでも悪くないよ。
Intentは、Androidならではの強力な機能なので活用しよう。Google Maps等の連携も楽。Parcelableも一緒に活用しよう。便利だぞ。
ライブラリの活用
- JakeWharton/butterknife · GitHub
findViewById()がすっきり書ける。 - google-gson - A Java library to convert JSON to Java objects and vice-versa - Google Project Hosting
JSONを扱う便利ライブラリ。つか標準でインストールされているorg.json.*は皆、使っていないという。標準ライブラリは便利でもないし、軽くもないので皆、代替ライブラリを使っている。Googleですらこの様w
---
と言う事で、Androidで確実にはまる、HandlerやらAsyncTaskやらをさらっと流すあたり、ナカナカこれを理解するのは難しいとは思います。しかもこれからはLoaderでしょ、とか言い出すときりがないw。例外もJavaと本格的に取っ組み合わないと厳しいですしねえ。
頑張れ、としか =)。
---
元の書籍を立ち読みしてきたら、今回やっていたプログラムがまんま掲載してました。
有山 圭二
技術評論社
売り上げランキング: 4,098
技術評論社
売り上げランキング: 4,098
0 件のコメント:
コメントを投稿