Android - Запуск службы при загрузке

Из всего, что я видел на Stack Exchange и в других местах, у меня все настроено правильно, чтобы запускать IntentService при загрузке ОС Android. К сожалению, он не запускается при загрузке, и я не получаю никаких ошибок. Может быть, эксперты могут помочь ...

Манифест:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
  package="com.phx.batterylogger"
  android:versionCode="1"
  android:versionName="1.0"
  android:installLocation="internalOnly">

<uses-sdk android:minSdkVersion="8" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.BATTERY_STATS" />

<application android:icon="@drawable/icon" android:label="@string/app_name">
    <service android:name=".BatteryLogger"/>
    <receiver android:name=".StartupIntentReceiver">  
        <intent-filter>  
            <action android:name="android.intent.action.BOOT_COMPLETED" />  
        </intent-filter>  
    </receiver>
</application>

</manifest>

BroadcastReceiver для запуска:

package com.phx.batterylogger;

import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;

public class StartupIntentReceiver extends BroadcastReceiver {
    @Override
    public void onReceive(Context context, Intent intent) {
        Intent serviceIntent = new Intent(context, BatteryLogger.class);
        context.startService(serviceIntent);
    }
}

ОБНОВЛЕНИЕ : Я попробовал почти все предложения, приведенные ниже, и добавил ведение журнала, например Log.v ("BatteryLogger", "Получил onReceive, собирается запустить службу"); обработчику onReceive StartupIntentReceiver, и ничего никогда не регистрируется. Так что он даже не попадает в BroadcastReceiver.

Я думаю, что развертываю APK и тестирую правильно, просто запускаю Debug в Eclipse, и консоль сообщает, что успешно устанавливает его на мой планшет Xoom в \ BatteryLogger \ bin \ BatteryLogger.apk. Затем, чтобы проверить, я перезагружаю планшет, а затем смотрю логи в DDMS и проверяю запущенные службы в настройках ОС. Все это звучит правильно, или я что-то упускаю? Опять же, любая помощь приветствуется.

95
задан Gady 7 October 2011 в 20:20
поделиться