W mojej aplikacji java Mam ten kodCo oznacza ten 4-liniowy kod java w aplikacji na Androida?
@Override
public void onAttachedToWindow()
{
this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD_DIALOG);
super.onAttachedToWindow();
}
gdy budować go dla Android 2.3 (poziom 10) to kompiluje i działa dobrze. Ale kiedy go zbudować za android 4.0 (poziom 15) kompiluje i daje mi katastrofę w czasie wykonywania i po błędzie
07-16 14:00:03.090: E/AndroidRuntime(29487): FATAL EXCEPTION: main
07-16 14:00:03.090: E/AndroidRuntime(29487): java.lang.IllegalArgumentException: Window type can not be changed after the window is added.
kiedy skomentować ten wiersz i budować to działa dobrze i nie ma problemu ..
//this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD_DIALOG);
więc nie rozumiem, dlaczego to się dzieje i co ten kod oznacza?
Edit: niektóre odniesienia są tu
when I run app on my phone.The version is android 4.0.3
Oznacza to po prostu, gdy przychodzi do nowej aktywności jak onDisplay Blackberry –
Wystarczy ustawić targetSDK do mniej niż 14. Wtedy zadziała http://stackoverflow.com/a/32587231/3496570 – Nepster