Android: nicht in der Lage, Service-Absicht zu starten: nicht gefunden?

Ich weiß, ich bin nicht der erste bei diesem Problem, aber ich habe so viele Lösungen ausprobiert, habe ich gefunden und niemand funktioniert … vielleicht könntest du den Fehler finden

Der Fehler (kam auch so ohne .class und mit /.Client je nach anderen Einstellungen)

  • Private Android Application Deployment / Installation?
  • Es ist nicht möglich, das Kontaktdatenbild im Telefonbereich anzuzeigen
  • Prüfen Sie, ob ein Pfad eine Datei oder einen Ordner darstellt
  • Starten Sie die Spracherkennung durch Stimme mit Phrase wie "Ok Google"?
  • IBeacons - Unternehmen (Estimote, Kardan, etc.) SDKs vs Android / iOS Bibliothek
  • Wie ändere ich das Suchsymbol?
  • 12-02 16: 40: 15.359: W / ActivityManager (74): Dienst kann nicht gestartet werden Absicht {act = com.android.fh.EnOceanApp.Client.class}: nicht gefunden

    Im Manifest ist dies in der Anwendung enthalten, aus Aktivitäten (versuchte es auch in Aktivitäten und mit ".Client"

    Der Code in onCreate ()

    startService(new Intent(this, Client.class)); 

    oder

      startService(new Intent(this.getApplicationContext(), Client.class)); 

    oder

     Intent intent=new Intent("com.android.fh.EnOceanApp.Client.class"); this.startService(intent); 

    oder

      Intent intent=new Intent("com.android.fh.EnOceanApp.Client"); this.startService(intent); 

    Und jetzt habe ich keine Idee mehr …. com.android.fh.EnOceanApp ist das Paket, Client.java die Service-Klasse in diesem Paket

    Und das Manifest habe ich vergessen:

      <application android:icon="@drawable/ic_launcher" android:label="@string/app_name" > <activity android:label="@string/app_name" android:name=".EnOceanAppActivity" > <intent-filter > <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name=".ListView" android:label="List View"> </activity> <activity android:name=".GraphView" android:label="Graph View"> </activity> <service android:name=".Client"></service> //with and without ., of course without this comment </application> 

  • Kann man den SDK-Manager nicht öffnen
  • GCM 3.0 Aktualisierungs-Registrierungs-Token benötigt?
  • PHP: Wie bekomme ich die Version von android .apk Datei?
  • Webcal / .ics abonnieren von Feed aus Android App
  • Android BLE: Identifizieren Sie den Charaktertyp?
  • Travis-ci-Build scheitert mit ShellCommandUnresponsiveException
  • 9 Solutions collect form web for “Android: nicht in der Lage, Service-Absicht zu starten: nicht gefunden?”

    Danke an den Benutzer njzk2 für mich zu bemerken, was passiert ist.

    Ich hatte das gleiche Problem. Es scheint, dass Android OS die Service-Klasse nicht finden kann, die Sie angefordert haben, wenn Sie sich noch nicht in der Manifestdatei Ihres Proyect registriert haben.

    Denken Sie daran, dass ein Service wie eine Aktivität ist, aber ohne grafische Oberfläche. Es bedeutet, dass die Dienste registriert werden müssen, bevor Sie sie nutzen können

    So registrieren Sie den Service in Ihrem Android-Projekt:

     <application> <!-- your code --> <activity> <!-- your code --> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <service android:name="com.your.own.service.class"></service> </application> 

    Denken Sie daran, dass YourService-Klasse von Service verlängern muss, wenn nicht Ihre Klasse kein Service ist.

     public class YourService extends Service{} 

    Erklären Sie Ihren Service in Ihrem Manifest

    Manchmal müssen Sie Ihren Klassennamen im Manifest vollständig qualifizieren, anstatt die Kurzform (.classname) zu verwenden. Ich habe das gesehen, als ich Klassen von einem anderen Paket benutzt habe, aber vielleicht würde es hier helfen, da die Serviceabsicht außerhalb der App gehen kann.

    Also .. nur um irgendwann anderen zu helfen oder nicht:

    Ich habe ein neues Projekt gemacht, die Quellen kopiert und versucht, es auszuführen: Der Service wurde jetzt gefunden. Was war der Unterschied, oder mit anderen Worten: Was denke ich, könnte Probleme geben: der lange Paketname oder der Anfang mit com.android. . . Im neuen Projekt wählte ich nur com.enocean

    Trotz aller Antworten in diesem Beitrag und vielen verwandten Unable to start Service Intent: nicht gefunden Nicht in der Lage, Service Intent starten , habe ich immer noch gekämpft und es hat einige Zeit für mich, um dies zu gehen. Mein Szenario war etwas komplizierter, da ich versuche, einen Service in einer DIFFERENT App zu starten, die ich mit ihm anrufe. Ich habe es herausgefunden und hier sind alle Details, zusammen mit einigen Bonus Code.

    HauptAktivität der Absicht (oder wo auch immer)

     Intent intent=new Intent("com.example.core.MusicService.1234"); //Or Intent intent=new Intent("com.example.core.MusicService.TOGGLE_PLAYBACK"); PendingIntent pendingIntent = PendingIntent.getService(this, 99, intent, PendingIntent.FLAG_CANCEL_CURRENT); 

    Manifest: of Service (Service-Tag im Application-Tag) Es ist

      <service android:name="com.example.core.MusicService"> <intent-filter> <action android:name="com.example.core.MusicService1234"></action> </intent-filter> <intent-filter> <action android:name="com.example.core.MusicService.TOGGLE_PLAYBACK"></action> </intent-filter> </service> 

    MusicService.java

     @Override public int onStartCommand(Intent intent, int flags, int startId) { if(intent != null){ if(intent.getAction() != null){ if(intent.getAction().contentEquals("com.example.core.MusicService.TOGGLE_PLAYBACK")){ //Do work here } } } } 

    Notizen

    • Service muss nicht gestartet werden, diese Absicht wird es starten
    • "Com.example.core.MusicService1234" und "com.example.core.MusicService.TOGGLE_PLAYBACK" kann alles sein, was Sie wollen, aber offensichtlich muss der Intent-Filter im Service-Manifest mit der abrufenden Absicht übereinstimmen. Sie können mehrere von diesen setzen, so können Sie verschiedene Aktionen ausführen, wenn Ihr Service beginnt je nach dem Wert aus Ihrer Absicht
    • 99 kann alles sein, was du willst, aber muss eindeutig sein, wenn du Benachrichtigungen benutest
    • Ich bin mir nicht sicher, ob es möglich ist, einen Service in einer anderen App anzurufen (wie diese), ohne den Intent-Filter zu benutzen – wenn es so ist, bitte erleuchtet uns. Ich habe versucht und es funktioniert nicht.

    Kredit an: die kumulativen Informationen aus allen Beiträgen ๐Ÿ™‚

    Ich habe den dummen Fehler gemacht, den Tag zu einem separaten im Manifest hinzuzufügen.

    In diesem Fall konnte die aktuelle Anwendung den Service nicht finden.

    Hoffe, du übersprichst diesen Fehler ๐Ÿ™‚

    Vielen Dank.

    Es ist ein dummer Fehler von Android

    Das wird nicht funktionieren

     <service android:name=".classname"/> 

    Aber das wird funktionieren

     <service android:name=".classname"></service> 

    Nun, in meinem Fall musste ich das Projekt reinigen. Es passiert manchmal, wenn du eine neue Java-Klasse für den Service in deinem Paket / Projekt gemacht hast, aber das Projekt nicht nachgebaut hat. In meinem Fall musste ich nur das Projekt reinigen, um den Fehler loszuwerden.

    Wenn jemand das sieht und das gleiche Problem hat, das ich getan habe, war es, weil ich einem Guide folgte und context.startService() anstelle von context.startActivity()

    Das Android ist ein Google Android Fan-Website, Alles รผber Android Phones, Android Wear, Android Dev und Android Spiele Apps und so weiter.