2013-03-07 2 views
2

Я очень новичок в Android, и я пытаюсь понять эту услугу.Почему услуги не начинаются в моем случае?

Мой файл манифеста выглядит:

<!--The invoice launcher service--> 
    <service android:process=":invoice_background" 
      android:name="InvoiceManagerService" 
      android:label="invoice_service" /> 

    <!--The receiver--> 
    <receiver android:name="InvoiceStartupReceiver" 
       android:process=":invoice_background"> 
     <intent-filter> 
      <action android:name="android.intent.action.BOOT_COMPLETED" /> 
     </intent-filter> 
    </receiver> 

Моя служба выглядит следующим образом:

public class InvoiceManagerService extends Service { 

    public IBinder onBind(Intent intent) { 
     return null; 
    } 
} 

и мой приемник выглядит следующим образом:

public class InvoiceStartupReceiver extends BroadcastReceiver { 

    public void onReceive(Context context, Intent intent) { 

     Intent invoiceService = new Intent(context, InvoiceManagerService.class); 
     context.startService(invoiceService); 


    } 
} 

Мое приложение становится выполняться без каких-либо ошибок. Но никаких сервисов не было создано! Где я делаю ошибку?

Заранее спасибо.

+0

1/У вас есть разрешение на получение загрузочной_передачи? 2/перезагрузите телефон? 3/что вы видите в логарифме? – njzk2

+0

@ njzk2: Я тестирую свой эмулятор. И в logcat я не вижу никаких журналов, в которых говорится, что моя служба запущена. – batman

ответ

3

Используйте это разрешение в явном

<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" /> 
+0

Нет, это не помогает: / – batman

0

Я очень новой для Android

Из-за этой фразы я предлагаю вам использовать IntentService вместо Service как IntentService гораздо проще использовать. Я написал базовый код для другого answer, где человек захотел загрузить файл, а затем проинформировать об этом деле. Он покажет вам правильное использование IntentService и как выполнить задачу.

Смежные вопросы