Der Dienst startet nicht in einem separaten Prozess

Post a reply

Smilies
:) :( :oops: :chelo: :roll: :wink: :muza: :sorry: :angel: :read: *x) :clever:
View more smilies

BBCode is ON
[img] is ON
[flash] is OFF
[url] is ON
Smilies are ON

Topic review
   

Expand view Topic review: Der Dienst startet nicht in einem separaten Prozess

by Guest » 11 Jan 2025, 09:25

Ich muss einen Vordergrunddienst erstellen, der in einem separaten Prozess ausgeführt wird. Aber aus irgendeinem Grund läuft es unabhängig von den Parametern im selben Prozess wie die Hauptaktivität. Wenn ich einen isolierten Prozess einstelle, wird er überhaupt nicht ausgeführt.
So starte ich den Dienst:

Code: Select all

  Log.Debug(nameof(MainActivity), $"main ProcessId: {System.Environment.ProcessId}");
Android.Content.Intent intent = new Android.Content.Intent(BaseContext, typeof(FfmpegService));
Android.App.Application.Context.StartForegroundService(intent);
hier ist der Service

Code: Select all

[Service(ForegroundServiceType = Android.Content.PM.ForegroundService.TypeSpecialUse)]
public class FfmpegService : Service
...
public override StartCommandResult OnStartCommand(Intent intent, StartCommandFlags flags, int startId)
{
Log.Debug(nameof(FfmpegService), $"service ProcessId: {System.Environment.ProcessId}");
...
return StartCommandResult.Sticky;
}
...
}
...
hier ist das Manifest:

Code: Select all

    



...



Ich dachte auch, dass Environment.ProcessId möglicherweise nicht den Prozess des Dienstes zurückgibt, also habe ich versucht, alle Prozesse abzurufen, aber es gibt nur den Hauptprozess der App zurück

Code: Select all

 ActivityManager activityManager = (ActivityManager)this.GetSystemService(Context.ActivityService);
var pidsTask = activityManager.RunningAppProcesses;

for (int i = 0; i < pidsTask.Count; i++)
{
Log.Debug(nameof(MainActivity), $"{pidsTask[i].ProcessName} ProcessId: {pidsTask[i].Uid}");
}
Was habe ich übersehen?

Top