I was wondering if it is possible in Android to write an app that runs in the background and gets the text entered into a TextField of another app. More concretely, is it possible to have an app run in the background that allows to obtain the content that is typed in the textfield for sending messages in WhatsApp or gtalk? Imagine for instance that before sending the content through WhatsApp, I want to preprocess the text and only then send it, but this pre-processing shall be somehow automatic.

On a desktop this is possible to build but I am not sure if one can build this for Android phone devices. Maybe one could catch all inputs done with a keyboard that are sent to a certain app, but I guess this is not possible to prevent keyloggers etc. Is there any alternative to achieve this goal?

I would like to do it without rooting the phone.

Essentially, what I want to do is to have a keyboard where the user can type using the standard english letters but the typing is automatically translated to hindi text + some annotation added after each word.

  • 1
    I would expect not, since Android apps are supposed to be sandboxed from each other. I suppose a rogue keyboard app could do it.
    – ale
    Commented Nov 23, 2013 at 20:40

1 Answer 1


A keyboard can do this - that's how a keyboard works, after all. Not only that, but for some scripts, what you describe is the most common way to enter text. For example, in Japanese, one enters む by typing "mu" (the Latin characters representing the same sound).

You can't do it with a normal app without rooting. Anything else would be a big security flaw.

  • Is this still true in 2019?
    – ripper234
    Commented Sep 18, 2019 at 6:25
  • 1
    @ripper234 You should ask a new question about your use-case. Link to this question if it helps provide context.
    – Dan Hulme
    Commented Sep 18, 2019 at 8:26

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .