Skip to content

Details

(日本語は下にあります)

# Your First Android App — Build a Simple Database App with Java

Welcome to a small, hands-on Android development workshop!
In this workshop, we will build a simple Android application that stores data locally using Java and Android Room.
Room is an Android library that makes it easier and safer to work with local SQLite databases. It is useful for apps that need to store structured data such as notes, tasks, favorites, settings, or other information directly on an Android device.
Rather than spending most of the workshop creating the user interface from scratch, a prepared Android starter project will be provided through GitHub.
We will start with a working user interface and then gradually turn it into a real database-powered application.
By the end of the workshop, you will have an Android app that can save data locally and keep that data even after the application is closed and reopened.

## What We Will Build

We will create a simple Android database application using:

  • Java
  • Android Studio
  • XML layouts
  • RecyclerView
  • Android Room
  • SQLite database concepts
  • Entity classes
  • DAO (Data Access Object)
  • RoomDatabase
  • Basic CRUD operations

We will explore how the different parts of an Android application connect together:
Android UI → Java → Room → SQLite
During the workshop, we will implement features such as:

  • Adding data
  • Reading stored data
  • Displaying database records in the app
  • Deleting data
  • Keeping data after the application is restarted

The focus will be on understanding how Room works and how it connects your Java application code with a local SQLite database.

## We Will Set Up Android Studio Together

You do not need to have Android Studio installed before attending.
At the beginning of the workshop, we will install and configure Android Studio together.
This is intentional. Setting up a development environment is an important part of getting started with Android development, and I would like everyone to understand the tools they are using rather than simply receiving a preconfigured environment.
After Android Studio is ready, we will download the workshop project from GitHub, run it, and begin adding Room database functionality.
Please make sure you have administrator access to your computer so that you can install software during the workshop.
A stable internet connection will also be required because Android Studio and Android SDK components need to be downloaded.

## PC Requirements

Android Studio is a relatively demanding development environment, especially when running an Android emulator.
Please bring a laptop that meets the following requirements.

### Memory

16 GB RAM is strongly recommended.
Android Studio itself can run with 8 GB RAM, but running Android Studio together with an Android emulator requires considerably more memory.
If your computer has only 8 GB RAM, using a physical Android phone for testing instead of the emulator is recommended.

### Storage

Please have at least:
16 GB of free disk space
if you plan to use Android Studio together with the Android emulator.
Having 32 GB or more of free space is recommended.
An SSD is also strongly recommended.

### Operating System

Supported systems include:

  • 64-bit Windows 10 or later
  • macOS 12 or later
  • Modern 64-bit Linux distributions

For Windows and Linux computers, CPU virtualization support should be available and enabled if you want to use the Android emulator.

### Android Device

You do not necessarily need to bring an Android phone because we can use the Android Emulator included with Android Studio.
However, if you have an Android phone, bringing it is recommended.
Testing your own application on a real Android device can also be a fun part of the workshop.
Don't forget your USB cable if you would like to use your phone for development.
If you don’t have a spare Android device, I can also lend you one for the workshop.

## Workshop Style

This is a hands-on coding workshop, not a lecture.
We will write, run, modify, and debug Android code together.
A starter project will be provided through GitHub. The user interface will already be prepared so that we can concentrate on understanding Room and database programming rather than spending the entire workshop designing screens.
We will build the database functionality step by step.
Working checkpoints will also be prepared so that if you encounter a coding problem, you can recover and continue with the rest of the workshop.
Questions are encouraged!

## Who Is This Workshop For?

This workshop is suitable for people who:

  • Have some basic programming experience
  • Are interested in Android app development
  • Want to learn how Android applications store data locally
  • Have used Java before, even at a beginner level
  • Have little or no previous experience with Android Room
  • Want hands-on experience building a real Android application

You do not need previous experience with Room or SQLite.
Some familiarity with Java or another programming language is recommended because the main goal of this workshop is Android development and database programming rather than learning basic programming syntax from scratch.

## Maximum 2 Participants

This workshop is intentionally limited to only 2 participants.
Android development often involves individual issues such as development-environment configuration, Gradle errors, emulator problems, and programming mistakes that are much easier to solve with individual assistance.
By keeping the group extremely small, I can spend time helping each participant directly and adjust the pace according to everyone's progress.
This is intended to be much closer to a small-group coding session than a large classroom lecture.
The goal is not to rush through as much material as possible.
The goal is for both participants to understand the basic Room architecture and leave with a working Android database application.

