title: Updating progressbar from IntentService?
body: <p>I'm trying to update the progressbar which is integrated in my notification bar but I can't seem to get it working. I kind of have the idea why it is not working but I have no idea of how to solve it. this is the code:</p>
  
  <pre><code>public class DownloadService extends IntentService{
  
       public DownloadService() {
          super("DownloadService");
  
  
      }
  
         @Override
         public void onCreate() {
             super.onCreate();
             ctx = getApplicationContext();
             root = new File(Environment.getExternalStorageDirectory()+"/folder-videos/");
             if(root.exists() &amp;&amp; root.isDirectory()) {
  
             }else{
                 root.mkdir();
             }          
             notificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
             PendingIntent contentIntent = PendingIntent.getActivity(this, 0, null, 0);
  
             notification = new Notification(R.drawable.icon, "App", System.currentTimeMillis());
             contentView = new RemoteViews(getPackageName(), R.layout.progress_layout);
             notification.flags = Notification.FLAG_AUTO_CANCEL;
             notification.contentView = contentView;
             notification.contentIntent = contentIntent;
             contentView.setProgressBar(R.id.status_progress, 100, 0, false);        
             contentView.setTextViewText(R.id.status_text,"Downloading...");  
  
         }
  
          @Override
      protected void onHandleIntent(Intent intent) {
          Intent broadcastIntent = new Intent();
  
          int count;
          String full_url = URL + intent.getStringExtra(VIDEOS);
  
          try {
              URL url = new URL(full_url);
              URLConnection conexion = url.openConnection();
              conexion.connect();
              File file = new File(root.getPath(), intent.getStringExtra(VIDEOS));
  
              int lenghtOfFile = conexion.getContentLength();
              Log.d("ANDRO_ASYNC", "Lenght of file: " + lenghtOfFile);
  
              InputStream input = new BufferedInputStream(url.openStream());
              OutputStream output = new FileOutputStream(file);
  
              byte data[] = new byte[1024];
  
              long total = 0;
              contentView.setTextViewText(R.id.status_text,"Downloading " + intent.getStringExtra(VIDEOS));  
              while ((count = input.read(data)) &gt; 0) {
                 total += count;      
                 notification.contentView.setProgressBar(R.id.status_progress, 100,(int)((total*100)/lenghtOfFile), false);       
                 Log.e("totaltotal","" + (int)((total*100)/lenghtOfFile));
                 output.write(data, 0, count);
  
  
              } 
              notificationManager.notify(1,notification);
              output.flush();
              output.close();
              input.close();
          } catch (Exception e) {
              Log.e("PRINTSTACK","STACK:" + e.getMessage());
              e.printStackTrace();
          }
  
      }
  }
  </code></pre>
  
  <p>I know I have to call : notificationManager.notify(1,notification); within the while loop and I've tried but it freezes the app and crashes it. Is there any other way to notify the notification manager of the progressbar updates.</p>
  
  <p>Thanks!!</p>