2013-03-13 155 views
2

我希望在拨打电话时拨打主叫方姓名或号码的android应用程序。我不知道应该从哪里开始。谁能帮我? 我可以能够包括Android的默认语音应用到我的应用程序在android中拨打电话的来电显示号码

+0

在谷歌搜索 – DjHacktorReborn 2013-03-13 06:04:11

+0

关键字我用Google搜索了很多次,但我无法找到任何解决方案 – 2013-03-13 06:05:50

回答

1

我没有这样做,但你可以先试试这件事情

寄存器MyPhoneStateListener。

private class MyPhoneStateListener1 extends PhoneStateListener { 
    @Override 
    public void onCallStateChanged(int state, String incomingNumber) { 
     super.onCallStateChanged(state, incomingNumber); 
     if (state == TelephonyManager.CALL_STATE_RINGING) { 
          // the incoming number is is the one you wanted 
     } 
    } 
} 

现在使用一些TextToSpeech API将传入的号码转换为语音。我没有使用TextToSpeech,所以不能给出更多的建议。

,如果你想获得的名称,然后使用以下方法来获取联系人姓名

Uri uri = Uri.withAppendedPath(PhoneLookup.CONTENT_FILTER_URI, Uri.encode(phoneNumber)); 
resolver.query(uri, new String[]{PhoneLookup.DISPLAY_NAME} .....) 
+0

我也想过你的建议,但它会覆盖铃声?而不是铃声它应该说联系人的名字... – 2013-03-13 06:26:20

+0

我不知道这个,因为我还没有尝试,但这是唯一的方法,你可以尝试。如果不起作用,那么没有办法做到这一点没有自定义ROM .. – stinepike 2013-03-13 06:28:58