2012-03-25 10 views
0

Also ich versuche, die Lizenzierung in meinem Live Wallpaper richtig zu implementieren. Der ganze Code ist da drin, alles kompiliert, aber die stopSelf() Methode meines WallpaperService scheint einfach nicht zu funktionieren. Hier ist was ich habe:Wie kann ich meinen Live-Hintergrund ordnungsgemäß beenden, wenn eine Überprüfung der Lizenzprüfung fehlschlägt?

public class MyWallpaperService extends WallpaperService implements LicenseCheckerCallback{ 
... 
@Override 
public void onCreate() { 
    super.onCreate(); 

    String deviceId = Secure.getString(getContentResolver(), Secure.ANDROID_ID); 


    // Construct the LicenseChecker with a Policy. 
    mChecker = new LicenseChecker(
     this, new ServerManagedPolicy(this, 
     new AESObfuscator(SALT, getPackageName(), deviceId)), 
     BASE64_PUBLIC_KEY // Your public licensing key. 
     ); 

    mChecker.checkAccess(this); 
} 

@Override 
public void onDestroy() { 
    super.onDestroy(); 
    mChecker.onDestroy(); 
    //Log.d(DEB_TAG, "onDestroy()"); 
} 

@Override 
public Engine onCreateEngine() { 
    SharedPreferences prefs = getSharedPreferences(SHARED_PREFS_NAME,0); 
    return new MyEngine(prefs); 
} 

public void allow(int reason) { 
} 

public void dontAllow(int reason) { 
    Toast.makeText(getApplicationContext(), "This application is not licensed on this device", Toast.LENGTH_SHORT).show(); 
    stopSelf(); 

} 

public void applicationError(int errorCode) { 

} 
... 
} 

Es treibt mich die Wand hoch. Die dontAllow() -Methode wird definitiv aufgerufen, weil ich sehe, dass der Toast erscheint, aber der WallpaperService trägt fröhlich beim Laufen, und ich kann keinen guten Grund finden, warum das sein könnte. Hat jemand irgendwelche Ideen?

Antwort

0

Persönlich lähme ich nur meine Zeichenfunktion mit einem Boolean. Dadurch bleibt das Live-Hintergrundbild erhalten, es wird jedoch nicht aktualisiert. Es wird im Wesentlichen ein Bild.

+1

Vielen Dank! Das ist genau das Richtige für mich - und so einfach, genervt, dass ich selbst nicht daran gedacht habe! Ich danke dir sehr :) – SatNav