Basic idea of auto-update is putting your new software somewhere your application know and can download from. Obviously you will need some sort of versioning in your application. Application should check for updates periodically, and if the online version is newer than current version it should download and update preferably by asking to the user if he/she wants to update.
Commonsguy has a library for this. It is a suspended project but it should give you the basic idea and you can even write your own library after that. cwac-updater here you go.