入力したPOSTする簡素Androidアプリ

## 1.表題
これまで作成したことがなかったのですが、今度大きめのAndroidアプリを
開発するという目標を立てたので、手始めに簡素な入力して表示するだけのAndroidアプリをAndroidStudioで初めて作成しました。

以下、GitHubに公開しています。
https://github.com/Fukuta-Y/AndroidTest

## 2.動作環境
AndroidStudio、Kotlin

## 3.仕様
（１）入力画面
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/583781/e5fa591a-8985-3fad-a2ab-3b12b21de3ef.png" width=40%>

※名称を入力して、送信ボタンをクリックする。

（２）表示画面
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/583781/c175c973-5b74-bbe0-1828-ecee059c95e6.png" width=40%>
※(1)の内容が「あなたの入力：＜入力内容＞」で表示されます。

## 4.レイアウト（AndroidManifest.xml）

```xml:AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools">

    <application
        android:allowBackup="true"
        android:dataExtractionRules="@xml/data_extraction_rules"
        android:fullBackupContent="@xml/backup_rules"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/Theme.MyFirstApp"
        tools:targetApi="31">
        <activity
            android:name=".MainActivity"
            android:exported="true"
            android:label="@string/app_name"
            android:theme="@style/Theme.MyFirstApp">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>
</manifest>
```

## 5.kotlin側
```kotlin:MainActivity.kt
package com.example.myfirstapp

import android.os.Bundle
import android.widget.Button
import android.widget.EditText
import android.widget.TextView
import androidx.activity.ComponentActivity
import androidx.activity.compose.setContent

class MainActivity : ComponentActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)

        // EditText, Button, TextViewの参照を取得
        val inputText: EditText = findViewById(R.id.inputText)
        val submitButton: Button = findViewById(R.id.submitButton)
        val outputText: TextView = findViewById(R.id.outputText)

        // ボタンのクリックリスナーを設定
        submitButton.setOnClickListener {
            // 入力されたテキストを取得
            val userInput = inputText.text.toString()

            // 入力されたテキストをTextViewに表示
            outputText.text = "あなたの入力: $userInput"
        }
    }
}
```
## 6.設定ファイル(gradle.ktsファイル）
```build.gradle.kts
plugins {
    alias(libs.plugins.android.application)
    alias(libs.plugins.kotlin.android)
    alias(libs.plugins.kotlin.compose)
}

android {
    namespace = "com.example.myfirstapp"
    compileSdk = 35

    defaultConfig {
        applicationId = "com.example.myfirstapp"
        minSdk = 21
        targetSdk = 35
        versionCode = 1
        versionName = "1.0"

        testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
    }

    buildTypes {
        release {
            isMinifyEnabled = false
            proguardFiles(
                getDefaultProguardFile("proguard-android-optimize.txt"),
                "proguard-rules.pro"
            )
        }
    }
    compileOptions {
        sourceCompatibility = JavaVersion.VERSION_11
        targetCompatibility = JavaVersion.VERSION_11
    }
    kotlinOptions {
        jvmTarget = "11"
    }
    buildFeatures {
        compose = true
    }
}

dependencies {

    implementation(libs.androidx.core.ktx)
    implementation(libs.androidx.lifecycle.runtime.ktx)
    implementation(libs.androidx.activity.compose)
    implementation(platform(libs.androidx.compose.bom))
    implementation(libs.androidx.ui)
    implementation(libs.androidx.ui.graphics)
    implementation(libs.androidx.ui.tooling.preview)
    implementation(libs.androidx.material3)
    testImplementation(libs.junit)
    androidTestImplementation(libs.androidx.junit)
    androidTestImplementation(libs.androidx.espresso.core)
    androidTestImplementation(platform(libs.androidx.compose.bom))
    androidTestImplementation(libs.androidx.ui.test.junit4)
    debugImplementation(libs.androidx.ui.tooling)
    debugImplementation(libs.androidx.ui.test.manifest)
}
```

## 7.終わりに
Andoroid Studioもこれまで触ったことがなく、簡素なデモでも動かすの苦戦したのでこれをきっかけに開発の幅を広げていきたいです。