service-【急】android小白求帮助,android如何唤醒屏幕?【在线等】

问题描述

【急】android小白求帮助,android如何唤醒屏幕?【在线等】
        public void onSensorChanged(SensorEvent event) {
            // values的第一个就是光感亮度的值
            float values = event.values[0];
            // 设置标志位
            boolean temp = true;
            // 如果光感值小于等于3则锁屏
            if (values <= 3) {
                Toast.makeText(MainActivity.this, "锁屏", Toast.LENGTH_LONG)
                        .show();
                // systemLock();
                temp = false;
            }
            // 如果temp为假并且光感值小于等于三则唤醒屏幕
            if (!temp && values <= 3) {
                // wakeUpAndUnlock();
                Toast.makeText(MainActivity.this, "唤醒屏幕", Toast.LENGTH_LONG)
                        .show();
                temp = true;
            }
            lightLevel.setText("当前的光感值为:" + values + "lux");
        }

        @Override
        public void onAccuracyChanged(Sensor arg0, int arg1) {
            // TODO Auto-generated method stub

        }

 /**************************我是分割线****************************/
    // 锁屏
    private void systemLock() {
        if (this.policyManager.isAdminActive(this.componentName)) {
            Window localWindow = getWindow();
            WindowManager.LayoutParams localLayoutParams = localWindow
                    .getAttributes();
            localLayoutParams.screenBrightness = 0.05F;
            localWindow.setAttributes(localLayoutParams);
            this.policyManager.lockNow();
        }
        finish();
    }
    // 唤醒屏幕

代码如上 1.差一个唤醒屏幕的方法 2.onSensorChanged(SensorEvent event)两个if都会执行 3.如何利用services让程序后台运行?

解决方案

  1. 参考Wake Android Device up
    唤醒屏幕

    PowerManager pm = (PowerManager) getApplicationContext().getSystemService(Context.POWER_SERVICE);
    WakeLock wakeLock = pm.newWakeLock((PowerManager.SCREEN_BRIGHT_WAKE_LOCK | PowerManager.FULL_WAKE_LOCK | PowerManager.ACQUIRE_CAUSES_WAKEUP), "TAG");
    wakeLock.acquire();

    释放屏幕锁

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

    添加相应权限

    <uses-permission android:name="android.permission.WAKE_LOCK" />
    <uses-permission android:name="android.permission.DISABLE_KEYGUARD" />

2.你的这部分貌似逻辑有问题,boolean temp = true;初始为true,但是第一个if的时候设为false,所以第二个if的时候每次都是false,也就是每次都会执行,然后又把temp设为true。不知道你需要达到什么样的效果,但是从代码上看,temp没有必要,直接把两个if合并,只判断光感值得效果和你现在的应该是一样的吧?如果你需要两个if根据temp值来执行相应的代码,是否需要把temp放在函数外面,避免每次都被初始化为true?

3.你可以做成服务,通过相应的广播来启动。

时间: 2024-12-22 15:45:06

service-【急】android小白求帮助,android如何唤醒屏幕?【在线等】的相关文章

android小白求帮助,onMenuItemSelected

问题描述 android小白求帮助,onMenuItemSelected 这是我的menu.xml <item android:id="@+id/setting" android:orderInCategory="1" android:title="设置"/> <item android:id="@+id/app_manage" android:orderInCategory="2" an

android 数据...-用sqlitestudio导出的XML格式的数据库文件怎么用。小白求帮助

问题描述 用sqlitestudio导出的XML格式的数据库文件怎么用.小白求帮助 XML格式的数据库文件要放在哪里?怎么用sqliteopenhelper读取?读取后怎么通过simplecursoradapter显示在listview里? 解决方案 有帮助,但不是我想要的答案,积分给自己吧 解决方案二: 放在哪里都可以.如果是用于数据备份,可以放在外部sd卡上. sqliteopenhelper只能读取sqldb的数据库文件,不能解析xml 读取xml:http://www.cnblogs.c

