Androidアプリの作り方

AndroidManifest.xmlの設定

AndroidManifest.xmlはパッケージ名、パーミッション、アイコンなどのアプリの基本的な情報を定義します。

<?xml version="1.0" encoding="utf-8"?><!-- xmlのバージョンと文字エンコーディング宣言 -->
<manifest xmlns:android="https://schemas.android.com/apk/res/android"<!-- Android名前空間の定義(固定設定) -->
    package="orust.co.jp.myapplication"<!-- パッケージ名(GooglePlayのURL) -->
    <uses-permission android:name="android.permission.INTERNET"/><!-- インターネットに接続するためのパーミッション設定 -->
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/><!-- 外部ストレージに書き込むためのパーミッション設定 -->
    <application<!-- アプリの内部構造 -->
        android:allowBackup="true"<!-- バックアップ処理(trueで有効) -->
        android:icon="@mipmap/ic_launcher"<!-- アイコン画像の設定(保存場所はres\drawableフォルダからres\mipmapフォルダに変更推奨) -->
        android:label="@string/app_name"<!-- ホーム画面やアプリ一覧で表示されるタイトル(res\valuesフォルダのstrings.xmlに記述) -->
        android:supportsRtl="true"<右から左に記述する言語の設定>
        android:theme="@style/AppTheme" ><!-- 各画面のスタイル設定(文字色や背景などcssみたいなもの。res\valuesフォルダのstyles.xmlに記述。AndroidAPIレベルが14以上に使える) -->
        <activity<!-- Activityは画面 ⇒ 1つの画面を1つのActivityで管理 Activity(画面)を1つ追加する場合はActivityタグも1つ追加 -->
            android:name=".MainActivity"<!-- Activityファイルのパスを指定(Activity名だけの省略で可) -->
            android:label="@string/app_name" ><!-- アクティビティ内でのタイトル表示 -->
            <intent-filter><!-- 他のアプリとの連携や起動などを記述(Action、Category、Dataの3種類) -->
                <action android:name="android.intent.action.MAIN" /><!-- このActivity(画面)がアプリのトップ画面であることを示す -->
                <category android:name="android.intent.category.LAUNCHER" /><!-- ホームのアイコンから起動可能であることを示す -->
            </intent-filter>
        </activity>
    </application>

</manifest>

パーミッションの設定

パーミッションとは情報(連絡先など)や機能(カメラなど)、他のアプリへのアクセスなどの権限のこと

主なパーミッション

種類 説明
CALL_PHONE 電話発信
CAMERA カメラの使用
READ_CONTACTS 電話帳データの読み取り
INTERNET ネットワークの利用
ACCESS_NETWORK_STATE ネットワーク状態の取得
BATTERY_STATS バッテリー状態の取得
WRITE_EXTERNAL_STORAGE 外部記憶装置(SDカードなど)の利用

画面の向きを指定

縦固定

android:screenOrientation="portrait"

横固定

android:screenOrientation="landscape"

インテントフィルタの設定

インテントとは他のアプリとの連携や起動などActivity(画面)間を遷移する仕組み
暗黙的インテントで呼び出されるようにするには、呼び出される側のアプリケーションにインテントフィルタの設定が必要で、actionタグ、categoryタグ、dataタグの3種類の設定がある。

actionタグ(抜粋)

定数 意味
ACTION_ANSWER 電話の着信を処理
ACTION_BATTERY_LOW 「バッテリーの残量警告」システムダイアログに対応
ACTION_CALL Aデータで指定された人に電話をかける
ACTION_DEFAULT ACTION_VIEWの同義語
ACTION_DIAL データによって指定された番号をダイヤル
ACTION_EDIT 指定されたデータへの明示的な編集可能なアクセスを提供
ACTION_MAIN アプリケーション起動時のアクションで通常、最初に起動するアクティビティに対して設定
ACTION_RUN データを実行
ACTION_SEARCH 検索を実行
ACTION_VIEW ユーザーにデータを表示
ACTION_WEB_SEARCH ウェブ検索を実行

categoryタグ(抜粋)

定数 意味
CATEGORY_BROWSABLE ブラウザから安全に呼び出すことが可能
CATEGORY_DEFAULT 標準カテゴリ
CATEGORY_HOME デバイスの起動時に最初に表示されるアクティビティ
CATEGORY_INFO パッケージの情報を提供
CATEGORY_LAUNCHER ホーム画面のアイコンから起動可能であることを示す

dataタグ(抜粋)

属性 説明
android:scheme URIのスキームを指定。最低限必要な属性
android:host URIのホストを指定
android:port URIのポート番号を指定
android:path URIのパスの部分。フルパスを指定