目前正在研究Android的屏保制作程序,
碰到一些问题。
//启动广播接收器   监听返回应用程序界面 消息
activityResetReciever = new BroadcastReceiver() {
public void onReceive(Context context, Intent intent) {

//获取栈顶的 activity
                   screenBright();//屏亮
   Intent UnitIntent=new Intent(ScreenService.this, Activity.class);
   UnitIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
   startActivity(UnitIntent);     
}
 };
//注册  SCREEN_OFF 
registerReceiver(activityResetReciever, new IntentFilter(Intent.ACTION_SCREEN_OFF));

加上  screenBright();屏保只能实现一次;为什么呢?我的目的是让Activity.class这个界面作为屏保时的界面。
大家帮忙看看,是哪里错了。

解决方案 »

  1.   

    加一下log,看看是不是只有第一次能接收到Intent.ACTION_SCREEN_OFF
    先确定是接收了不响应还是接受不到了
      

  2.   

    在Activity中注册BroadcastReceiver,如果Activity没有启动的话,有消息来临时,这个BroadcastReceiver不会被调用吧
      

  3.   

    只是启动初始化的时候接受了。
    后面就么了
    然后我想问一下,他是以这个Intent.ACTION_SCREEN_OFF为条件再发送指令的,那么是不是一定是在屏幕变黑的情况下?
    我就是这想法,所以加了screenBright();//屏亮   这句。
    在加上这句之前,屏保是可以的,变黑,点屏,亮后就是这个界面Activity.class。