2017-07-31 1 views
0

Je crée une application qui télécharge un fichier apk à partir d'un serveur web puis il l'installe, mais j'ai un problème, quand je clique sur télécharger, la progression barre compare mais il ne change pas, et dans le moniteur Android compare ceci: Error displayedLe téléchargement d'une apk, avec pas tel fichier ou erreur de répertoire ..

J'utilise un avd avec android 7.1.1, et je vais essayer avec marshmallow. Voici le code:

try { 
    if (Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)) { 
    String sdPath = Environment.getExternalStorageDirectory() + "/"; 

        mSavePath = sdPath + "updateDownload"; 
        File dir = new File(mSavePath); 

        if (!dir.exists()) 
         if (dir.mkdir()) 
          Log.d(TAG, "mkdir success"); 
         else 
          Log.d(TAG, "mkdir failed!"); 

        HttpURLConnection conn = (HttpURLConnection) new URL(path).openConnection(); 
        conn.connect(); 

        InputStream is = conn.getInputStream(); 

        int length = conn.getContentLength(); 

        File apkFile = new File(mSavePath, version_name); 

        FileOutputStream fos = new FileOutputStream(apkFile); 

        int count = 0; 
        byte[] buffer = new byte[1024]; 
        while (!isCancel) { 
         int numread = is.read(buffer); 
         count += numread; 
         mProgress = (int) ((float) (count/length) * 100); 

         mUpdateProgressHandler.sendEmptyMessage(DOWNLOADING); 
         if (numread < 0) { 
          mUpdateProgressHandler.sendEmptyMessage(DOWNDLOAD_FINISHED); 
          break; 
         } 
         fos.write(buffer, 0, numread); 

        } 
        fos.close(); 
        is.close(); 

       } else { 
        Log.d(TAG, " Media not mounted"); 
       } 


      } catch (Exception e) { 
       e.printStackTrace(); 
      } 
+0

Pouvez-vous vérifier si elles existent répertoire "updateDownload"? – ApriOri

+0

non, il n'existe pas .. –

+0

Là vous allez .. vous devez le créer si elle n'existe pas :) – ApriOri

Répondre