android平台-急急急 高悬赏 在Android平台上怎样做一个学生签到的系统

问题描述 急急急 高悬赏 在Android平台上怎样做一个学生签到的系统 急急急!!奉上全部c币~ 求怎样能在Android手机上做个小APP实现: 通过Android平台和GPS定位系统实现学生注册.登录,利用GPS定位发送位置进行签到,并能结合人脸识别验证,最终实现学生签到系统.并要求界面简单,使用Java语言. 解决方案 急急急!房屋销售管理系统的数据库急急 解决方案二: 参考一下吧http://download.csdn.net/detail/fnkfdn/9518416 解决方案三:

Android小挂件(APP Widgets)设计指导_Android

应用小挂件(也叫做窗口小挂件)在android1.5的时候被第一次引出,后来再android3.0和android3.1中得到了极大的发展,他们可以展示一些应用的常用信息或者一些相关的信息到桌面上,标准的Android系统镜像中有很多自带的创口小挂件,例如:闹钟.音乐等 Figure 1. Example app widgets in Android 4.0. 本文将描述怎么去设计小挂件,以便于能很好的与其他挂件搭配的很默契,同时也会介绍一些小技巧. AppWidget 剖析        一个

android音乐播放器-Android关于音乐播放器频谱可视化图形的问题,急!

问题描述 Android关于音乐播放器频谱可视化图形的问题,急! 如上图,底部频谱可视化图形不会动了,不知道是什么原因造成的.首先我说下我目前知道的可能造成这种情况的事情.因为我的这个播放器里的播放列表这一项,要同步android系统媒体库里的播放列表.也就是说在系统的播放器中的播放列表会出现在我的播放器的播放列表中.本来我的包名是这样的:com.music.musicmenu 这样就不会出现上述问题,当我把包名改成系统的com.android.music 这时就会出现上述问题.也就是频谱不会动

图片-Jsoup解析HTML android小虾米求助

问题描述 Jsoup解析HTML android小虾米求助 例如 下面这个网页 我要怎么才能把里面的内容全部解析出来呢? 因为才自学不久所有 用 Jsoup 解析起来感觉很困惑 麻烦各位大神帮个忙 : url = "http://app.cqbdyg.com/index.php?m=content&c=index&a=show&catid=10&id=402"; 解决方案 http://www.jb51.net/article/43485.htm 解决方

launcher-往Launcher代码添加android小部件不显示,

问题描述 往Launcher代码添加android小部件不显示, 怎么在系统的Launcher的包里添加一个小部件啊,我把我的音乐小部件丢进default_workspace.xml里了,可以没显示出来 launcher:packageName="com.carl.android.music.ui.SLMusicWidget" launcher:className="com.carl.android.music.ui" launcher:screen="1

Android 小项目之--数据存储【Network】(附源码)

http://www.cnblogs.com/TerryBlog/archive/2010/06/20/1761411.html 将数据保存发送到电子邮件中备份,首要前提应该先在模拟器中设置好电子邮件帐户,设置如下: 第一步,启动模拟器,打开"菜单",选择"电子邮件"项,填写相应帐号和密码. 第二步,点击NEXT,程序自动配置电子邮件相关信息. 第三步,配置完成后,输入相应的名称信息,即可设置完成,接下来程序会默认帮你导入你输入邮箱帐号的相关信息 业务逻辑如下:示例

视频-求助:急求啊!在Android端取得手机位置在服务端的匹配问题

问题描述 求助:急求啊!在Android端取得手机位置在服务端的匹配问题 小弟java程序猿,最近在做公司两个项目,一个是视频APP,它在后台上传的视频有一个地区属性,比如 湖南-长沙 : 那么在Android客户端用户登录时,可以通过GPS取得用户登录所在地,比如取得:湖南长沙望城县xxx区xxx街道...:那么需求就是在哪个地区登录的用户只能看哪个地区的视频:这样子我在服务端录入的时候给视频的地址是 "湖南-长沙":那么怎么跟Android端给我的地址来匹配判断呢? 当然我也想到先