Alex K
- Forum-Beiträge: 22
22.07.2011, 09:47:53 via Website
22.07.2011 09:47:53 via Website
Hey,
ich lade mit meiner App Bilder von meiner Website herunter.
Das Runterladen der Bilder dauert relativ lange und wirft mir auch bei jedem Bild eine Warnung:
Vielleicht habt ihr ja einen Tipp für mich wie ich den Download beschleunigen kann und diese Warnung weg bekomme.
Mithilfe folgender Funktion lade ich Bilder von meiner Website.
Abgespeichert werden die Bilder hiermit:
Viele Grüße,
Alex
ich lade mit meiner App Bilder von meiner Website herunter.
Das Runterladen der Bilder dauert relativ lange und wirft mir auch bei jedem Bild eine Warnung:
1WARN/MediaProvider(206): original file hasn't been stored yet: [bild]
Vielleicht habt ihr ja einen Tipp für mich wie ich den Download beschleunigen kann und diese Warnung weg bekomme.
Mithilfe folgender Funktion lade ich Bilder von meiner Website.
1int length = connection.getContentLength();
2 InputStream is = (InputStream) url.getContent();
3
4 byte[] imageData = new byte[length];
5 int buffersize = (int) Math.ceil(length / (double) 100);
6 int downloaded = 0;
7 int read;
8
9 while (downloaded < length) {
10 if (length < buffersize) {
11 read = is.read(imageData, downloaded, length);
12 } else if ((length - downloaded) <= buffersize) {
13 read = is.read(imageData, downloaded, length
14 - downloaded);
15 } else {
16 read = is.read(imageData, downloaded, buffersize);
17 }
18
19 downloaded += read;
20 publishProgress(i, countPaths, (downloaded * 100) / length);
21 }
22
23 Bitmap bitmap = BitmapFactory.decodeByteArray(imageData, 0,
24 length);
2 InputStream is = (InputStream) url.getContent();
3
4 byte[] imageData = new byte[length];
5 int buffersize = (int) Math.ceil(length / (double) 100);
6 int downloaded = 0;
7 int read;
8
9 while (downloaded < length) {
10 if (length < buffersize) {
11 read = is.read(imageData, downloaded, length);
12 } else if ((length - downloaded) <= buffersize) {
13 read = is.read(imageData, downloaded, length
14 - downloaded);
15 } else {
16 read = is.read(imageData, downloaded, buffersize);
17 }
18
19 downloaded += read;
20 publishProgress(i, countPaths, (downloaded * 100) / length);
21 }
22
23 Bitmap bitmap = BitmapFactory.decodeByteArray(imageData, 0,
24 length);
Abgespeichert werden die Bilder hiermit:
1String filename = name;
2 ContentValues values = new ContentValues();
3 File sdImageMainDirectory = new File(Environment
4 .getExternalStorageDirectory(), getResources().getString(
5 R.string.directory));
6
7 sdImageMainDirectory.mkdirs();
8
9 File outputFile = new File(sdImageMainDirectory, filename);
10 values.put(MediaColumns.DATA, outputFile.toString());
11 values.put(MediaColumns.TITLE, filename);
12 values.put(MediaColumns.DATE_ADDED, System
13 .currentTimeMillis());
14 values.put(MediaColumns.MIME_TYPE, "image/png");
15
16 Uri uri = this.getContentResolver().insert(
17 MediaStore.Images.Media.EXTERNAL_CONTENT_URI, values);
18
19 try {
20 OutputStream outStream = this.getContentResolver()
21 .openOutputStream(uri);
22 bitmap.compress(Bitmap.CompressFormat.PNG, 95, outStream);
23
24 outStream.flush();
25 outStream.close();
26
27 } catch (FileNotFoundException e) {e.printStackTrace();}
28 catch (IOException e) {e.printStackTrace();}
29 }
2 ContentValues values = new ContentValues();
3 File sdImageMainDirectory = new File(Environment
4 .getExternalStorageDirectory(), getResources().getString(
5 R.string.directory));
6
7 sdImageMainDirectory.mkdirs();
8
9 File outputFile = new File(sdImageMainDirectory, filename);
10 values.put(MediaColumns.DATA, outputFile.toString());
11 values.put(MediaColumns.TITLE, filename);
12 values.put(MediaColumns.DATE_ADDED, System
13 .currentTimeMillis());
14 values.put(MediaColumns.MIME_TYPE, "image/png");
15
16 Uri uri = this.getContentResolver().insert(
17 MediaStore.Images.Media.EXTERNAL_CONTENT_URI, values);
18
19 try {
20 OutputStream outStream = this.getContentResolver()
21 .openOutputStream(uri);
22 bitmap.compress(Bitmap.CompressFormat.PNG, 95, outStream);
23
24 outStream.flush();
25 outStream.close();
26
27 } catch (FileNotFoundException e) {e.printStackTrace();}
28 catch (IOException e) {e.printStackTrace();}
29 }
Viele Grüße,
Alex
— geändert am 22.07.2011, 09:48:45
Empfohlener redaktioneller Inhalt
Mit Deiner Zustimmung wird hier ein externer Inhalt geladen.
Mit Klick auf den oben stehenden Button erklärst Du Dich damit einverstanden, dass Dir externe Inhalte angezeigt werden dürfen. Dabei können personenbezogene Daten an Drittanbieter übermittelt werden. Mehr Infos dazu findest Du in unserer Datenschutzerklärung.