I Android 4.4 wurde gezielt und begann einen Dienst wie dieseXamarin.Android: Start eine neue Absicht
start.Click += delegate {
StartService(new Intent("com.xamarin.LocationService"));
start.Enabled = false;
stop.Enabled = true;
};
und alles hat gut funktioniert. Jetzt bin ich Targeting 6.0 und finde von this thread, dass dies nicht sicher ist, und ich soll dies tun:
Intent serviceIntent = new Intent(context,MyService.class);
context.startService(serviceIntent);
aber ich kann nicht herausfinden, was die Argumente für ‚neues Intent()‘ sein sollen. Der Klassenname lautet 'LocationActivity', aber wenn ich dies tue, kompiliert OK
, aber der Dienst startet nicht tatsächlich.
Die deutliche Antwort in diesem Thread schlägt auch diese
Intent bi = new Intent("com.android.vending.billing.InAppBillingService.BIND");
bi.setPackage("com.android.vending");
aber wenn ich versuche, dass ich finde, dass ‚Intent keine Definition für setPackage enthält‘.
Also, kann mir hier jemand mit einer Lösung helfen? Danke im Voraus.
Ah! Ich möchte einen Dienst starten, keine Aktivität. Also sollte mein Argument der Typ des Dienstes sein, den ich starten möchte, _nicht_ die Art der Aktivität, von der aus gestartet wird !. Ihre Antwort führte mich also indirekt zur Lösung: 'neue Absicht (this, typeof (LocationService))' – quilkin