Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/207.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 开始新活动时的ANR_Android_Android Activity_Android 5.0 Lollipop - Fatal编程技术网

Android 开始新活动时的ANR

Android 开始新活动时的ANR,android,android-activity,android-5.0-lollipop,Android,Android Activity,Android 5.0 Lollipop,嗨,我在屏幕上显示了3秒钟,然后我开始了新的活动,但在安卓5.0上,有一个黑屏几乎持续了10秒,而且是ANR。这是活动中显示3秒钟的所有代码: private static final ScheduledExecutorService worker = Executors.newSingleThreadScheduledExecutor(); @Override protected void onCreate(Bundle savedInstanceState) { s

嗨,我在屏幕上显示了3秒钟,然后我开始了新的活动,但在安卓5.0上,有一个黑屏几乎持续了10秒,而且是ANR。这是活动中显示3秒钟的所有代码:

private static final ScheduledExecutorService worker =
        Executors.newSingleThreadScheduledExecutor();

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    Crashlytics.start(this);
    setContentView(R.layout.splash_fragment);
    Runnable task = new Runnable() {
        public void run() {
            startActivity(new Intent(SplashActivity.this, MainActivity.class));
            finish();
        }
    };
    worker.schedule(task, 3, TimeUnit.SECONDS);
}
以及来自logcat的日志:

Activity destroy timeout for ActivityRecord
I/InputDispatcher(  725): Application is not responding: AppWindowToken
It has been 5005.0ms since event, 5003.6ms since wait started.  
Reason: Waiting because no window has focus but there is a focused application that may eventually add a window when it     finishes starting up.
I/WindowManager(  725): Input event dispatching timed out sending to application AppWindowToken
 Reason: Waiting because no window has focus but there is a focused application that may eventually add a window when     it finishes starting up.

我做错了什么?我怎样才能修复它?

为什么要花很长的时间,而你有一个简单的过程。正如@Chen在上面所评论的,您可以像这样启动
mainacivity

new Handler().postDelayed(new Runnable() {
    @Override
    public void run() {
        startActivity(new Intent(SplashActivity.this, MainActivity.class));
        finish();               
    }
}, 3000);

为什么要走漫长的过程,而你有一个简单的。正如@Chen在上面所评论的,您可以像这样启动
mainacivity

new Handler().postDelayed(new Runnable() {
    @Override
    public void run() {
        startActivity(new Intent(SplashActivity.this, MainActivity.class));
        finish();               
    }
}, 3000);

您是否尝试使用
Handler.postDelayed(Runnable r,long delaymilis)
?为什么显示启动屏幕?您是否尝试使用
Handler.postDelayed(Runnable r,long delaymilis)
?为什么显示启动屏幕?