Android 汽车模拟器 (ARM):融合位置提供程序 API 提供无效位置

leo*_*sse 5 android android-emulator fusedlocationproviderapi android-automotive

Fused Location Provider API 似乎在 Android Automotive Emulator 映像 Sv2(API 32、arm64-v8a、带有 Play Store)上被破坏。有谁知道解决方法?它是 Android Studio 中目前唯一可用于基于 ARM 架构的汽车操作系统映像。

在模拟器的第一次运行期间,它工作得很好。但是,一旦模拟器停止并再次启动(无论是否冷启动),每个位置请求都会引发以下异常:

2023-01-02 15:17:59.431  1827-2496  FusedLocation           com.google.android.gms.persistent    E  
dropping invalid locations [CONTEXT service_id=6 ]
vqy: location must not have realtime in the future
    at vts.i(:com.google.android.gms@220221082@22.02.21 (060408-428111784):34)
    at vrd.j(:com.google.android.gms@220221082@22.02.21 (060408-428111784):0)
    at vrr.i(:com.google.android.gms@220221082@22.02.21 (060408-428111784):1)
    at vrd.j(:com.google.android.gms@220221082@22.02.21 (060408-428111784):0)
    at vrl.a(:com.google.android.gms@220221082@22.02.21 (060408-428111784):3)
    at arsp.d(:com.google.android.gms@220221082@22.02.21 (060408-428111784):10)
    at arvk.i(:com.google.android.gms@220221082@22.02.21 (060408-428111784):18)
    at arve.a(:com.google.android.gms@220221082@22.02.21 (060408-428111784):0)
    at vhn.onLocationChanged(:com.google.android.gms@220221082@22.02.21 (060408-428111784):0)
    at android.location.LocationListener.onLocationChanged(LocationListener.java:63)
    at android.location.LocationManager$LocationListenerTransport$1.operate(LocationManager.java:3180)
    at android.location.LocationManager$LocationListenerTransport$1.operate(LocationManager.java:3177)
    at com.android.internal.listeners.ListenerExecutor.lambda$executeSafely$0(ListenerExecutor.java:127)
    at com.android.internal.listeners.ListenerExecutor$$ExternalSyntheticLambda0.run(Unknown Source:8)
    at android.os.Handler.handleCallback(Handler.java:938)
    at android.os.Handler.dispatchMessage(Handler.java:99)
    at android.os.Looper.loopOnce(Looper.java:201)
    at android.os.Looper.loop(Looper.java:288)
    at android.os.HandlerThread.run(HandlerThread.java:67)
Run Code Online (Sandbox Code Playgroud)

由于“位置将来一定不能实时”似乎表明存在计时问题,因此我尝试手动设置系统时间并每次冷启动模拟器,但没有成功。

我定期以高精度请求位置,如下所示:

2023-01-02 15:17:59.431  1827-2496  FusedLocation           com.google.android.gms.persistent    E  
dropping invalid locations [CONTEXT service_id=6 ]
vqy: location must not have realtime in the future
    at vts.i(:com.google.android.gms@220221082@22.02.21 (060408-428111784):34)
    at vrd.j(:com.google.android.gms@220221082@22.02.21 (060408-428111784):0)
    at vrr.i(:com.google.android.gms@220221082@22.02.21 (060408-428111784):1)
    at vrd.j(:com.google.android.gms@220221082@22.02.21 (060408-428111784):0)
    at vrl.a(:com.google.android.gms@220221082@22.02.21 (060408-428111784):3)
    at arsp.d(:com.google.android.gms@220221082@22.02.21 (060408-428111784):10)
    at arvk.i(:com.google.android.gms@220221082@22.02.21 (060408-428111784):18)
    at arve.a(:com.google.android.gms@220221082@22.02.21 (060408-428111784):0)
    at vhn.onLocationChanged(:com.google.android.gms@220221082@22.02.21 (060408-428111784):0)
    at android.location.LocationListener.onLocationChanged(LocationListener.java:63)
    at android.location.LocationManager$LocationListenerTransport$1.operate(LocationManager.java:3180)
    at android.location.LocationManager$LocationListenerTransport$1.operate(LocationManager.java:3177)
    at com.android.internal.listeners.ListenerExecutor.lambda$executeSafely$0(ListenerExecutor.java:127)
    at com.android.internal.listeners.ListenerExecutor$$ExternalSyntheticLambda0.run(Unknown Source:8)
    at android.os.Handler.handleCallback(Handler.java:938)
    at android.os.Handler.dispatchMessage(Handler.java:99)
    at android.os.Looper.loopOnce(Looper.java:201)
    at android.os.Looper.loop(Looper.java:288)
    at android.os.HandlerThread.run(HandlerThread.java:67)
Run Code Online (Sandbox Code Playgroud)