`
chroya
  • 浏览: 661569 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

android锁屏实现思路

阅读更多

以前就想过要实现一个锁屏程序,一直没有动手,今天尝试了一下。

首先,得听到系统的屏幕关闭的广播,这个广播是什么呢?不知道啊。那怎么办?搜呗!搜索,可以搜到,不过我找到一个可以知道系统所有广播的办法:我的 sdk1.5 的,进入sdk 主目录,然后进入platforms\android-1.5\data 目录,里面有 activity_actions.txtbroadcast_actions.txt 等文本文档,activity_actions.txt 里面是系 统的所有actionbroadcast_actions 里面是系统的所有广播。从这里面我们可以找到屏幕关闭的广 播:android.intent.action.SCREEN_OFF

 

然后我写了个BroadcastReceiver

class ScreenOffListener extends BroadcastReceiver {

		@Override
		public void onReceive(Context context, Intent intent) {
			if(LOGIT) Log.d(TAG, "screen off");
		}
    	
    }

 

然后在manifest 里面注册,

<receiver android:name=".ScreenOffListener">
        <intent-filter>
        	<action android:name="android.intent.action.SCREEN_OFF" />
        </intent-filter> 
</receiver>

 

然后信心满满的在我的G2 上测试。可是,广播怎么都收不到。郁闷了。

换个方法!写一个activity ,在里面注册这个 BroadcastReceiver 。然后再次测试,结果。。。嘿嘿,成功收到广播。

看来在全局接收screenoff 广播是不行的,只能 程序里面注册监听,原因暂时不管了,有时间再研究。

继续这个话题。在activity 里面注册BroadcastReceiver ,如果这个activity 切换到后台了,也就是stop 了,BroadcastReceiver 必须得unregister ,然后就听不到screenoff 广播了。怎么办呢?要达到这个目的,只能使用Service 了。然后我写了一个Service ,在里面注册BroadcastReceiver ,监听screenoff ,嘿嘿,ok 了。然后这个服务一被关闭,马上再启动,这样就可以一直听到广播了。

广播的问题解决了,接下来就是锁屏主程序了。Activity 可以截获大部分的键,只有endcallhome 键截获不了。截获键盘的代码:

@Override  public boolean dispatchKeyEvent(KeyEvent event) { 
	return true;
}

 

Endcall 没必要截获,因为要锁屏,必须要能关闭屏幕。而home 键,暂时没想到什么好办法。大家有什么办法,共同讨论讨论吧^-^。

 

6
1
分享到:
评论
7 楼 xiandaoyan 2011-08-31  
好像版本较高的android要处理锁屏需要到平台层了,应用层解决不了了吧!!
6 楼 kjsoloho 2011-08-11  
我用两种办法写,都没有监听到screen_off,版本是2.3,可以发源码我看看吗?
kjsoloho@gmail.com
5 楼 夜之son 2011-07-08  
lz有没有试过这种情况,服务用进程管理软件结束了。然后会启动,但是不会再接收广播了。很纠结。
4 楼 whao189 2011-06-21  
lifei219317 写道
可以在Service里面启动此BroadcastReceiver,Service开机自启动,就OK了。你之前没有接收到android.intent.action.SCREEN_OFF应该是你的Service没有起起来。



此人的想法是正确的!
3 楼 夜之son 2011-04-27  
楼主锁屏实现了吗?用的是哪个api.
2 楼 chroya 2010-05-20  
lifei219317 写道
可以在Service里面启动此BroadcastReceiver,Service开机自启动,就OK了。你之前没有接收到android.intent.action.SCREEN_OFF应该是你的Service没有起起来。

我的服务是在activity里面启动的,screenoff广播发出的时候,我的service肯定是处于启动状态。但是没有接收到广播。我想这个应该是android有什么机制,限制这样全局的注册广播。
1 楼 lifei219317 2010-05-19  
可以在Service里面启动此BroadcastReceiver,Service开机自启动,就OK了。你之前没有接收到android.intent.action.SCREEN_OFF应该是你的Service没有起起来。

相关推荐

    android 锁屏 九宫格 实例项目

    注释可以帮助理解代码的功能和实现思路,加快学习速度。 9. **分享与开源** - 开发者分享了这个项目,意味着其他开发者可以学习、修改和再利用。开源社区如GitHub是很好的平台,可以让开发者互相交流,共同进步。 ...

    Android实现音乐播放器锁屏页

    下边来说一下实现逻辑,其主要思路就是新建一个activity使其覆盖在锁屏页上边。 一、我们新建一个LockActivty,既然是四大组件之一,必不可少的在AndroidManifest.xml中注册: &lt;activity android:name=....

    Android 源码高仿IPhone锁屏.zip

    在Android平台上,模仿iPhone的锁屏界面是一种常见的实践,尤其对于开发者来说,这是一次学习和探索Android UI设计以及交互实现的绝佳机会。这个"Android 源码高仿IPhone锁屏.zip"文件很可能包含了实现这一功能的...

    android一键锁屏源代码,android4.2工作正常-IT计算机-毕业设计.zip

    12. **论文撰写**:作为毕业设计的一部分,通常需要撰写相关的技术报告或论文,介绍项目背景、设计思路、实现过程及遇到的问题和解决方案。 这个项目不仅涵盖了Android应用开发的基本技术,还涉及到系统级事件的...

    Android安卓iLivephoto锁屏通知源码Softboy出品

    总的来说,Softboy的"Android安卓iLivephoto锁屏通知源码"为开发者提供了一个创新的思路,让锁屏通知不再仅仅是文字和静态图片,而是成为一种动态的、富有情感的交流方式。通过深入研究和实践这个源码,开发者不仅...

    自己做的仿三星9100锁屏界面

    标签“android锁屏”明确了这个项目的核心主题,即Android平台上的锁屏应用程序开发。在Android系统中,锁屏界面是用户与设备交互的第一步,它涉及到安全性、用户体验以及个性化设置等多个方面。开发者需要理解...

    安卓Android源码——源码高仿IPhone锁屏.zip

    "安卓Android源码——源码高仿IPhone锁屏.zip"这个压缩包文件,显然提供了一个实例,展示了如何在Android系统上实现一个与iPhone类似的锁屏界面。下面我们将深入探讨这个主题,讲解相关的技术要点和知识。 首先,...

    仿360星空锁屏(纠正版)

    下面我们将深入探讨这个锁屏应用可能涉及到的技术点、设计思路以及实现方法。 1. **Android系统级别的锁屏接口**: Android系统提供了锁屏相关的API,允许开发者构建自己的锁屏界面。这些API通常包含在`...

    锁屏.zip

    通过以上对“锁屏.zip”压缩包中内容的解析,我们可以了解到Android锁屏的实现原理和设计思路,为个人项目或毕业设计提供宝贵的参考资料。在实践中不断学习和探索,才能在Android开发领域更上一层楼。

    Android 智能UI锁屏-IT计算机-毕业设计.zip

    3. **自定义View**:为了实现独特的锁屏界面,开发者可能创建了一个自定义View,扩展了Android的基础View类。这可以包含密码输入框、滑动解锁条或其他交互元素。自定义View允许开发者添加特定的功能和视觉样式。 4....

    实现Android应用内锁屏

    以上是基于"AppLock"源码实现应用内锁屏功能的基本思路和关键技术点。实际项目中可能还需要考虑更多细节,如性能优化、安全性增强以及用户体验的提升。通过理解和学习这个开源项目,开发者不仅可以掌握如何实现应用...

    android 九宫格锁屏

    本篇文章将深入探讨“九宫格锁屏”这一主题,从实现原理、设计思路到关键代码解析进行详细介绍。 1. **实现原理** 九宫格锁屏的核心是记录用户的解锁轨迹,即用户在屏幕上点击的点顺序。系统会将这些点的坐标保存...

    锁屏ppt初稿

    - [《深入理解Android锁屏机制》](http://blog.csdn.net/stevenhu_223/article/details/8490522) #### 三、锁屏的界面组成 锁屏界面的组成元素直接影响到用户的使用体验。一般来说,锁屏界面由以下几个部分组成: ...

    安卓锁屏九宫格锁屏解锁壁纸相关-一键锁屏功能源码.zip

    总结,这份源码资源为开发者提供了一次深入理解Android锁屏机制的机会,特别是九宫格锁屏和一键锁屏的实现细节。通过学习和实践,不仅可以提升编程技能,还能加深对Android系统底层运作的理解。

    Android应用源码之智能UI锁屏-IT计算机-毕业设计.zip

    3. **自定义View**:为了实现独特的锁屏效果,开发者可能创建了自定义View类,扩展了Android的基础View或ViewGroup。自定义View允许开发者添加特殊功能,比如动态解锁路径、手势识别等。 4. **触摸事件处理**:...

    模仿QQ九宫格锁屏

    在本文中,我们将深入探讨“模仿QQ九宫格锁屏”的实现原理、设计思路以及如何在自己的应用程序中实现这一功能。 首先,九宫格锁屏的核心概念是通过用户在9个方格中选择特定的顺序来解锁设备。用户可以设置自定义的...

Global site tag (gtag.js) - Google Analytics