porque esse código funciona no android 2.0 e não funciona no android 4.0
public void updateApk(Context c) {
        
    	final String PATH = c.getFilesDir().getAbsolutePath() + File.separator
                + "soft.apk";
        try {
        	
            URL url = new URL(
                    "http://www.meusite.com.br/atualizacao/downloadandroid/soft.apk");
            HttpURLConnection con = (HttpURLConnection) url.openConnection();
            con.setConnectTimeout(500);
            con.setRequestMethod("GET");
            con.setDoOutput(true);
            con.connect();
            FileOutputStream fos = c.openFileOutput("soft.apk",
                    Context.MODE_WORLD_READABLE);
           
            InputStream is = con.getInputStream();
            
            int len = 0;
            byte[] buffer = new byte[20480];
            while ((len = is.read(buffer)) != -1) {
                fos.write(buffer, 0, len);
            }
 
            is.close();
            fos.close();
             con.disconnect();
            try {
                String command = "chmod 777 " + PATH;
                Runtime.getRuntime().exec(command);
            } catch (Exception e) {
 
            }
        } catch (Exception e) {
 
        }
        Intent installIntent = new Intent(Intent.ACTION_VIEW ); 
        installIntent.setDataAndType( Uri.parse("file://" + c.getFilesDir().getAbsolutePath() + "/" + "soft.apk"), "application/vnd.android.package-archive"); 
        startActivity(installIntent); 
   /*     Intent installIntent = new Intent(Intent.ACTION_VIEW);
        installIntent.setDataAndType(Uri.fromFile(new File(Environment.getExternalStorageDirectory() + "/download/" + "soft.apk")), "application/vnd.android.package-archive");
        startActivity(installIntent);*/
    }