Dialerアプリケーション
Googleアプリケーションとしてプレインストールされている「Dialer」アプリケーションは、
「電話をかける」「電話をかける画面を表示する」機能を、インテントとして公開しているため、
任意のアプリケーションから、ソースコードレベルで電話をかけることができます。

公開されているインテントの仕様は、以下にあります。
http://developer.android.com/guide/appendix/g-app-intents.html
ここでは、「Dialer」アプリケーションのインテントアクションである「CALL」「DIAL」について、順に説明していきます。
電話をかけるには
インテントアクション「CALL」は、電話をかけるためのインテントアクションであり、
android.contentパッケージ、Intentクラスの定数 Intent.ACTION_CALL として定義されています。
インテントを利用するには、インテントのインスタンスを作成する必要がありますが、ここでは、
インテントのコンストラクタの第1引数に、インテントアクションとして、Intent.ACTION_CALL、
第2引数のUriに、Uri.parse("tel:0123456789")など、tel:で始まる電話番号を指定します。
- ソースコード(*.java)
Intent intent = new Intent(
Intent.ACTION_CALL,
Uri.parse("tel:0123456789"));
startActivity(intent);
また、このインテントアクションを利用するためには、マニフェスト(Manifest)ファイルにCALL_PHONEのパーミッションを追加する必要です。
- マニフェストファイル(AndroidManifest.xml)
<uses-permission android:name="android.permission.CALL_PHONE"/>
- 実行画面

電話をかける画面を表示するには
上記説明のIntent.ACTION_CALLを、Intent.ACTION_DIALに変更することで、
電話をかける手前の段階である、電話をかける画面を表示することもできます。
この場合の、インテントの第2引数は、先と同様ですが、
このインテントアクションのみ利用する場合には、先のCALL_PHONEパーミッションは不要です。
- ソースコード(*.java)
Intent intent = new Intent(
Intent.ACTION_DIAL,
Uri.parse("tel:0123456789"));
startActivity(intent);
- 実行画面
