在初始化 LocationCallback 后打开设备 GPS 时,不会调用 LocationCallback onLocationResult

LocationCallback onLocationResult isn't getting called when device GPS is turned on after initializing LocationCallback

我有一个前台服务,它在应用程序启动时被初始化,即使在应用程序被销毁时也会运行。我已经在前台服务中初始化了 LocationCallback,如下所示:

new LocationCallback() {
        @Override
        public void onLocationResult(LocationResult locationResult) {
            super.onLocationResult(locationResult);

            // My custom code
        }

        @Override
        public void onLocationAvailability(LocationAvailability locationAvailability) {
            super.onLocationAvailability(locationAvailability);
        }

我有2个案例:

a) 在打开设备 GPS 后初始化服务(连同 LocationCallback)时,一切正常。也就是说,控制在给定的持续时间后进入“onLocationResult”。

b) 但是,当服务(连同 LocationCallback)在设备 GPS 打开之前初始化时,控件永远不会进入“onLocationResult”。即使前台服务是 运行 并且设备上的 GPS 已打开(在 LocationCallback 初始化之后)。

有人可以帮我解决这个问题吗?

此问题仅出现在模拟器上(不确定是什么原因)。如果我尝试在设备上调试(使用 USB 调试),一切都会按预期进行。