Developer's Blog

Android で電話番号を処理するための Intent

こんにちは、開発担当の西田です。

Sleipnir for Windows/Mac と連携する、現在開発中の Android アプリで電話を発信する必要があったので、電話番号に関する Intent について調べました。

 

ACTION_CALL

Intent intent = new Intent(Intent.ACTION_CALL, Uri.parse("tel:012345678"));
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);

ACTION_CALL で電話番号を投げるといきなり発信を開始します。

android-action_call

なお ACTION_CALL には以下のパーミッションが必要です。AndroidManifest.xml に追加をお忘れなく。

<uses-permission android:name="android.permission.CALL_PHONE"/>

ACTION_DIAL

Intent intent = new Intent(Intent.ACTION_DIAL, Uri.parse("tel:012345678"));
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);

ACTION_DIAL で電話番号を投げるとダイヤル画面を表示します。ここから発信したり電話帳に登録したりできます。

android-action_dial

なお、ACTION_DIAL にはとくにパーミッションは不要です。

ACTION_VIEW

Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("tel:012345678"));
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);

ACTION_VIEW は ACTION_DIAL と同じ動作になるようなので、あえて使う必要はなさそうです。

最後に

今開発中のアプリでは、デスクトップの Sleipnir ブラウザからダイレクトに Android スマートフォンで発信することができます。PC とスマートフォンを密に連携させるのは楽しいので、リリースを楽しみにしてください。

ソーシャルアカウント

Copyright © 2019 Fenrir Inc. All rights reserved.