スキルアップ

Android開発の初心者がアプリ公開するまでの流れ・実況|1日目~12日目

こんな方におすすめ

  • Android開発をやってみたい方
  • Androidアプリをゼロから公開するまでの流れを知りたい方

アラフォーの私、急にAndroidのアプリを作ってみたくなりました。

IT系の会社に企画職として勤めていますが、アプリ実装の経験はゼロ。

途中で諦めるかもしれませんが、非エンジニアがアプリ開発をゼロから行ったらどうなるのか記録として残したいと思います。

開発の流れをざっくり理解

まず最初に公式マニュアルを閲覧してみました。

https://developer.android.com/?hl=ja

パッと見、何から始めたら良いか分かりにくいし、深いところは英語で記載されているので別の手段を探すことにしました。

今の時代、動画で学習した方が効率がよさそうなので、Youtubeで検索してみましたが自分に合いそうな動画が見つからない。

いろいろ探して、動画学習サイト「ドットインストール」に行き着きました。

ドットインストール「Androidアプリ開発入門」 

こちらで流れを理解しながら、必要な準備を進めていきます。

 Androidアプリ開発の手順

 Android Studioをインストールする(1日目)

Android開発環境である「Android Studio」をダウンロードします。

https://developer.android.com/studio?hl=ja

ダウンロードが終わったら、起動して画面に従いインストールします。

インストールのオプションであるvirtual deviceなどもOnにした2.7GBも使用したみたいです。

 Android Studioでプロジェクト作成(1日目)

起動するとWelcome画面が表示されますので、New Projectを選択。

テンプレートを選択する画面が表示されたので、ひとまずPhone and Tabletの項目の「Bottom Navigation Activity」を選択。

プロジェクト名を適当につけて、開発言語、最低対象OSVerを指定します。今回は言語「Kotlin(ことりん)」、最小OSVer「API 26」としました。

英語ばっかりで良くわからない。日本語に切り替えたい。

 Android Studioの画面を理解(2日目)

左側のツールウィンドウをポチポチしてみる。

フォルダ構成などは後から理解しよう。

とりあえず、触っている感が欲しいのでlayoutフォルダでアプリ画面をいじってみる。

activity_main.xmlなるファイルがアプリ画面のUIをつかさどるようだ。

画像、スイッチ、アイコンを並べてみる。

なんか楽しい。

Android Studioのエミュレータを動かしてみる(3日目)

layoutでtext Viewにて「Hello World」と真ん中に配置。

さらにPixel5のエミュレータで表示してみました。

なぜか左に寄っている。

バランスよく配置する方法はまた次回勉強しよう。

とにかくに今は触って慣れていくことが大切。

Android StudioのText ViewのAlignを理解する(4日目)

「Hello World」をバランスよく配置するにはAlignで制約を付ける必要があるみたいです。

TextView選択時の上部メニューに階段みたいなアイコンが現れるのでそちらから、Horizontally、Verticallyを選択するとバネ状の紐が出てきます。

いろいろ触って挙動を理解したいと思います。

 

Android StudioのText Viewのスタイルを変更してみる(5日目)

TextView選択時の右サイドメニューに虫眼鏡アイコンがあるので、そちらからTextSizeやTextStyleが変更でします。

少し理解できてきた。

Android Studioのエラーを確認してみる(5日目)

layoutを調整中に、エラーが発生した際に右上にマークが表示されるようだ。

こちらのマークをクリックすると画面下部にエラー原因の詳細が表示される。よく確認してみたいと思う。

Android Studioのエラーにはまる(6日目)

TextViewの宣言部分でエラーが表示され、どうしても解決できない。

Unresolved reference: messageTextView

Variable expected

Parameter 'view' is never used

いろいろ調べても解決に至らない。

Android Studioのディレクトリ構成、読み方(7日目)

TextViewの宣言部分でエラーが解決できないので、基本に立ち戻ることにした。

本日はディレクトリ構成やそもそもの読み方などを理解する。

最初に覚えたいディレクト構成、ファイルをまとめておく。

Project
|
|-- app/src/main/res(アップ/ソース/メイン/リソース)
| ※画像、図形、テキストなどリソースを入れる場所
|
|-- app/src/main/java([省略]/ジャバ)
| ※JavaやKotlinのコードを入れる場所
|
|-- app/build.gradle([省略]/ビルドグレードル)
| ※SDKVer、外部ライブラリなど ビルドに必要な情報を示すファイル
|
|-- app/src/main/AndroidManifest.xml([省略]/アンドロイドマニフェスト.エックスエムエル)
※アプリの構成情報を示すファイル

