8
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

KotlinでAndroidアプリを作ってみる(超初級編)

Last updated at Posted at 2025-03-03

インフラ屋でもクソアプリを作りたくなる夜があるじゃない!
と、言うことで本日は手元のMac端末でKotlinを触ってみようと思います。
超初級編なので、あまり深い記事は期待しないでください。
とりあえず環境整えて、動かしてみよう! と気軽に取り掛かるきっかけとなることを重視しています。

Kotlinとは?

  • 「ことりん」と読むらしい。
  • 2011年ごろチェコで生まれたプログラミング言語らしい(意外と年数経ってるんだな)。
  • Javaに関するなんやかんや( https://www.nikkei.com/article/DGXZQOGN05CPR0V00C21A4000000/ )があり、エンジニアのJava離れが進んでいた中、「Javaからいい感じに切り替えられる言語ってなんだろうね」というところから注目されたのがKotlinらしい。
  • JavaアプリをKotlinに変換できるらしい。
  • Javaに比べると「ぬるぽ (NullPointerException のこと。アプリフリーズの原因になりがち。) 」が発生しにくいようになっているらしい。

※多分他にも書くべきことがありそうですけど、そろそろ睡魔が襲ってきたので、開発環境整える作業に入ります。

Mac端末でKotlin開発環境を整えてみる

Kotlin開発環境を整える

  • ファイルのダウンロード
    • https://developer.android.com/studio?hl=ja にアクセス
    • Android Studio Ladybug Feature Dropをダウンロード をクリック。
    • android-studio-2024.2.2.13-mac_arm.dmg をダウンロード。1.2GBくらいあるので気長に待つ。
  • Android Studioのインストール実施
    • ダウンロードしたdmgファイルをダブルクリックし、アプリケーションフォルダにAndroid Studioを放り込む。
    • Finder→移動→アプリケーション とクリックし、アプリケーション内の「Android Studio」をダブルクリック
    • そのままインストール実施。(カスタムしたい人は適宜実施)
    • Android Studio Setup Wizardが起動し、コンポーネントのダウンロードなどが実施される。手元環境だと概ね1.5時間くらいかかったので気長に待つ。
  • Android Studioを起動・バージョン確認
    • Android Studioを起動し、メニューから Android Studio→About Android Studio で、バージョンを確認。今回だと「Build #AI-242.23726.103.2422.12816248」となっていた。

※お使いの端末次第でパッケージなど変わる可能性があるのでそこは適宜読み替えてください。

Kotlin開発環境を日本語化してみる (日本語化が不要な方はスキップしてください)

  • ファイルのダウンロード
  • 日本語化実施
    • Android Studioを起動。
      • Pluginsをクリック
      • 歯車マークをクリック
      • Install Plugin from disk … をクリック
      • 先にダウンロードしたja.242.91.zipを指定して「開く」
      • Restart IDE という緑色のボタンが表示され、Android Studioの再起動を促されるので、躊躇せず緑のボタンを押して再起動実施。
    • 日本語化された状態で起動してくる。

開発したアプリをAndroidStudioで動かしてみる (開発中のテストを実施するようなシチュエーション)

1. AndroidStudioを起動して、「New Project」をクリック。

(01) AndroidStudioを起動.png

2. Empty Views Activityを選択して「次へ」をクリック。

(02) EmptyViewsActivityを選択.png

3. 下記画面を参考に入力。Androidバージョンは15.0を選択して「完了」をクリック。

(03).png

4. プロジェクトのインポートなどがしばらく実施されるので待つ。

(04).png

5. インポートなどが完了し、右下のバーが消えた状態まで待つ。

(05).png

6. この状態で、「構成の追加」の横にある再生ボタンをクリックして、以下のようなテストアプリが起動することを確認してから、停止ボタンを押してテストアプリを終了させる(Hello World! と表示されることを確認)

(06) 再生ボタンを押した.png

7. activity_main.xmlタブをクリックし以下の内容で上書き実施。

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">
    <TextView
        android:id="@+id/countText"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="0"
        android:textSize="50sp"
        app:layout_constraintBottom_toTopOf="@+id/button"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />
    <Button
        android:id="@+id/button"
        android:layout_width="200dp"
        android:layout_height="200dp"
        android:text="加算ボタンです"
        android:textSize="20sp"
        app:layout_constraintTop_toTopOf="parent"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintEnd_toEndOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>

8. MainActivity.ktタブをクリックし以下の内容で上書き実施。

package com.example.myapplication
import android.os.Bundle
import android.view.View
import android.widget.Button
import android.widget.TextView
import androidx.appcompat.app.AppCompatActivity

class MainActivity : AppCompatActivity() {
    private var count: Int = 0
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
        val button = findViewById<Button>(R.id.button)
        val countText = findViewById<TextView>(R.id.countText)
        button.setOnClickListener {
            count+=1
            countText.setText(count.toString())
        }
    }
}

9. 「構成の追加」の横にある再生ボタンをクリックして、以下のようなアプリが起動することを確認。

スクリーンショット 2025-03-03 22.07.44.png

10. 「加算ボタンです」を5回押すと5カウントされる。

スクリーンショット 2025-03-03 22.09.04.png

開発したアプリを実機Androidで動かしてみる (リリース前の実機でのテストを実施するようなシチュエーション)

1. ビルドしてapkファイルを作成する

スクリーンショット 2025-03-03 22.11.20.png

2. apkファイルを実機Androidに送って実行する(先ほどのAndroidStudioでのテストと同様の動きを実機で確認できる)

おわりに

  • と、ここまで書いた後でなのですが、「環境整えるのとかめんどいから、もっと楽に試せる方法ないのか?」という方がいらっしゃったら、 https://play.kotlinlang.org/ にて試していただくのが良いかもです。簡単的なコードの挙動確認だけならこれでも充分かなと思います。
  • 作ったアプリを実機でも動かしてみたいなぁ と言う方はこの記事を参考になさってください。
  • これフラグなのですが、気が向いたらもうちょっと踏み込んだ記事を公開するかもです。

参考URL

8
8
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
8
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?