2012-04-25 11 views
5

AndroidのSDKから電話をかけている番号を非表示にすることはできますか?これを考慮してください:プライベートコールを行いたいのですが、多くの人がプライベート番号をブロックするので、*67を使用したくありません。これは医師が定期的に行うことです。彼らは携帯電話から電話をかけますが、患者に自分のプライベートセル番号を持たせたくありません。Androidが仮想番号から電話する

私たちが医師のためのアプリを作っていると想像してください。アプリには連絡先の一覧が表示され、連絡先がクリックされて電話がかけられますが、この電話の発信者番号は隠されます。たとえば、実際の携帯電話番号とは異なるGoogle Voice番号があり、この番号で電話を受けることができます。プログラムでGoogle Voice経由で電話をかける方法はありますか?

コールにいくつかのイベントリスナーを登録して、コールが終了したときにアプリケーションがそれを認識できるようにすることはできますか?

+0

をあなたは知って呼び出されたくない誰かに控えめな電話を支援することができSlydialと呼ばれる偉大なアプリがあります。私はそれがあなたの質問に直接関係していないことを知っていますが、チェックする価値があります。 – Shades

+0

この興味深いアプリを指摘してくれてありがとう。それは関連しているのは、あなたが電話をかけた人が発信者IDにSlydial番号を表示すると思うからです。 – Thorn

+0

Slydialはボイスメールにまっすぐにあなたを送りますが、あなたの電話番号を隠すことはありません。ただし、Google Voice番号をお持ちの場合、お使いの携帯電話用のGoogle Voiceアプリを入手する場合は、設定を使用して音声番号からSlydial通話を発信できます。あなたの声番号はあなたの電話ではなく、表示されている番号です。 –

答えて

2

これにはtelephony apiを使用するthis linkを確認できます。セクション15.1.3 Example: Determining the State of a Callを確認してください。

また、私はここにサンプルコードを貼り付けています:

private class ListenToPhoneState extends PhoneStateListener { 

public void onCallStateChanged(int state, String incomingNumber) { 
    Log.i("telephony-example", "State changed: " + stateName(state)); 
} 

String stateName(int state) { 
    switch (state) { 
     case TelephonyManager.CALL_STATE_IDLE: return "Idle"; 
     case TelephonyManager.CALL_STATE_OFFHOOK: return "Off hook"; 
     case TelephonyManager.CALL_STATE_RINGING: return "Ringing"; 
    } 
    return Integer.toString(state); 
    } 
} 
+2

リンクは機能していません –

関連する問題