リソースディレクトリ(8日目)

リソースディレクトリ「app/src/main/res」は画像、図形、テキストなどリソースを入れる場所。

主要なファイルについてまとめる。

values/strings.xml

アプリ内のUIで表示する文字列を定義。

※Kotlinのコード上に文字列を直接書くことはしない。言語設定によって切り替えるため。

values/colors.xml

アプリ内の利用する色コードを定義。

values/themes.xml

UIパーツの見た目の変更を定義。

ビルドグレードル(9日目)

ビルドグレードル「app/build.gradle」はSDKVer、外部ライブラリなど ビルドに必要な情報を示すファイル。

こちらに記載されている主要なワードについてまとめる。

アプリバージョン:versionCode、versionName

アプリのバージョンを定義。

app/build.gradleファイルのandroid関数にあるdefaultConfig部分で記載されている。

ユーザには見えない内部バージョン「versionCode」と、ユーザに見えるバージョン「versionName」で定義する。

それぞれの形式は以下の通り。

versionCode:1~2100000000の整数

versionName: x.yと整数とピリオドの形式。xはメジャーバージョン、y以降はマイナーバージョン。3桁の場合はx.y.zとなりzはバグ修正バージョンで扱われることが多い。

ビルドバージョン:compileSdk

どのAndroid SDKバージョンでビルドするかの定義。

APIレベルで指定する。

AndroidOS 9は28を指定。以降、OS10は29、OS11は30、OS12は31となる。

最低バージョン:minSdk

動作可能な最低Androidバージョンを指定する。APIレベルで指定する。

パッケージ名:applicationId

アプリを特定する一意なID。

例えばGoogleマップだったら「com.google.android.apps.maps」

外部依存ライブラリ:dependencies

外部のライブラリの依存関係を宣言する場所。

アンドロイドマニフェスト(10日目)

アンドロイドマニフェスト「app/src/main/AndroidManifest.xml」はアプリの構成情報を示すファイル。

画面構成:activity

アプリにどのような画面があるのかを記載。

サービス:service

アプリにどのようなサービスを持つのかを記載。

サービス例:バックグラウンド処理、プッシュ通知

アプリ名、アイコン:label、icon

アプリ名やアプリアイコンを記載。

別アプリからの起動方法:intent-filter

別アプリで共有を押した際の自アプリの起動方法を記載。

AndroidのActivity、概念について(11日目)

Activityという機能を利用して1枚の画面を実装。

実際はAndroidバージョン間の互換性を維持するクラスであるAppCompatActivityを使う。

このActivityを起点に処理が展開していく。

Activityのライフサイクル(11日目)

画面のステートによって呼ばれるメソッドとその順序。

ステート例:画面開く、画面を閉じる、バックグラウンドに遷移

メソッド例:onCreate(初期化)、onStart(開始)、onResume(直前呼び出し、履歴イメージ)、onDestroy(終了)

Android のUI関連(12日目)

大事なUI概念をまとめる。

 View

Viewとは画面上に表示するためのコンポーネント(TextView、ImageView、Button)。Viewはlayout XMLで記述。

 layout XMLとコードの関係

layout XMLをViewインスタンスに変換することでプログラム上で利用できる。

XMLはViewの束をViewBindingでまとめる。

 TextView

文字列を表示するためのView。IDとか色、サイズを指定。

 Button

ボタンを表示するためのView。IDとか色、サイズを指定。

サイズ単位

解像度に依存するpx単位は利用できない。

基本的なサイズ指定はピクセル密度を考慮したdpを使用。

テキストのサイズ指定はピクセル密度とOSを考慮したspを使用。

本日はここまで。

続く

(本ページは順次 追記していきます)

---- 当サイトのPRをさせてください ----

当サイトは「社会人に役立つ仕事術、生活術、スキルアップ術」を発信しております。また来ていただけたらたいへん嬉しいです。

ぜひブックマークをお願いします。

iPhoneの方:
ブラウザ下部の[↑]ボタン > [ホーム画面に追加]もしくは[ブックマーク追加]

Androidの方:
ブラウザ右上の [︙]ボタン > [ホーム画面に追加(アプリをインストール)] もしくは[☆タップ]

PCの方:
ブラウザ 右上の[☆]ボタン、もしくはキーボード[Ctrl]+[D]

またのお越しをお待ちしております。

\面白かったらシェアお願いします/

-スキルアップ
-,