feat: Automate versioning and enhance release workflow
This commit introduces several improvements to the project's versioning and release process:
- **Automated Versioning**:
- `versionName` is now read from a new `version.txt` file at the project root.
- `versionCode` is dynamically generated based on the Git commit count.
- A helper function `runCommand` is added to `app/build.gradle.kts` to execute shell commands.
- **GitHub Actions Release Workflow Enhancements**:
- The workflow now fetches the full Git history (`fetch-depth: 0`) to enable `versionCode` generation.
- The "Build APK" step is renamed to "Build Release APK" for clarity.
- Version name is now sourced from `version.txt` instead of a Gradle task.
- The step to create a GitHub Release is renamed to "Upload APK to GitHub Release".
- A new step "Upload APK as Artifact" is added to store the release APK as a workflow artifact.
- **Application Name Update**:
- The `app_name` string resource in `app/src/main/res/values/strings.xml` has been changed from "Jetpack Boilerplate" to "Material 3 Expressive Catalog". C
Cavin committed
14a2a34041bcada436ebc82cc048c444c0f221dc
Parent: 5f57c1b