13
14

More than 5 years have passed since last update.

Androidでのゲーム開発入門めも

Posted at

3日程かけて調べたもの

主な構成要素

android.app.Activity

アプリの一つの画面の管理を司る。アプリは複数のActivityから構成されている。
画面を遷移していくとスタックにActivityが積まれていく。バックキーを押すと一つポップされて前の画面(Activity)に戻る。

iOSがアプリ単位で構成されているのに対してAndroidは画面(Activity)単位で構成されていて、そのお陰で複数のアプリを自由に行き来することが出来るみたい。

android.graphics.Canvas

名前の通りキャンバスのようなクラス。Canvas::draw* といったメソッドを使うことでキャンバス上に線などを描くことが出来る。

android.graphics.Paint

描画するときの線の色・太さ等を司る。筆のようなもの。

android.graphics.drawable.Drawable

同じインタフェースで描画を行うためのインタフェース。実際の実装はDrawableを継承した上で行う。Canvasに用意されているメソッドはこれよりも低レベルと考えたほうが良いのかも。
Y.A.M の 雑記帳: Android Drawable Mutations

android.view.View

Canvas上にどのように描くかを司るクラスのインタフェース。
画面を描画はActivity::setContentViewにViewを登録することで行う。

android.widget.*

Button等よくある部品。

android.view.ViewGroup

複数のViewをまとめあげるためのView。
実際にはandroid.widget.LinearLayout等、ViewGroupを継承したクラスを用いる。

リソース

Android リソースとは | Tech Booster

resディレクトリ以下の構成

リソースタイプとファイルの設置 - Android入門

リソースIDの参照

プログラム上では: R.リソース種類.リソース名
xml上では   : @リソース種類/リソース名

リソースの参照 - リソース管理 - Android入門

リソースの参照

Resouces res = getResources();
res.get

複数の解像度の対応

AndroidManifest.xml

Androidアプリ開発!!: AndroidManifest.xml-01(Manifest.xml書き方)

フルスクリーン

View decor = this.getWindow().getDecorView();
decor.setSystemUiVisibility(
    View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
    | View.SYSTEM_UI_FLAG_FULLSCREEN
    | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY
);

[Android 4.4] フルスクリーンで動くアプリを作る | Lab

APIレベルの取得

Build.VERSION.SDK_INT

APIレベルとバージョンの対応表

androidバージョン コードネーム APIレベル Build.VERSION_CODES.
1.0 1 BASE
1.1 2 BASE_1_1
1.5 Cupcake 3 CUPCAKE
1.6 Donut 4 DONUT
2.0 Eclair 5 ECLAIR
2.0.1 6 ECLAIR_0_1
2.1 7 ECLAIR_MR1
2.2 Froyo 8 FROYO
2.3 – 2.3.2 Gingerbread 9 GINGERBREAD
2.3.3 – 2.3.7 10 GINGERBREAD_MR1
3.0 Honeycomb 11 HONEYCOMB
3.1 12 HONEYCOMB_MR1
3.2 13 HONEYCOMB_MR2
4.0 – 4.0.2 IceCreamSandwich 14 ICE_CREAM_SANDWICH
4.0.3 – 4.0.4 15 ICE_CREAM_SANDWICH_MR1
4.1 JellyBean 16 JELLY_BEAN
4.2 17 JELLY_BEAN_MR1
13
14
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
13
14