Hey, I'm a long time Calyx user that has recently changed to Graphene and I'm loving it so far. One thing I couldn't figure out how to do was to change the in app map provider.
In Calyx I had set it up such that apps that show a map would show me the osm app instead of the google map. For instance, Garmin Connect would show my activities on the osm map, which looks much better than the google map, and is not google. On Graphene, the there is no map and it just says "map service unavailable". If I install Google Play services, then the map works but it shows me the google map, it even says "google" in the bottom left corner. On calyx it would be the osm map and it would say "mapbox" in the bottom left corner.
That is just an example for one app. Is there any way to set the map provider, or maybe fool the apps into believing they are contacting the the google api but in reality its the osm api (or mapbox).
I'll attach the logs from Garmin Connect where you can see its trying and failing to connect to google maps services. Sadly I think Calyx doesn't offer similar logs so I can't compare it to the working config :(
Edit: Can't attach a file so here are the last few lines of the log
02-02 15:37:28.291 25261 25261 I wm_on_stop_called: [Token=472996,Component Name=com.garmin.android.apps.connectmobile.calendar.GCMCalendarActivity,Reason=STOP_ACTIVITY_ITEM,time=1ms]
02-02 15:37:28.309 25261 25261 I viewroot_draw_event: [window=VRI[GCMCalendarActivity],event=Not drawing due to not visible. Reason=!mAppVisible && !mForceDecorViewVisibility]
--------- switch to main
02-02 15:37:28.480 25261 25294 I com.garmin.android.apps.connectmobile: Background concurrent mark compact GC freed 92MB AllocSpace bytes, 164(20MB) LOS objects, 67% free, 46MB/142MB, paused 815us,2.091ms total 228.828ms
02-02 15:37:28.500 25261 27216 D TrafficStats: tagSocket(120) with statsTag=0xffffffff, statsUid=-1
02-02 15:37:28.509 25261 27218 D TrafficStats: tagSocket(156) with statsTag=0xffffffff, statsUid=-1
02-02 15:37:28.511 25261 27220 D TrafficStats: tagSocket(167) with statsTag=0xffffffff, statsUid=-1
02-02 15:37:28.517 25261 27222 D TrafficStats: tagSocket(250) with statsTag=0xffffffff, statsUid=-1
02-02 15:37:28.520 25261 27223 D TrafficStats: tagSocket(256) with statsTag=0xffffffff, statsUid=-1
--------- switch to events
02-02 15:37:30.365 25261 25261 I wm_on_top_resumed_lost_called: [Token=81641781,Component Name=com.garmin.android.apps.connectmobile.leaderboard.LeaderboardActivity,Reason=topStateChangedWhenResumed]
02-02 15:37:30.366 25261 25261 I wm_on_paused_called: [Token=81641781,Component Name=com.garmin.android.apps.connectmobile.leaderboard.LeaderboardActivity,Reason=performPause,time=0ms]
02-02 15:37:30.372 25261 25261 I wm_on_destroy_called: [Token=472996,Component Name=com.garmin.android.apps.connectmobile.calendar.GCMCalendarActivity,Reason=performDestroy,time=2ms]
--------- switch to main
02-02 15:37:30.372 25261 25261 W WindowOnBackDispatcher: sendCancelIfRunning: isInProgress=false callback=android.view.ViewRootImpl$$ExternalSyntheticLambda11@1c735b5
--------- switch to events
02-02 15:37:30.378 25261 25261 I wm_on_destroy_called: [Token=180813431,Component Name=com.garmin.android.apps.connectmobile.navigation.more.MoreActivity,Reason=performDestroy,time=0ms]
--------- switch to main
02-02 15:37:30.379 25261 25261 W WindowOnBackDispatcher: sendCancelIfRunning: isInProgress=false callback=android.view.ViewRootImpl$$ExternalSyntheticLambda11@fb13f90
02-02 15:37:30.388 25261 25261 D AutofillManager: view not autofillable - has multiline input type
02-02 15:37:30.389 25261 25261 D AutofillManager: view not autofillable - has multiline input type
02-02 15:37:30.389 25261 25261 D AutofillManager: view not autofillable - has multiline input type
--------- switch to events
02-02 15:37:30.390 25261 25261 I wm_on_destroy_called: [Token=12580757,Component Name=com.garmin.android.apps.connectmobile.newsfeed.NewsFeedActivity,Reason=performDestroy,time=2ms]
--------- switch to main
02-02 15:37:30.390 25261 25261 W WindowOnBackDispatcher: sendCancelIfRunning: isInProgress=false callback=android.view.ViewRootImpl$$ExternalSyntheticLambda11@b047e50
--------- switch to events
02-02 15:37:30.393 25261 25261 I wm_on_restart_called: [Token=38940941,Component Name=com.garmin.android.apps.connectmobile.dashboard.presentation.DashboardActivity,Reason=performRestart,time=0ms]
02-02 15:37:30.402 25261 25261 I wm_on_start_called: [Token=38940941,Component Name=com.garmin.android.apps.connectmobile.dashboard.presentation.DashboardActivity,Reason=handleStartActivity,time=9ms]
02-02 15:37:30.408 25261 25261 I wm_on_resume_called: [Token=38940941,Component Name=com.garmin.android.apps.connectmobile.dashboard.presentation.DashboardActivity,Reason=RESUME_ACTIVITY,time=2ms]
02-02 15:37:30.409 25261 25261 I wm_on_top_resumed_gained_called: [Token=38940941,Component Name=com.garmin.android.apps.connectmobile.dashboard.presentation.DashboardActivity,Reason=topWhenResuming]
--------- switch to main
02-02 15:37:30.424 25261 27154 W JobInfo : Job 'com.garmin.android.apps.connectmobile/com.google.android.gms.measurement.AppMeasurementJobService#252886010' has a deadline with no functional constraints. The deadline won't improve job execution latency. Consider removing the deadline.
--------- switch to events
02-02 15:37:30.462 25261 25261 I viewroot_draw_event: [window=VRI[DashboardActivity],event=Start draw after previous draw not visible]
02-02 15:37:30.476 25261 25261 I viewroot_draw_event: [window=VRI[DashboardActivity],event=reportDrawFinished seqId=0]
--------- switch to main
02-02 15:37:30.485 25261 27154 W JobInfo : Job 'com.garmin.android.apps.connectmobile/com.google.android.gms.measurement.AppMeasurementJobService#252886010' has a deadline with no functional constraints. The deadline won't improve job execution latency. Consider removing the deadline.
02-02 15:37:30.527 25261 27154 W JobInfo : Job 'com.garmin.android.apps.connectmobile/com.google.android.gms.measurement.AppMeasurementJobService#252886010' has a deadline with no functional constraints. The deadline won't improve job execution latency. Consider removing the deadline.
02-02 15:37:30.735 25261 25902 D TrafficStats: tagSocket(236) with statsTag=0xffffffff, statsUid=-1
02-02 15:37:30.742 25261 27194 D TrafficStats: tagSocket(165) with statsTag=0xffffffff, statsUid=-1
02-02 15:37:30.985 25261 25261 D VRI[LeaderboardActivity]: visibilityChanged oldVisibility=true newVisibility=false
--------- switch to events
02-02 15:37:31.001 25261 25261 I viewroot_draw_event: [window=VRI[LeaderboardActivity],event=Not drawing due to not visible. Reason=!mAppVisible && !mForceDecorViewVisibility]
02-02 15:37:31.007 25261 25261 I wm_on_stop_called: [Token=81641781,Component Name=com.garmin.android.apps.connectmobile.leaderboard.LeaderboardActivity,Reason=LIFECYCLER_STOP_ACTIVITY,time=0ms]
02-02 15:37:31.009 25261 25261 I wm_on_destroy_called: [Token=81641781,Component Name=com.garmin.android.apps.connectmobile.leaderboard.LeaderboardActivity,Reason=performDestroy,time=1ms]
--------- switch to main
02-02 15:37:31.009 25261 25261 W WindowOnBackDispatcher: sendCancelIfRunning: isInProgress=false callback=android.view.ViewRootImpl$$ExternalSyntheticLambda11@b0fec4b
--------- switch to events
02-02 15:37:32.189 25261 25261 I wm_on_top_resumed_lost_called: [Token=38940941,Component Name=com.garmin.android.apps.connectmobile.dashboard.presentation.DashboardActivity,Reason=topStateChangedWhenResumed]
02-02 15:37:32.190 25261 25261 I wm_on_paused_called: [Token=38940941,Component Name=com.garmin.android.apps.connectmobile.dashboard.presentation.DashboardActivity,Reason=performPause,time=0ms]
02-02 15:37:32.223 25261 25261 I wm_on_create_called: [Token=137373655,Component Name=com.garmin.android.apps.connectmobile.newsfeed.NewsFeedActivity,Reason=performCreate,time=28ms]
02-02 15:37:32.226 25261 25261 I wm_on_start_called: [Token=137373655,Component Name=com.garmin.android.apps.connectmobile.newsfeed.NewsFeedActivity,Reason=handleStartActivity,time=2ms]
02-02 15:37:32.227 25261 25261 I wm_on_resume_called: [Token=137373655,Component Name=com.garmin.android.apps.connectmobile.newsfeed.NewsFeedActivity,Reason=RESUME_ACTIVITY,time=1ms]
02-02 15:37:32.231 25261 25261 I wm_on_top_resumed_gained_called: [Token=137373655,Component Name=com.garmin.android.apps.connectmobile.newsfeed.NewsFeedActivity,Reason=topStateChangedWhenResumed]
--------- switch to main
02-02 15:37:32.232 25261 27154 W JobInfo : Job 'com.garmin.android.apps.connectmobile/com.google.android.gms.measurement.AppMeasurementJobService#252886010' has a deadline with no functional constraints. The deadline won't improve job execution latency. Consider removing the deadline.
02-02 15:37:32.244 25261 27154 W JobInfo : Job 'com.garmin.android.apps.connectmobile/com.google.android.gms.measurement.AppMeasurementJobService#252886010' has a deadline with no functional constraints. The deadline won't improve job execution latency. Consider removing the deadline.
--------- switch to events
02-02 15:37:32.246 25261 25261 I viewroot_draw_event: [window=VRI[NewsFeedActivity],event=reportDrawFinished seqId=0]
--------- switch to main
02-02 15:37:32.274 25261 27154 W JobInfo : Job 'com.garmin.android.apps.connectmobile/com.google.android.gms.measurement.AppMeasurementJobService#252886010' has a deadline with no functional constraints. The deadline won't improve job execution latency. Consider removing the deadline.
02-02 15:37:32.292 25261 27154 W JobInfo : Job 'com.garmin.android.apps.connectmobile/com.google.android.gms.measurement.AppMeasurementJobService#252886010' has a deadline with no functional constraints. The deadline won't improve job execution latency. Consider removing the deadline.
02-02 15:37:32.301 25261 25261 D AutofillManager: view not autofillable - has multiline input type
02-02 15:37:32.312 25261 25261 D AutofillManager: view not autofillable - has multiline input type
02-02 15:37:32.328 25261 25261 D AutofillManager: view not autofillable - has multiline input type
02-02 15:37:32.430 25261 25294 I com.garmin.android.apps.connectmobile: Background concurrent mark compact GC freed 92MB AllocSpace bytes, 433(33MB) LOS objects, 66% free, 48MB/144MB, paused 1.673ms,1.796ms total 164.833ms
02-02 15:37:32.765 25261 25261 D VRI[DashboardActivity]: visibilityChanged oldVisibility=true newVisibility=false
--------- switch to events
02-02 15:37:32.782 25261 25261 I wm_on_stop_called: [Token=38940941,Component Name=com.garmin.android.apps.connectmobile.dashboard.presentation.DashboardActivity,Reason=STOP_ACTIVITY_ITEM,time=1ms]
02-02 15:37:32.790 25261 25261 I viewroot_draw_event: [window=VRI[DashboardActivity],event=Not drawing due to not visible. Reason=!mAppVisible && !mForceDecorViewVisibility]
--------- switch to main
02-02 15:37:32.957 25261 27194 D TrafficStats: tagSocket(153) with statsTag=0xffffffff, statsUid=-1
02-02 15:37:33.152 25261 27194 D TrafficStats: tagSocket(156) with statsTag=0xffffffff, statsUid=-1
02-02 15:37:33.315 25261 25294 I com.garmin.android.apps.connectmobile: Background concurrent mark compact GC freed 95MB AllocSpace bytes, 166(17MB) LOS objects, 62% free, 56MB/152MB, paused 1.182ms,1.577ms total 132.533ms
--------- switch to events
02-02 15:37:34.351 25261 25261 I view_enqueue_input_event: [eventType=Motion - Cancel,action=com.garmin.android.apps.connectmobile/com.garmin.android.apps.connectmobile.newsfeed.NewsFeedActivity]
02-02 15:37:34.356 25261 25261 I wm_on_top_resumed_lost_called: [Token=137373655,Component Name=com.garmin.android.apps.connectmobile.newsfeed.NewsFeedActivity,Reason=topStateChangedWhenResumed]
02-02 15:37:34.920 25261 25261 I wm_on_paused_called: [Token=137373655,Component Name=com.garmin.android.apps.connectmobile.newsfeed.NewsFeedActivity,Reason=performPause,time=14ms]
--------- switch to main
02-02 15:37:34.921 25261 25261 D VRI[NewsFeedActivity]: visibilityChanged oldVisibility=true newVisibility=false
--------- switch to events
02-02 15:37:34.952 25261 25261 I wm_on_stop_called: [Token=137373655,Component Name=com.garmin.android.apps.connectmobile.newsfeed.NewsFeedActivity,Reason=STOP_ACTIVITY_ITEM,time=6ms]
02-02 15:37:34.981 25261 25261 I viewroot_draw_event: [window=VRI[NewsFeedActivity],event=Not drawing due to not visible. Reason=!mAppVisible && !mForceDecorViewVisibility]
--------- switch to main
02-02 15:37:35.035 25261 27154 W JobInfo : Job 'com.garmin.android.apps.connectmobile/com.google.android.gms.measurement.AppMeasurementJobService#252886010' has a deadline with no functional constraints. The deadline won't improve job execution latency. Consider removing the deadline.
02-02 15:37:37.046 25261 27154 I FA : Application backgrounded at: timestamp_millis: 1738510655043