Ответ 1
Вам нужно сделать свое приложение в сервисе. Здесь андроиды берут на себя создание компонентов сервиса:
http://developer.android.com/guide/components/services.html
Обнаружено это также на MobiWare:
Если вы хотите отслеживать использование мобильного устройства или собирать некоторые данные без каких-либо знаний пользователя, это может вам помочь.
Шаг 1: создайте приложение без значка. Обычно в манифесте активность объявляется следующим образом.
<activity
android:label="@string/app_name"
android:name="org.security.tracker.Tracker-activity" >
<intent-filter >
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
Удалите TAG категории, вы больше не получите значок приложения. Теперь вам больше не нужна деятельность. поэтому удалите этот сегмент. BUt, вы можете подумать, как приложение будет работать без какого-либо триггера или в качестве отправной точки приложения. Это решение.
<!-- Start the Service if applicable on boot -->
<receiver android:name="org.security.tracker.ServiceStarter" >
<intent-filter >
<action android:name="android.intent.action.BOOT_COMPLETED" />
</intent-filter>
</receiver>
Это приводит к запуску вашего кода, написанного там в Receiver, и вы можете запускать службу, чтобы реализовать свои мысли.
<service android:name="org.security.tracker.serviceCode" />
Вам нужно добавить это разрешение,
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
Ваш код запускается, только когда телефон перезагружается.
Шаг 2. Напишите свой код
В разделе "Перезагрузка" будет срабатывать приемник, там вы можете начать свое обслуживание.
class ServiceStarter extends BroadcastReceiver {
@Override
public void onReceive(Context _context, Intent _intent) {
Intent i = new Intent("com.prac.test.MyPersistingService");
i.setClass(_context, ServiceCode.class);
_context.startService(i);
}
}