UnifiedNlp icon indicating copy to clipboard operation
UnifiedNlp copied to clipboard

Android P integration issues

Open pgera opened this issue 5 years ago • 2 comments

I'm able to build from master and include the built apk as a priv-app. However, opening settings->location crashes the settings apps.

10-12 09:49:02.231  1016  2029 W ActivityManager: Background start not allowed: service Intent { cmp=com.google.android.gms/org.microg.nlp.ui.SettingInjectorService (has extras) } to com.google.android.gms/org.microg.nlp.ui.SettingInjectorService from pid=1610 uid=1000 pkg=com.android.settings startFg?=false
10-12 09:49:02.231  1610  1610 D AndroidRuntime: Shutting down VM
--------- beginning of crash
10-12 09:49:02.231  1610  1610 E AndroidRuntime: FATAL EXCEPTION: main
10-12 09:49:02.231  1610  1610 E AndroidRuntime: Process: com.android.settings, PID: 1610
10-12 09:49:02.231  1610  1610 E AndroidRuntime: java.lang.IllegalStateException: Not allowed to start service Intent { cmp=com.google.android.gms/org.microg.nlp.ui.SettingInjectorService (has extras) }: app is in background uid UidRecord{a0ae399 u0a81 TRNB idle change:uncached procs:1 seq(0,0,0)}
10-12 09:49:02.231  1610  1610 E AndroidRuntime:        at android.app.ContextImpl.startServiceCommon(ContextImpl.java:1577)
10-12 09:49:02.231  1610  1610 E AndroidRuntime:        at android.app.ContextImpl.startServiceAsUser(ContextImpl.java:1549)
10-12 09:49:02.231  1610  1610 E AndroidRuntime:        at android.content.ContextWrapper.startServiceAsUser(ContextWrapper.java:680)
10-12 09:49:02.231  1610  1610 E AndroidRuntime:        at com.android.settings.location.SettingsInjector$Setting.startService(SettingsInjector.java:561)
10-12 09:49:02.231  1610  1610 E AndroidRuntime:        at com.android.settings.location.SettingsInjector$StatusLoadingHandler.handleMessage(SettingsInjector.java:457)
10-12 09:49:02.231  1610  1610 E AndroidRuntime:        at android.os.Handler.dispatchMessage(Handler.java:106)
10-12 09:49:02.231  1610  1610 E AndroidRuntime:        at android.os.Looper.loop(Looper.java:193)
10-12 09:49:02.231  1610  1610 E AndroidRuntime:        at android.app.ActivityThread.main(ActivityThread.java:6669)
10-12 09:49:02.231  1610  1610 E AndroidRuntime:        at java.lang.reflect.Method.invoke(Native Method)
10-12 09:49:02.231  1610  1610 E AndroidRuntime:        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
10-12 09:49:02.231  1610  1610 E AndroidRuntime:        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)
10-12 09:49:02.234  1016  2029 W ActivityManager:   Force finishing activity com.android.settings/.SubSettings
10-12 09:49:02.239  1610  1610 I Process : Sending signal. PID: 1610 SIG: 9
10-12 09:49:02.255  1016  2029 I WindowManager: WIN DEATH: Window{941e4e0 u0 com.android.settings/com.android.settings.SubSettings}
10-12 09:49:02.256  1016  1421 I ActivityManager: Process com.android.settings (pid 1610) has died: fore TOP
10-12 09:49:02.256  1016  1421 I ActivityManager: Killing 2828:com.android.settings.intelligence/u0a21 (adj 200): depends on provider com.android.settings/.dashboard.suggestions.SuggestionStateProvider in dying proc com.android.settings (adj 0)
10-12 09:49:02.257  1016  1658 I WindowManager: WIN DEATH: Window{ac9515f u0 com.android.settings/com.android.settings.Settings}
10-12 09:49:02.259  1016  1072 W libprocessgroup: kill(-1610, 9) failed: No such process
10-12 09:49:02.266   653   653 I Zygote  : Process 1610 exited due to signal (9)
10-12 09:49:02.276  1016  1077 W ActivityManager: setHasOverlayUi called on unknown pid: 1610
10-12 09:49:02.286  1016  1536 I WindowManager: WIN DEATH: Window{60b2f72 u0 com.android.settings.intelligence/com.android.settings.intelligence.search.SearchActivity}
10-12 09:49:02.286  1016  1421 W ActivityManager: Force removing ActivityRecord{a3750a4 u0 com.android.settings.intelligence/.search.SearchActivity t3}: app died, no saved state
10-12 09:49:02.295   653   653 I Zygote  : Process 2828 exited due to signal (9)
10-12 09:49:02.298  1016  1077 W ActivityManager: setHasOverlayUi called on unknown pid: 2828
10-12 09:49:02.307  1016  1072 W libprocessgroup: kill(-1610, 9) failed: No such process
10-12 09:49:02.307  1016  1072 I libprocessgroup: Successfully killed process cgroup uid 1000 pid 1610 in 49ms
10-12 09:49:02.307  1016  1072 W libprocessgroup: kill(-2828, 9) failed: No such process
10-12 09:49:02.307  1016  1072 I libprocessgroup: Successfully killed process cgroup uid 10021 pid 2828 in 0ms
10-12 09:49:02.310  1016  1071 I ActivityManager: Start proc 3360:com.android.settings/1000 for activity com.android.settings/.Settings

pgera avatar Oct 12 '18 14:10 pgera

What does microG Settings Self-Check say? Is signature spoofing working?

Yky avatar Feb 16 '19 19:02 Yky

My workaround is to return 25 instead of 27 in androidTargetSdk() of build.gradle to skip the new check in ActivityManager introduced after Android 8.

This is something new in Oreo.

I only test this workaround in Oreo, BTW.

bevis-tseng avatar Mar 21 '19 10:03 bevis-tseng