Note that there are some explanatory texts on larger screens.

plurals
  1. POAsyncTask closes when clicked
    primarykey
    data
    text
    <p>This should be fairly simple. When I use AsyncTask to download a file, if you click on the screen the ui download progress goes away and it doesn't download correctly. How do I keep the ui progress and download on the screen even when the screen is pressed? Shoule be simple enough.</p> <pre><code>package com.cydeon.plasmamodz; import com.stericson.RootTools.*; import com.stericson.RootTools.exceptions.RootDeniedException; import com.stericson.RootTools.execution.CommandCapture; import java.io.BufferedInputStream; import java.io.BufferedReader; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.Reader; import java.net.URL; import java.net.URLConnection; import java.util.List; import java.util.concurrent.TimeoutException; import com.cydeon.plasmamodz.R; import android.app.ActionBar; import android.app.Activity; import android.app.DownloadManager; import android.app.ProgressDialog; import android.content.Context; import android.content.Intent; import android.content.pm.PackageManager; import android.content.pm.ResolveInfo; import android.net.Uri; import android.os.AsyncTask; import android.os.Build; import android.os.Bundle; import android.os.Environment; import android.util.Log; import android.view.View; import android.widget.Button; import android.widget.ImageView; import android.widget.TextView; import android.widget.Toast; //Class for Boot Animation Blue Kindle public class Boots extends Activity { public static String TAG = "Boots"; Process process; private class DownloadFile extends AsyncTask&lt;String, Integer, String&gt;{ @Override protected String doInBackground(String... sURL) { try{ URL url = new URL(sURL[0]); URLConnection connection = url.openConnection(); connection.connect(); //Shows 0-100% progress bar int fileLength = connection.getContentLength(); //Download the file InputStream input = new BufferedInputStream(url.openStream()); OutputStream output = new FileOutputStream("/sdcard/plasma/boot/b..ootanimation.zip"); byte data[] = new byte[1024]; long total = 0; int count; while ((count = input.read(data)) != -1) { total += count; //Publish the Progress publishProgress((int) (total * 100/fileLength)); output.write(data, 0, count); } output.flush(); output.close(); input.close(); } catch (Exception e) { } return null; } @Override protected void onPreExecute() { super.onPreExecute(); mProgressDialog.show(); } @Override protected void onProgressUpdate(Integer... progress){ super.onProgressUpdate(progress); mProgressDialog.setProgress(progress[0]); } @Override protected void onPostExecute(String result) { // TODO Auto-generated method stub super.onPostExecute(result); mProgressDialog.dismiss(); Context context = getApplicationContext(); CharSequence text = "Installing. Please Wait"; int duration = Toast.LENGTH_SHORT; Toast toast = Toast.makeText(context, text, duration); toast.show(); if (RootTools.isBusyboxAvailable()){ RootTools.remount("/system", "rw"); CommandCapture command = new CommandCapture(0, "su", "sh /sdcard/plasma/scripts/boots.sh"); try { RootTools.getShell(true).add(command).waitForFinish(); } catch (InterruptedException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } catch (TimeoutException e) { e.printStackTrace(); } catch (RootDeniedException e) { e.printStackTrace(); } } else { RootTools.offerBusyBox(Boots.this); } } } ProgressDialog mProgressDialog; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.boots); ActionBar actionBar = getActionBar(); actionBar.hide(); ImageView img = (ImageView) findViewById(R.id.iv2); img.setImageResource(R.drawable.boot1); Button install = (Button) findViewById(R.id.bAInstall); Button rtrn = (Button) findViewById(R.id.bAReturn); mProgressDialog = new ProgressDialog(Boots.this); mProgressDialog.setMessage("Downloading..." ); mProgressDialog.setIndeterminate(false); mProgressDialog.setMax(100); mProgressDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL); install.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View arg0) { DownloadFile downloadFile = new DownloadFile(); downloadFile.execute("http:\\correspondingurl"); } } ); rtrn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View arg0) { finish(); } }); } } </code></pre>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload