Android应用程序在从不同线程启动下一个活动时崩溃

Android应用程序在从不同线程启动下一个活动时崩溃,android,multithreading,Android,Multithreading,我正在尝试处理一些数据库操作,然后想开始一个新的活动。同时,我希望显示进度条 我在下面编写的代码在android studio和某些设备上运行良好,但在某些设备上,当从线程启动新活动时,应用程序会崩溃。请帮帮我 提前谢谢 progress=new ProgressDialog(this); progress.setMessage("Prepairing relations..."); progress.setProgress(0); progress.setCan

我正在尝试处理一些数据库操作,然后想开始一个新的活动。同时,我希望显示进度条

我在下面编写的代码在android studio和某些设备上运行良好,但在某些设备上,当从线程启动新活动时,应用程序会崩溃。请帮帮我

提前谢谢

    progress=new ProgressDialog(this);
    progress.setMessage("Prepairing relations...");
    progress.setProgress(0);
    progress.setCancelable(false);
    progress.show();

    final Thread t1 = new Thread() {
        @Override
        public void run() {
            sql.updateRelations();   // db operations

            Intent intent = new Intent(context, MainActivity.class);
            progress.dismiss();
            startActivity(intent);
            finish();
        }
    };
    t1.start();

使用处理程序从主线程启动新活动

Handler handler = new Handler(Looper.getMainLooper());
请尝试以下代码:-

progress=new ProgressDialog(this);
progress.setMessage("Prepairing relations..."); 
progress.setProgress(0); 
progress.setCancelable(false); 
progress.show(); 

Handler handler = new Handler();
handler.postDelayed(new Runnable() {
    @Override
    public void run() {
        sql.updateRelations();   // db operations 
        Intent intent = new Intent(NameActivity.this, MainActivity.class);
        progress.dismiss(); 
        startActivity(intent);
        finish();
    }
}, 15000);

你的日志在哪里?