Android Interview Questions (随時更新)

github.com

Core Android

Base

すべてのAndroidアプリケーションのコンポーネントを教えてください。

  • Activty
  • Service
  • BroadcastReceiver
  • ContentProvider

コンポーネントは、システムやユーザーがアプリに入るエントリポイント

Application Fundamentals  |  Android Developers

Androidアプリのプロジェクト構成を教えてください。

モジュール

  • Android アプリ モジュール
  • ダイナミック機能モジュール(ストア上のInstant版)
  • ライブラリ モジュール
  • Google Cloud モジュール(GCPバックエンドコード)

Projects overview  |  Android Developers

Contextとは何ですか?どのように使われていますか?

アプリケーションの現在の状態。アクティビティやアプリケーションに関する情報を得るために使用する。 ApplicationContext, ActivityContextは場所によって使い分けるが吉。ContentProviderなど、アプリのライフサイクルに紐づくもの(Singleton - ライフサイクルがアプリケーションのライフサイクルに付随している)はApplicationContext。反対にアクティビティ内でUI操作などを行う際には、ActivityContextを使用する。

AndroidManifest.xmlとは?

アプリに関する重要な情報を Android ビルドツール、Android オペレーティングシステムGoogle Playに対して説明するもの。アプリの各コンポーネントはここで宣言しなければならない。

Applicationクラスとは?

ActivityやServiceなどの他のすべてのコンポーネントを含む Android アプリ内のBase classです。アプリケーションクラスまたはアプリケーションクラスのサブクラスは、アプリケーション/パッケージのプロセスが作成されたときに、他のクラスよりも先にインスタンス化されます