Flutter MainActivity kann nicht über den AndroidAuto-Dienst gestartet werdenAndroid

Forum für diejenigen, die für Android programmieren
Guest
 Flutter MainActivity kann nicht über den AndroidAuto-Dienst gestartet werden

Post by Guest »

Ich habe eine Flutter-App für Android Auto erstellt, die ein Diagramm auf dem Telefonbildschirm und dann dasselbe Diagramm auch auf dem AA-Bildschirm im Auto anzeigt. Es verfügt über eine Standard-Flutter-Hauptaktivität und einen von mir bereitgestellten Dienst. Wenn ich auf dem Telefon auf das Symbol tippe, startet Android sowohl die Aktivität als auch den Dienst. Aber wenn ich die App vom Autodisplay aus starte, startet AA nur den Dienst. Um dies zu beheben, habe ich versucht, MainActiviy über den Dienst mit
zu starten

Code: Select all

                    val intent = Intent(carContext, MainActivity::class.java).apply {
addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)
}
val pendingIntent : PendingIntent = PendingIntent.getActivity(
carContext,
0,
intent,
PendingIntent.FLAG_IMMUTABLE
)
// Check Android version before calling the method
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.UPSIDE_DOWN_CAKE) {
val options = ActivityOptions.makeBasic()
options.setPendingIntentBackgroundActivityStartMode(
ActivityOptions.MODE_BACKGROUND_ACTIVITY_START_ALLOWED)
pendingIntent.send(options.toBundle())
} else {
pendingIntent.send()
}
Im Manifest habe ich die Flutter-Standardzeilen

Code: Select all

            






Jetzt funktioniert es auf einer emulierten Pixel 8a API 33. Daher ist dort kein MODE_BACKGROUND_ACTIVITY_START_ALLOWED erforderlich. Aber auf einer echten Galaxy Watch S10e API 31 funktioniert es nicht! Es passiert nichts. Warum?? Ich erhalte die folgenden Protokollmeldungen. Die Warnung lautet „allowBackgroundActivityStart: false“. Wenn das das Problem ist, erfordert die Verwendung von MODE_BACKGROUND_ACTIVITY_START_ALLOWED API 34. Wie kann ich es auch auf API 31 zum Laufen bringen?

Code: Select all

2025-01-14 11:54:54.751 31406-31406 CarApp.H                pid-31406                            I  App: [se.ndssoft.autoglucose/.CarHomeService] app info: [Library version: [1.7.0-beta03] Min Car Api Level: [1] Latest Car App Api Level: [8]] Host min api: [1]  Host max api: [7] [CONTEXT ratelimit_period="5 SECONDS" skipped=94 ]
2025-01-14 11:54:54.752 31406-31406 CarApp.H                pid-31406                            D  App: [se.ndssoft.autoglucose/.CarHomeService], Host negotiated api: [7] [CONTEXT ratelimit_period="5 SECONDS" skipped=94 ]
2025-01-14 11:54:54.788  6130-6130  Compatibil...geReporter se.ndssoft.autoglucose               D  Compat change id reported: 160794467; UID 11536; state: ENABLED
2025-01-14 11:54:54.807   969-4019  ActivityTaskManager     pid-969                              I  START u0 {flg=0x10000000 cmp=se.ndssoft.autoglucose/.MainActivity} from uid 11536
2025-01-14 11:54:54.814   969-4019  ActivityTaskManager     pid-969                              W  Background activity start [callingPackage: se.ndssoft.autoglucose; callingUid: 11536; appSwitchAllowed: true; isCallingUidForeground: true; callingUidHasAnyVisibleWindow: false; callingUidProcState: BOUND_TOP; isCallingUidPersistentSystemProcess: false; realCallingUid: 11536; isRealCallingUidForeground: true; realCallingUidHasAnyVisibleWindow: false; realCallingUidProcState: BOUND_TOP; isRealCallingUidPersistentSystemProcess: false; originatingPendingIntent: PendingIntentRecord{952b2d8 se.ndssoft.autoglucose startActivity}; allowBackgroundActivityStart: false; intent: Intent { flg=0x10000000 cmp=se.ndssoft.autoglucose/.MainActivity }; callerApp: ProcessRecord{f53a5b7 6130:se.ndssoft.autoglucose/u0a1536}; inVisibleTask: false]
2025-01-14 11:54:54.819   969-4019  ActivityTaskManager     pid-969                              D  TaskLaunchParamsModifier:task=null activity=ActivityRecord{d4b3a97 u0 se.ndssoft.autoglucose/.MainActivity display-id=0 display-windowing-mode=1 suggested-display-area=DefaultTaskDisplayArea@115968570
2025-01-14 11:54:54.820   969-4019  [secipm]                pid-969                              D  mSecIpmManager Preload se.ndssoft.autoglucose dex files
2025-01-14 11:54:54.823   969-4019  ActivityTaskManager     pid-969                              D  TaskLaunchParamsModifier:task=null activity=ActivityRecord{d4b3a97 u0 se.ndssoft.autoglucose/.MainActivity t-1} display-id=0 display-windowing-mode=1 suggested-display-area=DefaultTaskDisplayArea@115968570 non-freeform-display display-area=DefaultTaskDisplayArea@115968570 maximized-bounds
2025-01-14 11:54:54.823   969-2523  PkgPredict...Controller pid-969                              D  create a new DexPreloadTask pkg:se.ndssoft.autoglucose  path:/data/app/~~TMfK3jVa236aEXamP4Tehw==/se.ndssoft.autoglucose-975VscmnCKXNJVH5wiZSMw==
2025-01-14 11:54:54.824   969-4019  ActivityManager         pid-969                              D  Received ACTIVITY intent 0x952b2d8 Key{startActivity pkg=se.ndssoft.autoglucose intent=flg=0x10000000 cmp=se.ndssoft.autoglucose/.MainActivity flags=0x4000000 u=0} requestCode=0 res=0 from uid 11536
2025-01-14 11:54:54.829   969-2523  PkgPredict...Controller pid-969                              D  /data/app/~~TMfK3jVa236aEXamP4Tehw==/se.ndssoft.autoglucose-975VscmnCKXNJVH5wiZSMw==/oat/arm64/base.odex is already preloaded

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post