This tutorial will explain to stat an application while the Android device boot-up. For this, we need to listen to the BOOT_COMPLETED action and react to it.

BOOT_COMPLETED is a Broadcast Action that is broadcast once, after the system has finished booting. You can listen to this action by creating a BroadcastReceiver that then starts your launch Activity when it receives an intent with the BOOT_COMPLETED action.

Install the application, and then restart the device. You can see the application will start after the device restarts.
An implementation of background services starting with Activity, it explains here.