0

私はAndroid開発の初心者です。発信者番号にプレフィックスを追加するアプリケーションを作成したいのですが、この決定はいくつかのパラメーターに依存します。

ユーザーにそれを認識してもらいたいのですが、それについて何もする必要はありません。つまり、アプリケーションがインストールされ、ユーザーが電話をかけたい場合、プレフィックスが番号に追加されることがわかります。呼んでいます。

問題は、発信者番号にプレフィックスを追加する方法ではありません (ただし、それは私が知りたいことでもありますが、それに関する記事を見つけました)。

1) サービスになるのか?

2)プレフィックスを追加し発信者番号を変更し、変更された番号をユーザーに表示して、ユーザーがそれについて何もする必要がないようにすることは可能ですか (これを受け入れるために「はい」、「いいえ」を押すなど) ?

4

1 に答える 1

1

に登録する必要がありますIntent.ACTION_NEW_OUTGOING_CALL

ブロードキャスト アクション: 発信通話が行われようとしています。

インテントには、次の追加の値があります。

EXTRA_PHONE_NUMBER - 最初にダイヤルする予定だった電話番号。ブロードキャストが終了すると、resultData が実際の電話番号として使用されます。null の場合、コールは発信されません。

複数の受信者が発信通話を順番に処理することはまったく問題ありません。指定されていませんでした。

一貫性を保つために、電話をかけることを禁止することを目的とする受信者は、優先度を 0 にして、ダイヤルする最終的な電話番号を確実に認識できるようにする必要があります。呼び出される電話番号を書き換えることを目的とする受信者は、肯定的な優先順位を持つ必要があります。負の優先度は、このブロードキャストのシステム用に予約されています。それらを使用すると、問題が発生する場合があります。

この Intent を受信する BroadcastReceiver は、ブロードキャストを中止してはなりません。

このメカニズムを使用して緊急コールを傍受することはできません。また、このメカニズムを使用して緊急番号を呼び出すように他のコールを変更することもできません。

一部のアプリ (VoIP アプリなど) は、代わりに独自のサービスを使用するために発信通話をリダイレクトする必要がある場合があります。これらのアプリは、最初に resultData を null に設定して呼び出しが行われないようにしてから、独自のアプリを起動して呼び出しを行う必要があります。

このインテントを受け取るには、PROCESS_OUTGOING_CALLS 権限を持っている必要があります。

これは、システムによってのみ送信できる保護されたインテントです。

定数値:「android.intent.action.NEW_OUTGOING_CALL」

于 2013-07-07T03:31:56.163 に答える