自己动手写一个android手机上的一键锁屏程序
2011-08-01 15:02
656 查看
为了大家少走弯路,也是为了相互交流,多结识一些朋友!我在这里贴出来:android手机上的一键锁屏程序具体代码及注意的问题,
下面就以我的工程为例进行详细说明:
工程结构
LockScreen.java
上面就是整个应用程序的核心代码及简单逻辑,下面就是相关配置文件
1,AndroidManifest.xml
在这个文件里有一个非常重要的属性,<activity android:name=".LockScreen$Controller" android:theme="@android:style/Theme.Translucent">这个里面的android:theme="@android:style/Theme.Translucent",是设置应用程序透明,
这样就不会出现当我们锁屏时会出现闪屏,至于为什么闪屏大家执行程序后就会明白了
2,device_admin_sample.xml
<?xml version="1.0" encoding="utf-8"?>
<device-admin xmlns:android="http://schemas.android.com/apk/res/android">
<uses-policies>
<force-lock />
</uses-policies>
</device-admin>
上面就是整个应用的所有了,有不明白的大家可以问我!
开发环境为2.2
另附源码下载地址:http://download.csdn.net/detail/zhangxiaofei2012/3486031
下面就以我的工程为例进行详细说明:
工程结构
LockScreen.java
package com.app; import android.app.Activity; import android.app.admin.DeviceAdminReceiver; import android.app.admin.DevicePolicyManager; import android.content.ComponentName; import android.content.Context; import android.content.Intent; import android.os.Bundle; public class LockScreen extends DeviceAdminReceiver { static final int RESULT_ENABLE = 1; public static class Controller extends Activity { DevicePolicyManager mDPM; ComponentName mDeviceAdminSample; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //首先我们要获得android设备管理代理 mDPM = (DevicePolicyManager) getSystemService(Context.DEVICE_POLICY_SERVICE); //LockScreen 继承自 DeviceAdminReceiver mDeviceAdminSample = new ComponentName(Controller.this, LockScreen.class); //得到当前设备管理器有没有激活 boolean active = mDPM.isAdminActive(mDeviceAdminSample); if (!active) { //如果没有激活的话,就去提示用户激活(第一次运行程序时) getAdmin(); }else{ //如果已经激活的话,就执行立即锁屏 mDPM.lockNow(); } // killMyself ,锁屏之后就立即kill掉我们的Activity,避免资源的浪费; android.os.Process.killProcess(android.os.Process.myPid()); } public void getAdmin() { Intent intent = new Intent(DevicePolicyManager.ACTION_ADD_DEVICE_ADMIN); intent.putExtra(DevicePolicyManager.EXTRA_DEVICE_ADMIN, mDeviceAdminSample); intent.putExtra(DevicePolicyManager.EXTRA_ADD_EXPLANATION, "欢迎您的使用!我自己写的程序 有问题可以联系我!QQ:295154688"); startActivityForResult(intent, RESULT_ENABLE); } } }
上面就是整个应用程序的核心代码及简单逻辑,下面就是相关配置文件
1,AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.app" android:versionCode="1" android:versionName="1.0"> <uses-sdk android:minSdkVersion="8" /> <application android:label="@string/app_name" android:icon="@drawable/icon" > <activity android:name=".LockScreen$Controller" android:theme="@android:style/Theme.Translucent"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <receiver android:name=".LockScreen" android:permission="android.permission.BIND_DEVICE_ADMIN"> <meta-data android:name="android.app.device_admin" android:resource="@xml/device_admin_sample" /> <intent-filter> <action android:name="android.app.action.DEVICE_ADMIN_ENABLED" /> </intent-filter> </receiver> </application> </manifest>
在这个文件里有一个非常重要的属性,<activity android:name=".LockScreen$Controller" android:theme="@android:style/Theme.Translucent">这个里面的android:theme="@android:style/Theme.Translucent",是设置应用程序透明,
这样就不会出现当我们锁屏时会出现闪屏,至于为什么闪屏大家执行程序后就会明白了
2,device_admin_sample.xml
<?xml version="1.0" encoding="utf-8"?>
<device-admin xmlns:android="http://schemas.android.com/apk/res/android">
<uses-policies>
<force-lock />
</uses-policies>
</device-admin>
上面就是整个应用的所有了,有不明白的大家可以问我!
开发环境为2.2
另附源码下载地址:http://download.csdn.net/detail/zhangxiaofei2012/3486031
相关文章推荐
- 自己动手搭建 MongoDB 环境,并建立一个 .NET HelloWorld 程序测试
- Android程序禁止手机自动锁屏和屏幕翻转的
- 自己动手实现一个Android Studio插件
- 自己动手写一个简单的Windows shell扩展程序
- 继文章‘’ 自己动手写一个轻量级的Android网络请求框架‘’后续------增加缓存功能
- 自己动手清除Android系统中的不良程序
- Android程序禁止手机自动锁屏和屏幕翻转的
- android开发 华为手机锁屏存活,开机自启动,一键不清理,手动杀死自动起来
- 继文章‘’ 自己动手写一个轻量级的Android网络请求框架‘’补充------增加进度回调
- 手机直播程序开发搭建一个您自己的平台
- 自己动手写一个轻量级的Android网络请求框架
- 自己动手写android手机桌面(第一篇)
- 自己动手写android手机桌面-第一篇
- 自己动手实现一个Android断点下载
- 自己动手从零开始写一个完整的android Service
- 自己动手为你的Android手机做个支架!仅纪念这一天!!!
- Android程序之一键锁屏
- 自己动手写一个简单的Shell之二:运行程序
- 自己动手弄基于QT5和directx11的简单粒子编辑器v0.1(一个编辑器,一个更新器,一个linux服务端程序)
- 论山寨手机和Android 【8】 自己动手做XP手机,DIY实战指南