我希望在Android中创建一个应用程序,当来电来电时应该说出来电者的姓名或号码。我不知道我应该从哪里开始。谁能帮我? 我能否将android的默认语音应用程序包含到我的应用程序中
答案 0 :(得分: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} .....)