1. How would you implement a periodical loop that checks if an update is available online.
You have to run a service(in the background of the app) which checks whether new version is available. You could use Alarm Manager to run service periodically.
2. How can the downloaded APK file be installed automatically without showing it in the file explorer? This article opens the explorer instead.
AFAIK, Only Google Play can do that. No other app has permissions to do that. Unless user explicitly says "Yes install it" by clicking install button.
3. Using an USB stick instead of Web-download needs to listen on android.intent.action.UMS_CONNECTED intent and then looking for a new APK file on the stick, right?
Yes, Even then I am not sure if the app updates automatically. Because it has the same problem (#2).