00

ガイド

ANDROID INTERVIEW Qs

Android開発者を採用する際の技術面接で使える質問と模範回答。Activity/Fragmentライフサイクル、Jetpack Compose、Kotlin Coroutines、Room、WorkManager、パフォーマンス最適化などを網羅。

最終更新:2026年5月

01

ActivityとFragmentのライフサイクルの違いを説明してください

ActivityはonCreate、onStart、onResume、onPause、onStop、onDestroyのライフサイクルを持ち、アプリの主要な画面単位です。FragmentはActivityに依存し、onAttach、onCreate、onCreateView、onViewCreated、onStart、onResume、onPause、onStop、onDestroyView、onDestroy、onDetachのライフサイクルを持ちます。FragmentはUIの再利用とモジュール化に優れ、ViewPagerやJetpack Navigationでの画面遷移に広く使われます。

02

Jetpack Composeと従来のXMLレイアウトの違いは何ですか?

Jetpack Composeは宣言的なUIツールキットで、KotlinコードでUIを記述します。XMLレイアウトは手続き的で、findViewByIdやData Bindingが必要です。Composeはプレビュー機能、状態駆動の再構成、Modifierによる柔軟なスタイリングが強みです。新規プロジェクトではGoogleがComposeを推奨しており、従来のViewシステムはメンテナンスモードに入っています。

03

AndroidでのKotlin Coroutinesの使い方を説明してください

ViewModelのviewModelScopeやLifecycleのlifecycleScopeでCoroutineを起動し、メインスレッドをブロックせずに非同期処理を実行します。Dispatchers.IOでネットワークやDB処理、Dispatchers.MainでUI更新を行います。Flowを使うことで、ライフサイクルに応じた自動購読(repeatOnLifecycle)が可能になり、メモリリークを防ぎます。

04

RoomとRealmの違いを教えてください

RoomはSQLiteの抽象化レイヤーで、Google公式のJetpackライブラリです。SQLベースでMigrationが明確で、LiveDataやFlowとの統合が充実しています。Realmはモバイル専用のNoSQLデータベースで、オブジェクトをそのまま永続化でき、パフォーマンスが高いですが、コミュニティサポートが縮小傾向にあり、新規プロジェクトではRoomが推奨されます。

05

WorkManagerの用途とメリットは何ですか?

WorkManagerは、デバイス再起動後も保証されるバックグラウンド処理のためのJetpackライブラリです。ネットワーク制約、充電状態、遅延実行などの条件を設定でき、OneTimeWorkRequestとPeriodicWorkRequestに対応します。DozeモードやApp Standbyにも対応しており、信頼性の高いバックグラウンドジョブを実装できます。

06

Androidアプリのパフォーマンスを最適化する方法を教えてください

RecyclerViewのViewHolderパターンでリスト描画を最適化、メモリリークを避けるために弱参照やLifecycle-awareコンポーネントを使用、BitmapのinSampleSizeで画像メモリを削減、StrictModeでメインスレッド違反を検出、ProGuard/R8でコードを縮小、Baseline Profilesで起動時間を短縮します。

07

お問い合わせ

Android開発者を探していますか?

技術面接のサポート、採用プロセスの相談、または直接Androidエンジニアとして参画することも可能です。

Android開発者向け面接質問 2026 | Code Your Reality