jay jay - 10 days ago 6
Android Question

There is any Android API to record call conversation and/or automatically answer calls?

Scanned through the Android API (reference) documentation, but didn't find specific API that allows one to achieve the following:


  1. Be notified of an incoming call

  2. Automatically answer or reject the incoming call

  3. While a call is in progress, be able to capture the audio

  4. Play a pre-recorded message, after answering the call



The intention behind the questions, as most might have guessed, is to have an automated answering machine type of application. I have seen such applications on Nokia Symbian OS devices.

If such functionality requires rooting the device, I'd still be interested in knowing the API's available once rooted!

As an aside, is there are separate API reference documentation for API's available to rooted devices ?

Answer

For the latter parts of your question, No.

Imagine for a second there was, and you had an app installed that uses it. It could record your conversations and send them to a 3rd party. The app might not even disclose that it does this.

That sounds like it would be a huge security problem... Don't you agree?

It would appear I am mistaken about the call recording part - several apps available on google play (such as this, this, and this) does call recording, at least of the user making the call.

For #1, this is covered by marcin_j's answer

For #2, these SO answers show you can accept or reject a call programmatically.

For #3, I did a bit more detailed search on this, which reveals a related Stackoverflow question and answer, which provides info on recording audio (as per the above linked apps). Please keep in mind there are likely legal requirements around recording calls.

For #4 (playing a message to the caller), the only info I was able to find on this says it is not supported. It's hard to find much more info on this with so much clutter on search coming up with apps that are basically an audio version of caller id.

Most of these answers are on StackOverflow already; hopefully bringing it all together here helps you.