Google has an advanced diff tool specifically designed for compiled binaries called Courgette.
Is there any reason why they wouldn't use this in Android and the Google Play Store to download updates? In my basic understanding of Java, it seems like it shouldn't be any more difficult (perhaps even easier?) to create 'diffs' like this because of Java's "bytecode" nature. Am I wrong? Are there any security reasons?
Note: I know that unless someone from Google responds, we won't know for sure. But I'm asking for any obvious reasons - I'm an Android developer and sometimes get notes from people complaining about frequent updates, so it is somewhat relevant to me. :)