## About the Instructor

I am a professional Android application developer with experience developing Android applications in a real-world software-development environment.
In this workshop, I would like to share practical Android development experience while keeping the course approachable for people who are still getting started.
Because the group is limited to only two participants, there will also be plenty of opportunity to ask questions about Android development, Java, development tools, and the concepts we encounter while building the application.

## What to Bring

Please bring:

  • A laptop that meets the requirements above
  • Your laptop charger
  • Administrator access to your computer
  • A GitHub account
  • An Android phone and USB cable if you would like to test on a physical device
  • Your curiosity!

Android Studio does not need to be installed beforehand.
We will set everything up and start building together.
If you've ever wondered what happens behind the screen when an Android app saves your data, this workshop is a chance to build that system yourself.
can you make the Japanese version?

## How to Find Us

The workshop will be held at Tully's Coffee inside MARK IS Minatomirai.
I will be waiting near the entrance of the MARK IS Minatomirai building before the event starts, holding a Meetup sign so you can easily spot me.
Once everyone has arrived, we will head to Tully's Coffee together.
If you have trouble finding the entrance or cannot find me, please send me a message through Meetup.

----------

# はじめてのAndroidアプリ — Javaでシンプルなデータベースアプリを作ろう

少人数制の、実践的なAndroid開発ワークショップへようこそ!
このワークショップでは、JavaとAndroid Roomを使って、端末内にデータを保存できるシンプルなAndroidアプリを作ります。
Roomは、AndroidでSQLiteデータベースをより簡単かつ安全に扱うためのライブラリです。メモ、タスク、お気に入り、設定情報など、アプリ内で構造化されたデータを保存する際に利用できます。
このワークショップでは、UIを一から作ることに時間をかけるのではなく、あらかじめ用意したAndroidのスタータープロジェクトをGitHubから提供します。
最初はUIだけが動作する状態からスタートし、そこに少しずつデータベース機能を追加していきます。
ワークショップの最後には、アプリを終了して再起動してもデータが残る、シンプルなAndroidデータベースアプリが完成します。

## このワークショップで作るもの

以下の技術を使って、シンプルなAndroidデータベースアプリを作成します。

  • Java
  • Android Studio
  • XMLレイアウト
  • RecyclerView
  • Android Room
  • SQLiteの基本概念
  • Entityクラス
  • DAO(Data Access Object)
  • RoomDatabase
  • 基本的なCRUD操作

Androidアプリの各要素がどのようにつながっているのかも学びます。
Android UI → Java → Room → SQLite
ワークショップでは、実際に以下のような機能を実装します。

  • データの追加
  • 保存されたデータの読み込み
  • データベースの内容をアプリ上に表示
  • データの削除
  • アプリを再起動してもデータを保持

Roomがどのように動作し、JavaのアプリケーションコードとSQLiteデータベースをどのようにつないでいるのかを理解することを目標とします。

## Android Studioのセットアップから一緒に行います

参加前にAndroid Studioをインストールしておく必要はありません。
ワークショップの最初に、Android Studioのインストールと基本的なセットアップを一緒に行います。
開発環境を準備することも、Android開発を始めるうえで大切なステップの一つです。そのため、あらかじめすべて用意された環境を使うのではなく、実際に自分のPCで環境構築を体験していただきます。
Android Studioの準備ができたら、GitHubからワークショップ用のプロジェクトをダウンロードし、実際に起動したうえでRoomのデータベース機能を追加していきます。
ワークショップ中にソフトウェアをインストールするため、お使いのPCで管理者権限を利用できる状態にしておいてください。
Android StudioやAndroid SDKなどをダウンロードするため、安定したインターネット接続も必要です。

## PC要件

Android Studioは比較的負荷の高い開発環境です。特にAndroid Emulatorを使用する場合は、ある程度のPC性能が必要になります。
以下を目安に、ノートPCをご用意ください。

### メモリ

16GB RAMを強く推奨します。
Android Studio自体は8GB RAMでも動作しますが、Android Emulatorも同時に使用すると、より多くのメモリが必要になります。
8GB RAMのPCをお使いの場合は、エミュレーターではなく、実機のAndroidスマートフォンを使って動作確認することをおすすめします。

### ストレージ

Android StudioとAndroid Emulatorを使用する場合は、少なくとも
16GB以上の空き容量
をご用意ください。
できれば、32GB以上の空き容量を推奨します。
また、SSD搭載のPCを強くおすすめします。

