Android 如何对应用程序类隐藏键盘?

Android 如何对应用程序类隐藏键盘?,android,android-activity,android-softkeyboard,Android,Android Activity,Android Softkeyboard,我正在使用此代码隐藏我从这里获得的软键盘: 在我的应用程序类中,每次我的应用程序崩溃时,此函数都会运行,以便隐藏崩溃应用程序上的键盘: final Thread.UncaughtExceptionHandler defaultHandler = Thread.getDefaultUncaughtExceptionHandler(); Thread.setDefaultUncaughtExceptionHandler(new Thread.UncaughtExceptionHand

我正在使用此代码隐藏我从这里获得的软键盘:

在我的应用程序类中,每次我的应用程序崩溃时,此函数都会运行,以便隐藏崩溃应用程序上的键盘:

    final Thread.UncaughtExceptionHandler defaultHandler = Thread.getDefaultUncaughtExceptionHandler();
    Thread.setDefaultUncaughtExceptionHandler(new Thread.UncaughtExceptionHandler() {
        @Override
        public void uncaughtException(Thread thread, Throwable throwable) {
            HideKeyboardUtils.hideKeyboard( // how do I get an instance of an activity here?);
        }
    });
我不知道如何在我的应用程序类中获得活动的实例,通过阅读此线程,似乎不可能-

我知道我需要活动,这样我就可以从活动中获取视图,以便获取WindowToken。是否有一种方法可以在应用程序类中获取视图,以便键盘隐藏在应用程序崩溃时

请参见下面的崩溃示例:


嗯,你为什么担心这里的键盘?如果你撞车了,我想你还有别的事要担心。此外,您的应用程序可能没有有效的活动实例,这取决于您崩溃的位置和当时任务的状态。问题是应用程序将崩溃,键盘将被留下,因为这是android系统内置的软键盘。大多数时候,我会回到android主屏幕,在应用程序崩溃后,键盘仍然可见。或者我会看到一个对话框,上面写着“对不起,你的应用程序已经停止工作了”,而“OK”被键盘遮住了。当然,我会担心实际的代码,但这更多的是一个用户体验方面的问题。我不记得看到过这个,但我不记得上一次看到键盘暴露在外的碰撞是什么时候了。然而,我的观点仍然成立:如果你在主屏幕上,并且键盘是可见的,那么你就没有活动可以使用。好的。我附上了应用程序将如何崩溃的截图。无论如何,谢谢,我想用户将不得不接受它。或者,或者找到某种方法隐藏不需要
活动的IME
。我怀疑是否有这样的选择。
    final Thread.UncaughtExceptionHandler defaultHandler = Thread.getDefaultUncaughtExceptionHandler();
    Thread.setDefaultUncaughtExceptionHandler(new Thread.UncaughtExceptionHandler() {
        @Override
        public void uncaughtException(Thread thread, Throwable throwable) {
            HideKeyboardUtils.hideKeyboard( // how do I get an instance of an activity here?);
        }
    });