如果设备屏幕关闭,如何获取位置?

How to get Location if device screen is off?

我正在开发必须在固定时间间隔后获取位置的应用程序。它工作正常。但是当设备的屏幕关闭时,它无法获取位置。 为此,我正在尝试 WakeLock。 当我使用 PowerManager.LOCATION_MODE_NO_CHANGE 时,它会在没有任何日志的情况下使应用程序崩溃。 请帮助我使用它 (PowerManager.LOCATION_MODE_NO_CHANGE)。 我在 MainActivity 的 onCreate 中使用它。

        PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
        mWakeLock = pm.newWakeLock(PowerManager.LOCATION_MODE_NO_CHANGE, "My Tag");
        mWakeLock.acquire();

这是由于省电模式。 如果省电模式打开,则设备将无法在屏幕关闭时获取位置。因此,要获取位置(屏幕关闭),我们必须关闭屏幕保护模式。