我知道如何在Android平板电脑上调暗状态栏.我使用该代码执行此操作:
getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LOW_PROFILE);
Run Code Online (Sandbox Code Playgroud)
它工作正常但只有一次.当我触摸状态栏时,它会激活,之后我回到应用程序的活动状态,状态栏仍然激活(带有图标而不是点).我尝试登录onResume调用,但它没有调用,所以我再次搜索并发现另一个解决方案 - 使用handler更改状态栏的可见性:
getWindow().getDecorView().setOnSystemUiVisibilityChangeListener(new View.OnSystemUiVisibilityChangeListener() {
@Override
public void onSystemUiVisibilityChange(int visibility) {
getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LOW_PROFILE);
}
});
Run Code Online (Sandbox Code Playgroud)
它有时会起作用但经过多次尝试后会崩溃.
我需要这个用于游戏 - 理论上我可以尝试在每次触摸或每次在主循环中调用它但这似乎是坏主意(另外它必须从特定线程调用 - 只有创建视图层次结构的原始线程可以触及它的观点.)
我的问题是:实现状态栏自动调暗的最佳方法是什么?或者,在我的情况下,无论如何.
我有2个节点的RabbitMQ集群.我已将HA策略设置为跨所有节点同步所有队列.我们假设我有2个节点:A和B.A是主节点,B有从A同步的所有队列.
现在我想用节点B重启服务器(升级服务器,操作系统等).无论我做什么,总是在重新启动后,需要完全同步过程才能让这些队列在A和B之间同步.即使如果我在重启过程之前停止所有消费者和生产者.如果队列有很多消息会很痛.
问:有没有办法让"干净关机"在重启后省略队列同步过程?