### 対応OS

以下のような64bit OSをご利用ください。

  • Windows 10以降(64bit)
  • macOS 12以降
  • 比較的新しい64bit Linuxディストリビューション

WindowsまたはLinuxでAndroid Emulatorを使用する場合は、CPUの仮想化機能が利用可能で、有効になっている必要があります。

### Android端末

Android StudioにはAndroid Emulatorが含まれているため、必ずしもAndroidスマートフォンを持参する必要はありません。
ただし、Androidスマートフォンをお持ちの場合は、ぜひ持参することをおすすめします。
自分のスマートフォン上で、自分が作ったAndroidアプリを実際に動かしてみるのも、このワークショップの楽しみの一つです。
実機でテストしたい場合は、USBケーブルも忘れずにお持ちください。
もしワークショップで使用できるAndroid端末をお持ちでない場合は、こちらで端末をお貸しすることも可能です。

## ワークショップのスタイル

このワークショップは、講義を聞くだけの形式ではなく、実際にコードを書きながら進めるハンズオン形式です。
一緒にコードを書き、実行し、修正し、デバッグしながらAndroidアプリを作っていきます。
GitHubからスタータープロジェクトを提供します。UI部分はあらかじめ用意してあるため、画面デザインに時間を使うのではなく、Roomやデータベース処理の理解に集中できます。
データベース機能は、ステップごとに少しずつ実装していきます。
途中でコードが動かなくなった場合でも続けられるように、動作確認済みのチェックポイントも用意する予定です。
質問も大歓迎です!

## こんな方におすすめ

このワークショップは、以下のような方におすすめです。

  • プログラミングの基本的な経験がある方
  • Androidアプリ開発に興味がある方
  • Androidアプリがどのようにデータを保存しているのか知りたい方
  • Javaを少しでも使ったことがある方
  • Android Roomをほとんど、またはまったく使ったことがない方
  • 実際にAndroidアプリを作りながら学びたい方

RoomやSQLiteの経験は必要ありません。
ただし、このワークショップではプログラミングの文法そのものではなく、Android開発やデータベース処理を中心に扱うため、Javaまたは他のプログラミング言語を少しでも使った経験があることをおすすめします。

## 定員2名

このワークショップは、最大2名までの少人数制です。
Android開発では、開発環境の設定、Gradleエラー、エミュレーターの問題、コードのミスなど、参加者ごとに異なる問題が起こることがあります。
定員をあえて2名にすることで、一人ひとりの進み具合を確認しながら、必要に応じて個別にサポートできるようにしています。
大人数向けの講義というよりも、少人数で一緒にコードを書いて進めるセッションに近い形式です。
できるだけ多くの内容を急いで詰め込むことが目的ではありません。
参加された方がRoomの基本的な仕組みを理解し、最後に実際に動作するAndroidデータベースアプリを完成させることを目標としています。

## 講師について

私は、実際のソフトウェア開発の現場でAndroidアプリ開発に携わっているプロのAndroidアプリ開発者です。
このワークショップでは、これまでの実務でのAndroid開発経験も交えながら、これからAndroid開発を学びたい方にも分かりやすい形で進めていきます。
定員は2名のみなので、Android開発、Java、開発ツール、そのほかワークショップ中に出てきた技術について、気軽に質問していただけます。

## 持ち物

以下をご用意ください。

  • 上記の要件を満たすノートPC
  • PCの充電器
  • PCの管理者権限
  • GitHubアカウント
  • 実機でテストしたい場合はAndroidスマートフォンとUSBケーブル
  • 新しいことを試してみたい気持ち!

Android Studioは、事前にインストールしておく必要はありません。
ワークショップ当日に、一緒に環境構築からスタートします。
「Androidアプリが、画面の裏側でどうやってデータを保存しているんだろう?」
そんなことに興味がある方は、ぜひこのワークショップで実際にその仕組みを作ってみましょう。

## 集合場所について

ワークショップは、MARK IS みなとみらい内のタリーズコーヒーで開催します。

イベント開始前は、MARK IS みなとみらいの入口付近で、見つけやすいようにMeetupのサインボードを持ってお待ちしています。
参加者の皆さんがそろいましたら、一緒にタリーズコーヒーへ移動します。

入口の場所が分からない場合や、私を見つけられない場合は、Meetupのメッセージからお気軽にご連絡ください。

Related topics

Events in Yokohama, JP
Software Architecture
Android
Android App Architecture
Mobile Development
Software Development

You may also like