Chcę opracować aplikację, w której, jeśli dzwoniący zadzwoni, połączenie powinno zostać odebrane automatycznie bez udziału użytkownika, a dzwoniący może usłyszeć nagrany wcześniej głos, który jest już zapisany i zapisany. Plik audio powinien być w .wav format.I szukał pomocy w google, ale dowiedziałem się, że nie jest to możliwe w systemie Android, ale są pewne aplikacje na Androida, które mają tę samą funkcjonalność. Więc myślę, że jest jakaś możliwość. Przepraszam, jeśli pytanie jest błędne. Byłbym wdzięczny, gdyby ktoś mi pomógł. Używam Eclipse Helios z wtyczką ADT. Wypróbowałem poniższy kod, ale nie wyszło. Jeśli ktoś zna odpowiedź, pomóż mi. Użyłem odbiornika telewizyjnego do odczytania zmian stanu telefonu. W CALL_STATE_OFFHOOK napisałem poniższy kod.Jak wysłać nagrany plik (wav) podczas połączenia głosowego?
case TelephonyManager.CALL_STATE_OFFHOOK:
Toast.makeText(context, "Call Picked..", Toast.LENGTH_LONG) .show();
Log.d("received", "Call Picked....");
final MediaPlayer mPlayer = MediaPlayer.create(context, R.raw.music_file);
mPlayer.setAudioStreamType(AudioManager.STREAM_VOICE_CALL);
mPlayer.prepareAsync();
mPlayer.start();
mPlayer.setOnErrorListener(new OnErrorListener() {
@Override
public boolean onError(MediaPlayer mp, int what, int extra) {
// TODO Auto-generated method
mPlayer.reset();
return true;
}
});
AudioManager am=(AudioManager)context.getSystemService(Context.AUDIO_SERVICE);
am.setMode(AudioManager.MODE_IN_CALL);
am.setSpeakerphoneOn(false);
am.setMicrophoneMute(true);
Log.d("in call","sent audio");
mPlayer.reset();
mPlayer.release();
break;
Nie próbowałem tego jeszcze zaimplementować - po prostu robię małe badania. O ile rozumiem, jest to możliwe! Pomyśl przez chwilę o głośnikach Bluetooth i tym podobnych rzeczach. Przenoszą dźwięk do telefonu podczas rozmowy. Teraz potrzebuję tej funkcji. Spróbuję to rozgryźć. –
@YuraSokolov, znalazłeś coś jeszcze? Byłbym bardzo wdzięczny gdybyś mógł nas zaktualizować :) – longwalker
Nie, przepraszam @ longwalker, nie mogłem znaleźć rozwiązania. –