android 重新启动应用程序,在AsyncTask完成后重新启动完整的Android应用程序
我編碼的應用程序檢查/ sdcard下的目錄中是否有特殊的ZIP文件,如果沒有,則開始下載并解壓縮.即使是子目錄,下載和解壓縮也可以工作.但是我需要在完成后重新啟動應用程序 – 這不起作用.
起初我有一個特殊的活動“PreMainActivity.java”只是為了重新啟動目的:
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
public class PreMainActivity extends Activity
{
/**
*
*/
public static Boolean ENABLE_RESTART = false;
@Override
public void onCreate(final Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
PreMainActivity.ENABLE_RESTART = true;
restartMain();
}
@Override
public void onRestart()
{
super.onRestart();
restartMain();
}
/**
*
*/
public void restartMain()
{
if (PreMainActivity.ENABLE_RESTART == true)
{
final Intent mainIntent = new Intent(this,MainActivity.class);
mainIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(mainIntent);
finish();
}
else
{
finish();
}
PreMainActivity.ENABLE_RESTART = false;
}
}
然后我在DownloadFile.java中得到了一些代碼
@Override
protected void onPostExecute(final String result)
{
MainActivity.mProgressDialogDownload.dismiss();
PreMainActivity.ENABLE_RESTART = true;
final Intent i = new Intent(MainActivity.this,PreMainActivity.class);
i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP);
startActivity(i);
}
據我所研究,我需要將MainActivity的上下文傳遞給DownloadFile.java – 但我仍然不知道如何.任何人都可以告訴我如何將上下文傳遞到同一個包中的單獨文件中的AsyncTask嗎?或任何其他提示如何在AsyncTask完成后重新啟動整個應用程序?
總結
以上是生活随笔為你收集整理的android 重新启动应用程序,在AsyncTask完成后重新启动完整的Android应用程序的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: uniapp+typeScript+vu
- 下一篇: 隐藏ASP.NET MVC版本