Rexsee API介绍:Android屏幕锁定,Keyguard函数与扩展源码

Android startService 启动自动解锁点亮屏幕 <br />看到一个帖,做的笔记,帖子在:http://topic.csdn.net/u/20110304/15/ae5279b1-692e-48a7-a5b9-0e579a3a6974.html<br />我想记录的是:<br />做提醒功能的一个服务,自动解锁+亮屏。<br />写一个Activity启动该服务即可,用一个线程开启服务,要是黑屏的状态下启动才有效果。<br /><br />import android.app.KeyguardManager;<br />import android.ap 阅读详情
Android锁屏时会先调用onPause();解锁时调用onResume,读入保存的应用程序的资源。如果运行程序时已经锁屏,应用程序会先调用onCreate(),然后onResume(),再则onPause()。


取消锁屏:
<uses-permission android:name="android.permission.DISABLE_KEYGUARD"/>
KeyguardManager mKeyGuardManager = (KeyguardManager)getSystemService(KEYGUARD_SERVICE);
KeyguardLock mLock = mKeyGuardManager.newKeyguardLock("自己Activity名字");
mLock.disableKeyguard();

也是相当的简单了,但基于Rexsee的API,可以通过一句话搞定。
1. 取消锁屏:window.setTimeout('rexseeKeyguard.disable();alert(\'自动解锁!\');',10000);
alert('请按电源键关屏再开屏看到锁屏画面,10秒后自动解锁。')
2. 启动锁屏:rexseeKeyguard.reEnable();


如下是rexseeKeyguard.java源码
/* 
* Copyright (C) 2011 The Rexsee Open Source Project 
* 
* Licensed under the Rexsee License, Version 1.0 (the "License"); 
* you may not use this file except in compliance with the License. 
* You may obtain a copy of the License at 
* 
*      http://www.rexsee.com/CN/legal/license.html 
* 
* Unless required by applicable law or agreed to in writing, software 
* distributed under the License is distributed on an "AS IS" BASIS, 
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 
* See the License for the specific language governing permissions and 
* limitations under the License. 
*/ 
 
package rexsee.core.alarm;  
 
import rexsee.core.browser.JavascriptInterface;  
import rexsee.core.browser.RexseeBrowser;  
import android.app.KeyguardManager;  
import android.app.KeyguardManager.KeyguardLock;  
import android.content.Context;  
 
public class RexseeKeyguard implements JavascriptInterface {  
 
       private static final String INTERFACE_NAME = "Keyguard";  
       @Override  
       public String getInterfaceName() {  
               return mBrowser.application.resources.prefix + INTERFACE_NAME;  
       }  
       @Override  
       public JavascriptInterface getInheritInterface(RexseeBrowser childBrowser) {  
               return this;  
       }  
       @Override  
       public JavascriptInterface getNewInterface(RexseeBrowser childBrowser) {  
               return new RexseeKeyguard(childBrowser);  
       }  
 
       private final Context mContext;  
       private final RexseeBrowser mBrowser;  
       private KeyguardLock mKeyguardLock = null;  
 
       public RexseeKeyguard(RexseeBrowser browser) {  
               mBrowser = browser;  
               mContext = browser.getContext();  
       }  
       public RexseeKeyguard(Context context) {  
               mBrowser = null;  
               mContext = context;  
       }  
 
       //JavaScript Interface  
 
       public void enable() {  
               /*  
               try {  
                       DevicePolicyManager dpm = (DevicePolicyManager) mContext.getSystemService(Context.DEVICE_POLICY_SERVICE);  
                       dpm.lockNow();  
               } catch (Exception e) {  
                       mBrowser.exception(getInterfaceName(), e);  
               }  
               */  
       }  
       public void reEnable() {  
               if (mKeyguardLock != null) {  
                       mKeyguardLock.reenableKeyguard();  
                       mKeyguardLock = null;  
               }  
       }  
       public void disable() {  
               KeyguardManager keyguardManager = (KeyguardManager) mContext.getSystemService(Context.KEYGUARD_SERVICE);  
               mKeyguardLock = keyguardManager.newKeyguardLock("");  
               mKeyguardLock.disableKeyguard();  
       }  
 
} 

仅对Rexsee的源码和函数事件做了整理,相关的demo或源码解析可以在Rexsee社区了解,目前Rexsee已提供了近2000个扩展,覆盖Android原生功能超过90%,且全部开放: http://www.rexsee.com/
Android调用密码锁屏校验 1:获取manager KeyguardManager mKeyguardMgr = null; if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { mKeyguardMgr = getSystemService(KeyguardManager.class); } 2:创建intent /** * 跳转锁屏密码校验页面 */ @RequiresApi(api = Buil 阅读详情

相关推荐

KeyguardManager避坑指南:Android锁屏管理的那些隐藏细节

本文深入探讨了Android开发中KeyguardManager的使用细节常见陷阱。针对权限管理、不同Android版本的兼容性问题、回调时序以及厂商定制等关键点,提供了实用的避坑指南和代码示例,帮助开发者构建更稳定可靠的锁屏交互功能。

net55的博客 483

实现一个Android锁屏App的难点总结

自定义一个漂亮实用的锁屏app,如果能赢得用户的认可,替换系统自带的锁屏,绝对是一个不小的日活入口。这段时间正好总结一下最近调研的Android平台的锁屏app开发中的难点。 一、前言 锁屏的大概实现原理都很简单。监听系统的亮屏广播,在亮屏的时候展示自己的锁屏界面,用户在锁屏界面上进行一系列的动作才能解锁。有的手机启动锁屏界面的过程会很卡...

weixin_34138056的博客 939

C# MP3播放器项目实战:源代码解析应用

C#(读作“看#”)是一种由微软开发的面向对象、跨平台的编程语言,它是.NET Framework的一部分,并且是构建Windows应用程序最常用的语言之一。C#自2002年首次发布以来,已经发展为一个成熟的语言,其设计受到C++和Java的影响,具备现代编程语言所需的所有特性。

weixin_35732273的博客 681

Android Q上三方应用调用disableKeyguard接口带来的问题

概述 今天测试同事报了一个问题,概率性的,不管在什么界面玩手机,玩着玩着,就可能突然跳出来keyguard给把手机锁屏了,拿到手机看了下,测试机没有设置pin/password/pattern,首先猜测是某个三方应用将锁屏禁用掉了, google提供了禁用锁屏的API,但是google已经不建议用了,未来或许会删除 KeyguardManager keyguardManager =...

qq_34211365的博客 4296

C#写的一款音乐播放器+源代码下载

用C#写的一款音乐播放器,采用的微软解码技术,界面虽然粗糙但是功能基本上都写齐全了,供大家参考学习。里面采用了大量的循环遍历实现对歌曲列表的操作,包括删除全部歌曲、删除重复歌曲、删除无效歌曲等。实现了拖放歌曲的效果,双击即可播放。下载地址如下:http://download.csdn.net/source/2949621有什么问题请联系我QQ:29992379

技术改变生活 2460

C#+音乐播放器+源代码+微软解码技术

<br /><br />最新发布了一款音乐播放器,采用微软Media Player的解码技术 ,在工具类中用字符串数组建立虚拟表存放歌曲的编号,实现了播放器的一些列效果,起价值是充分发挥了遍历的作用,包括删除重复歌曲、删除错误歌曲全删等地方都用到了循环遍历。<br />其源代码已经共享到了CSND下载,连接地址如下:<br />http://download.csdn.net/source/2927110

韩弈风博客 1226

【190320】C# 写的简易千千静听播放器源代码

源码下载简介 C# 写的简易千千静听播放器,类似千千静听播放器,支持歌曲分类列表播放。 源码下载地址:点击下载 备用下载地址:点击下载

资源小站 910

我的第一个C#小程序之简单音乐播放器

我的第一个C#小程序之简单音乐播放器 初识C#程序 因为想自己做一些小的操作程序,以及一些互动灯光的需求,所以自学了一些基础知识,比较零碎不成系统。 第一个小程序之简单音乐播放器 界面如下图所示: 源代码如下: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.IO; using System.L

weixin_50754186的博客 376

C#.NET2005实现一个流媒体播放器

/*C#.NET2005实现一个流媒体播放器 2007-04-05 16:38 用C#.NET2005实现一个流媒体播放器,感觉还是不错的,就是调用了Windows中的一个动态连接库——Quarz.dll。我写的是一个DirectShow多媒体播放器。支持目前为止的大部分格式。代码共享一下:*/ using System; using System.Collections.Generic; usi

码农一枚 300

利用API编写WAV和MP3音乐播放器(C#)

利用API编写WAV和MP3音乐播放器(C#) 我的资源里有源代码可下载。 http://download.csdn.net/source/1724904

helloyesyes 129

C 播放 RTMP 和 RTSP 流媒体源代码分享

C# 播放 RTMP 和 RTSP 流媒体源代码分享 【下载地址】C播放RTMP和RTSP流媒体源代码分享 在开发过程中,我曾苦苦寻找用 C# 编写 RTMP 播放器的资源,但发现相关资料非常有限。因此,我决定将我编写的 RTMP 和 RTSP 流媒体播放器的源代码分享出来,希望能帮助到有同样需求的朋友们 ...

gitblog_09733的博客 430

求C#解码音频文件的方法

本人想做一个音乐播放器,由于没有目前只会C#,网上找的好多源代码都不是用这个写的,忘有高手给我指点,本人感激不尽!!!!

zc13655559420的专栏 807

C#编写简单音乐播放器

C#编写简单音乐播放器   写本程序主要是为了熟练掌握C#winForm编程   界面是从千千静音的一个皮肤加工而来   界面预览       程序及源码见附件   MusicPlay_美化_.rar (562.3 KB) 下载次数: 749

追求上进的码农 4038

C万能视频播放器(附代码)资源下载介绍

C#万能视频播放器(附代码)资源下载介绍 去发现同类优质开源项目:https://gitcode.com/ 欢迎来到C#万能视频播放器资源下载页面!本仓库提供了一款基于C#开发的视频播放器,能够支持多种视频格式的播放。以下是该资源文件的详细描述和功能特点。 资源描述 本资源包含一个C#开发的万能视频播放器,以及相应的源代码。视频播放器具备播放、暂停、停止、全屏等功能,支持多种视频格式,如mp4、a...

gitblog_06773的博客 352

基于VLC的C开发视频播放器

基于VLC的C#开发视频播放器 去发现同类优质开源项目:https://gitcode.com/ 资源描述 本仓库提供了一个基于VLC的C#开发视频播放器的资源文件,支持多种视频和音频格式。该资源文件包含了完整的源代码、组件、插件以及相关的DLL文件,适用于Vlc.DotNet.Core、Vlc.DotNet.Forms、Vlc.DotNet.Wpf等项目。 内容概述 Vlc.DotNet.Fo...

gitblog_09771的博客 652

万能播放器开源项目

万能播放器开源项目 去发现同类优质开源项目:https://gitcode.com/ 项目简介 本项目为一个基于C#开发的万能播放器,包含完整的源代码。该播放器具备播放歌曲和视频的功能,并支持10种以上常见媒体格式,满足多种播放需求。通过查看和分析源代码,您可以了解媒体播放器的开发原理,并尝试自己编写一个类似的播放器。 功能特点 播放歌曲和视频文件 支持多种媒体格式 界面友好,操作简便 开源代码...

gitblog_06720的博客 400
上一篇: Rexsee API介绍:Android WakeLock进程持续,阻止应用休眠
下一篇: Rexsee API介绍:Android定时任务Alarm,附基本的闹钟功能示例
Lafay
博客等级 码龄14年 0粉丝 28原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值