Блокировка экрана отображается между действиями
Я работаю над приложением для киосков, которое может запускать другие приложения для Android. Он работает поверх экрана блокировки. Проблема, которую я вижу, заключается в том, что экран блокировки кратко отображается между действиями. Мы должны держать планшет заблокированным, чтобы разблокировка не была возможной.
Я смог воспроизвести это в супер простом случае. Оба вида деятельности практически идентичны. Приложение является администратором устройства и может отображаться над клавиатурой. Я также пытался не использоватьfinish()
вообще, но это не решило проблему.
public class MainActivity extends Activity {
private Handler h = new Handler();
@Override
protected void onCreate(Bundle savedInstanceState) {
getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
getWindow().addFlags(WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN);
getWindow().addFlags(WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD);
getWindow().addFlags(WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED);
getWindow().addFlags(WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON);
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button bneg1 = (Button) findViewById(R.id.bneg1);
bneg1.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
h.post(new Runnable() {
@Override
public void run() {
Intent i = new Intent(MainActivity.this, SecondActivity.class);
startActivity(i);
finish();
}
});
}
});
}
}
Как я могу запустить другое действие без краткого предварительного отображения экрана блокировки?