Моим первоначальным намерением было загрузить новую версию моего приложения для Android (myApp.apk) с моего веб-сайта и обновить работающее приложение на устройстве ...
Возникла проблема, потому что я понял, что загруженный файл отличается от файла на веб-сайте, я делаю двоичное сравнение, и есть много разных областей. Кто-то может дать подсказку?
Это код, который я использовал для загрузки файла:
URLConnection ucon = null;
try
{
URL url = new URL("http://www.mySite.com/folder/myApp.apk");
HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection();
urlConnection.setRequestMethod("GET");
urlConnection.setDoInput(true);
urlConnection.connect();
File SDCardRoot = Environment.getExternalStorageDirectory();
File file = new File(SDCardRoot,"FileDownloaded11.apk");
FileOutputStream fileOutput = new FileOutputStream(file);
InputStream inputStream = urlConnection.getInputStream();
int totalSize = urlConnection.getContentLength();
int downloadedSize = 0;
byte[] buffer = new byte[8192];
int bufferLength = 0; //used to store a temporary size of the buffer
while ( (bufferLength = inputStream.read(buffer)) > 0 )
{
fileOutput.write(buffer, 0, bufferLength);
downloadedSize += bufferLength;
}
fileOutput.close();
}
catch (MalformedURLException e)
{
e.printStackTrace();
}
catch (IOException e)
{
e.printStackTrace();
}