Thanks ffe, but I'm looking for something that does not require an external server. I've managed to prototype this using Bitcoinj, if anyone knows of a better/simpler solution, I'm all ears. Again, this must receive/parse transaction data from the Bitcoin network, not talk to a server.
Coincidentally, I just wrote an app for a very similar purpose. The only difference is that it takes an Electrum public master key instead of a single address but it's much smaller than bitcoinj or anything else so you can easily modify the code for your needs.
https://github.com/hhanh00/spvwallet