Deprecated: Non-static method wp_meta_robots_plugin::meta_robots_addcolumn() should not be called statically in /home/sekai1blog/tecc0.com/public_html/android/wp-includes/class-wp-hook.php on line 286
対処法: android.view.WindowManager$BadTokenException: Unable to add window -- token null is not for an application | Android開発・エラー置き場
Deprecated: Non-static method wp_meta_robots_plugin::add_meta_robots_tag() should not be called statically in /home/sekai1blog/tecc0.com/public_html/android/wp-includes/class-wp-hook.php on line 286

Android開発のメモやエラーなんかおいてく

Android開発・エラー置き場

context

対処法: android.view.WindowManager$BadTokenException: Unable to add window -- token null is not for an application

投稿日:

Pocket

多分なんらかのダイアログを出すときに出てる人が多いだろうか、このエラー。

android.view.WindowManager$BadTokenException: Unable to add window -- token null is not for an application

 

問題点は Context ですね。

 

context よりもActivityそのもの渡せやってことですね。

 

解決法

たとえばダイアログを生成するときに

AlertDialog.Builder builder = new AlertDialog.Builder(getApplicationContext());

 

みたいにやってたら

AlertDialog.Builder builder = new AlertDialog.Builder(hogeActivity.this);

みたいにして動く人が大半だと思う。

 

もし

AlertDialog.Builder builder = new AlertDialog.Builder(this);

だと、動くときもけっこうあるけど、thisがActivityを指しているとは限らないので、なるべくhogeActivity.this にしようね←hogeActivityはclass名ね。

 

他にも解決法はあるけど、これでほとんどカバーできると思うので、今回はこれくらいに。

Pocket

-context

Copyright© Android開発・エラー置き場 , 2019 All Rights Reserved Powered by STINGER.