类似设置禁止截屏和保持屏幕常亮这种依赖生命周期方法的代码,如果需要应用到多个 Activity 的话,可以将其放在 BaseActivity 基类中,避免编写重复性代码。或者还可以借助这个神奇的 Activity 生命周期接口:
ActivityLifecycleCallbacks
在自定义 Application 类onCreate()方法中添加:
registerActivityLifecycleCallbacks(newActivityLifecycleCallbacks() {
@Override
public void onActivityCreated(Activity activity, Bundle savedInstanceState){ activity.getWindow().addFlags(WindowManager.LayoutParams.FLAG_SECURE); activity.getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
}
// 这里省略其他相关 Activity 生命周期函
});