首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何让WakeLock弹出应用程序到前台

如何让WakeLock弹出应用程序到前台
EN

Stack Overflow用户
提问于 2015-04-07 07:44:29
回答 1查看 183关注 0票数 0

我希望我的应用程序在后台运行,或者在手机进入睡眠状态后运行,当你接近某个纬度和经度时,我的应用程序会立即弹出到前台。这必须工作,无论它是从睡眠或其他应用程序是在前台。我正在使用一个服务和一个WakeLock。我非常确定服务正在工作,但我不知道如何检查,因为如果调试器不在前台,则不会返回任何内容。如果它正常工作,那么我的WakeLock就不能像预期的那样工作。

代码语言:javascript
复制
public abstract class WakeLocker {

private static PowerManager.WakeLock fullWakeLock;
private static PowerManager.WakeLock partialWakeLock;
private static PowerManager pm;

public static void acquire(Context context) {
    if (fullWakeLock != null) fullWakeLock.release();
    if (partialWakeLock != null) partialWakeLock.release();

    pm = (PowerManager) context.getSystemService(Context.POWER_SERVICE);
    fullWakeLock = pm.newWakeLock((PowerManager.SCREEN_BRIGHT_WAKE_LOCK |
            PowerManager.FULL_WAKE_LOCK |
            PowerManager.ACQUIRE_CAUSES_WAKEUP), "Loneworker - FULL WAKE LOCK");
    partialWakeLock = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "Loneworker - PARTIAL WAKE LOCK");
    partialWakeLock.acquire();
}

public static void release() {
    if (fullWakeLock != null) {
        fullWakeLock.release();
        fullWakeLock = null;
    }
    if (partialWakeLock != null) {
        partialWakeLock.release();
        partialWakeLock = null;
    }
}

public static void wakeDevice(Context context) {
        fullWakeLock.acquire();

        //KeyguardManager keyguardManager = (KeyguardManager) context.getSystemService(Context.KEYGUARD_SERVICE);
        //KeyguardManager.KeyguardLock keyguardLock = keyguardManager.newKeyguardLock("TAG");
        //keyguardLock.disableKeyguard();

}

public static boolean fullWakeLockActive() {
   return fullWakeLock != null;
}

}

fullWakeLock是在这里获得的

代码语言:javascript
复制
if (makeUseOfNewLocation(location) < 20) {
                if (WakeLocker.fullWakeLockActive())
                    WakeLocker.wakeDevice(allert.getMA());
                if (callProgress.isOffHook()) {
                    new BlinkBack(allert.getMA());
                }
EN

回答 1

Stack Overflow用户

发布于 2015-04-07 07:52:50

唤醒锁本身不能将设备从睡眠中唤醒,也不能使您的so转到前台。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29481445

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档