1. Hast Du Lust, bei uns mitzuarbeiten und das AH-Team zu verstärken? Alle Details zu dieser aktuellen Herausforderung findest Du hier.
  1. Kirodema, 10.11.2010 #1
    Kirodema

    Kirodema Threadstarter Neuer Benutzer

    Hi,

    ich mach grad ein Tutorial durch für nen Musikplayer (MusicDroid - Audio Player Part II | Hello Android).

    Da dieses Tutorial schon etwas älter ist, stimmen einige Methodenaufrufe mit den heutigen nichtmehr überein, und ich hab die halt meines Verständnis nach angepasst.

    Meine Service Klasse schaut der aus dem Tutorial ähnlich bis auf die Notifys, aber die sollten ja nix damit zu tun haben? Einzige was dort nicht funktioniert hat, war die getBinder mit @Override zu deklarieren, aber da hab ich es dann einfach weglassen (das @Override).

    In meiner Hauptklasse steht dann in der onCreate-Methode folgendes:
    Meine mConnction:
    Code:
    private ServiceConnection mConnection = new ServiceConnection() {
    		
    	@Override
    	public void onServiceDisconnected(ComponentName arg0) {
    		mpInterface = null;
    	}
    	
    	@Override
    	public void onServiceConnected(ComponentName arg0, IBinder service) {
    		//Toast.makeText(BackEnd.this, "Service is binding", Toast.LENGTH_SHORT).show();
    		mpInterface = IBEInterface.Stub.asInterface((IBinder) service);
    		try {
    			mpInterface.clearPlaylist();
    		} catch (RemoteException e) {}
    			
    		updateSongList(new File(MEDIA_PATH));
    	}
    };
    bindService in onCreate():
    Code:
    this.bindService(new Intent(this, IBEService.class), mConnection, Context.BIND_AUTO_CREATE);
    In meiner Manifest unter <application>
    Code:
    <service class=".IBEService" android:process=":remote" android:name="IBEService"></service>
    Hat vielleicht irgendwer einen Plan, was ich falsch mache?
     
  2. Kirodema, 10.11.2010 #2
    Kirodema

    Kirodema Threadstarter Neuer Benutzer

    Nachdem ich mich mal kurz mit Debuggen unter Android beschäftigt habe, bin ich auf logcat gestoßen. Hier ist ein meiner Meinung nach auffälliger Auszug:
    Code:
    E/ActivityThread(21698): Activity com.kirodema.icyBeatsBE.BackEnd has leaked ServiceConnection com.kirodema.icyBeatsBE.BackEnd$1@4625de10 that was originally bound here
    E/ActivityThread(21698): android.app.ServiceConnectionLeaked: Activity com.kirodema.icyBeatsBE.BackEnd has leaked ServiceConnection com.kirodema.icyBeatsBE.BackEnd$1@4625de10 that was originally bound here
    E/ActivityThread(21698): 	at android.app.ActivityThread$PackageInfo$ServiceDispatcher.<init>(ActivityThread.java:1154)
    E/ActivityThread(21698): 	at android.app.ActivityThread$PackageInfo.getServiceDispatcher(ActivityThread.java:1049)
    E/ActivityThread(21698): 	at android.app.ContextImpl.bindService(ContextImpl.java:871)
    E/ActivityThread(21698): 	at android.content.ContextWrapper.bindService(ContextWrapper.java:347)
    E/ActivityThread(21698): 	at com.kirodema.icyBeatsBE.BackEnd.onCreate(BackEnd.java:65)
    E/ActivityThread(21698): 	at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1069)
    E/ActivityThread(21698): 	at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2751)
    E/ActivityThread(21698): 	at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2803)
    E/ActivityThread(21698): 	at android.app.ActivityThread.access$2300(ActivityThread.java:135)
    E/ActivityThread(21698): 	at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2136)
    E/ActivityThread(21698): 	at android.os.Handler.dispatchMessage(Handler.java:99)
    E/ActivityThread(21698): 	at android.os.Looper.loop(Looper.java:144)
    E/ActivityThread(21698): 	at android.app.ActivityThread.main(ActivityThread.java:4937)
    E/ActivityThread(21698): 	at java.lang.reflect.Method.invokeNative(Native Method)
    E/ActivityThread(21698): 	at java.lang.reflect.Method.invoke(Method.java:521)
    E/ActivityThread(21698): 	at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
    E/ActivityThread(21698): 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
    E/ActivityThread(21698): 	at dalvik.system.NativeStart.main(Native Method)
    W/ActivityManager(   96): Unbind failed: could not find connection for android.os.BinderProxy@468ca740
    
    Allerdings bin ich noch nicht ganz so fit in Sachen Androidentwicklung und fang daher nicht viel damit an. Zeile 65 in meinem BackEnd.java ist die oben beschriebene Zeile mit this.bindService(...).
    Habe allerdings noch ein startService hinzugefügt, da in der Android-SDK-API steht, dass man das ausführen muss file:///opt/android-sdk/docs/reference/android/content/Context.html#BIND_AUTO_CREATE.bindService und startService verwenden den selben Intent

    Edit: Diese Logmeldungen kommen nur beim schließen des Programms
     
    Zuletzt bearbeitet: 10.11.2010
  3. Unicate, 11.11.2010 #3
    Unicate

    Unicate Android-Experte

    Dein Schnipselchen Code reicht mir noch nicht um darüber eine Aussage zu treffen.


    startService startet den Service und bindet den meines Wissens auch.Wenn du die app beendest wird der service weiter laufen.

    wenn den den service mit BIND_AUTO_CREATE startest, wird der service beendet, wenn der Service mit keiner activity mehr verbunden ist.
     
  4. Kirodema, 12.11.2010 #4
    Kirodema

    Kirodema Threadstarter Neuer Benutzer

    Ok, Ich ich hab die Sourcefiles mal bei pastebin hochgeladen:

    Java | package com.kirodema.icyBeatsB - BackEnd.java - CkaNLJU4 - Pastebin.com Hier ist die List-Activity

    Java | package com.kirodema.icyBeatsB - IBEService.java - x7aWFZZP - Pastebin.com Meine Service-Klasse

    XML | <?xml version="1.0" encoding=" - AndroidManifest.xml - ZbKD8yTC - Pastebin.com Das Manifest

    Die .aidl Datei schaut genauso aus wie die aus dem Tutorial

    Danke vorerst mit dem Tipp mit dem startService(). Da das nur ein Testprojekt ist, für ein größeres Schulprojekt ist, wo dann auch ein Widget dazu soll, ist es sicherlich praktisch, wenn der Service nicht beendet, wenn die Activity beendet wird.
     
  5. Kirodema, 16.11.2010 #5
    Kirodema

    Kirodema Threadstarter Neuer Benutzer

    Bitte helft mir. Würde das bis morgen nämlich brauchen.
     
Die Seite wird geladen...
Ähnliche Themen Forum Datum
[OFFEN] App startet nicht... Android App Entwicklung 10.09.2017
[ERLEDIGT] Probleme mit Service unter Android N Android App Entwicklung 16.07.2017
[ERLEDIGT] Hilfe bei Fehler in Quellcode benötigt Android App Entwicklung 23.06.2017
[ERLEDIGT] AVD startet nicht unter Linux Android App Entwicklung 05.06.2017
[OFFEN] Service wird bei manchen Geräten nicht gestartet Android App Entwicklung 09.04.2017
Google Play Services Fehler Android App Entwicklung 19.12.2016
Android Studio App startet nicht auf dem Handy Android App Entwicklung 14.10.2016
App startet nicht...Android studio Android App Entwicklung 13.10.2016

Users found this page by searching for:

  1. android looper startet in service nicht?

    ,
  2. MusicDroid - Audio Player Part II | Hello Android

Du betrachtest das Thema "Service startet nicht" im Forum "Android App Entwicklung",