Android开发自己的锁屏壁纸

SurfaceView  SurfaceHolder  MediaPlayer    Service      BroadcastReceiver    KeyguardManager    PowerManager

思路:启动一个服务,监听灭屏广播,当收到广播的时候,点亮屏幕,禁用锁屏,调用使用SurfaceView播放视频。

1.启动一个服务

<service Android:name=".LockService" >
            <intent-filter>
                <category android:name="android.intent.category.default" />
            </intent-filter>
        </service>

Intent intent = new Intent();
        intent.setClass(this,LockService.class);
        startService(intent);

2.LockService onCreate中注册监听ACTION_SCREEN_OFF

final IntentFilter filter = new IntentFilter();
        filter.addAction(Intent.ACTION_SCREEN_OFF);
     
        registerReceiver(mReceiver, filter);

3.LockService 的内部监听类

private final BroadcastReceiver mReceiver = new BroadcastReceiver() {
        @Override
        public void onReceive(Context context, Intent intent) {
            final String action = intent.getAction();
            if (Intent.ACTION_SCREEN_OFF.equals(action)) {
                Log.d("yzy","screen_off...");
                if(HelloActivity.isScreenOff == false){
                    wakeUpScreen();
                    Intent intent1  = new Intent();
                    intent1.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
                    intent1.setClass(LockService.this, HelloActivity.class);//启动屏保界面
                    startActivity(intent1);
                    HelloActivity.isScreenOff = true;

}
             
            }
        }
    };

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/48bce93653c2e4d8c8e63d38110072bf.html