0

在 My Activity 上,我启动了一项服务来注册广播接收器以关闭接收事件屏幕。我想当屏幕关闭时,我的活动将自动启动。

接收者的 onReceive() 代码:

public void onReceive(Context ct, Intent intent) {
        if (Intent.ACTION_SCREEN_OFF.equalsIgnoreCase(intent.getAction())) {

            final Context context;
            context = ct;




            Intent i = new Intent(context, ScreenSaver.class);
            //i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
            i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK|Intent.FLAG_ACTIVITY_MULTIPLE_TASK);
            context.startActivity(i);

        } 

    }

Activity 的 Oncreate() 代码

protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        this.requestWindowFeature(Window.FEATURE_NO_TITLE);
        setContentView(R.layout.screensaver);
         mainLayout = (LinearLayout)findViewById(R.id.mainLayout);
        mainLayout.setOnClickListener(this);




        getWindow().addFlags(WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD
                |WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON
                | WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED
                |WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON
                |WindowManager.LayoutParams.FLAG_FULLSCREEN);


    }

我在手机上安装了应用程序,当屏幕自动关闭或按下电源按钮时,我的活动自动启动正常(手机通过电缆与 PC 连接)

但是当我移除电缆时,当屏幕自动关闭时,我的活动没有开始。不知为何有不同。任何人都可以为我提供帮助和解释清楚吗?谢谢

4

0 回答 0