Sunucudan birden fazla resim indirmek ve SD kartta depolamak istediğim bir android uygulaması geliştiriyorum. Bu görevi gerçekleştirmenin en iyi yolu hangisi. Bu görevi uygulamanın arka planında gerçekleştirmek istiyorum.Sunucudan görüntü indirin ve SD kartta saklayın
-2
A
cevap
2
Görüntüleri harici depolama birimine indirmek ve kaydetmek için bir uyumsuz görev kullanın.
class DownloadFileFromURL extends AsyncTask<String, String, String> {
/**
* Before starting background thread
* */
@Override
protected void onPreExecute() {
super.onPreExecute();
System.out.println("Starting download");
}
/**
* Downloading file in background thread
* */
@Override
protected String doInBackground(String... f_url) {
int count;
try {
String root = Environment.getExternalStorageDirectory().toString();
System.out.println("Downloading");
URL url = new URL(f_url[0]);
URLConnection conection = url.openConnection();
conection.connect();
// getting file length
int lenghtOfFile = conection.getContentLength();
// input stream to read file - with 8k buffer
InputStream input = new BufferedInputStream(url.openStream(), 8192);
// Output stream to write file
OutputStream output = new FileOutputStream(root+"/downloadedfile.jpg");
byte data[] = new byte[1024];
long total = 0;
while ((count = input.read(data)) != -1) {
total += count;
// writing data to file
output.write(data, 0, count);
}
// flushing output
output.flush();
// closing streams
output.close();
input.close();
} catch (Exception e) {
Log.e("Error: ", e.getMessage());
}
return null;
}
/**
* After completing background task
* **/
@Override
protected void onPostExecute(String file_url) {
System.out.println("Downloaded");
}
}
Sadece o
+0
Sanırım sadece bir görüntü için çalışacaktı. Bu durumda sunucuda birden çok görüntü var. ve tüm görüntüleri indirmem gerekiyor. –
+0
Her görüntü için onu çalıştırmanız gerekir. –
İlgili konular
- 1. Elektron uygulaması içindeki dosyaları indirin ve saklayın
- 2. Veritabanımı bir SD kartta nasıl saklayabilir ve ORMLite kullanabilir miyim?
- 3. Uygulamamın ana düzeninde sd kartta kayıtlı bir görüntü ayarlamak istiyorum uygulama
- 4. SD kartta yeni bir dizini program aracılığıyla nasıl oluşturabilirim?
- 5. Kullanıcının SD kartta bir klasör seçmesine izin ver
- 6. AngularJS - CSV'yi indirin ve indirin
- 7. BrightCove videosunun URL'sini indirin ve Stream'i indirin
- 8. Android - SD karttaki dosyaları sil üstünde kaldırın
- 9. sqlite dosyasını indirin ve android uygulamasında kullanıyorum
- 10. oradan okumak sonra pdf dosyasını indirin ve sdcard kaydetmek ve
- 11. .SD
- 12. APK'nın SD kartta saklanıp saklanmadığını tespit etmenin bir yolu var mı?
- 13. Görüntülerin küçük resimlerini oluşturun ve önbelleğinde saklayın
- 14. Web.config değerlerini saklayın ve alın.
- 15. SD karttan çekilebilir yükleniyor
- 16. Sunucudan resim indir ve BitmapFactory kullanmadan sdcard'a kaydet
- 17. sd kartında ya da
- 18. görüntü yüksekliği ve Titanyum
- 19. Axios kullanarak bir görüntüyü indirin ve base64'e dönüştürün
- 20. Iphone'da UIImageView üzerinde uzak sunucudan görüntü nasıl yüklenir?
- 21. Install4J ile ek uygulamayı indirin ve kurun
- 22. Dosyalar - Karşıdan Yükle, İndirin ve Sil PHP
- 23. Sd üzerinde stdin/stdout'un değiştirilmesi ve açılması
- 24. Arduino SD kart ve Excel dosyası
- 25. Bootstrap popover'ını viewport içinde saklayın
- 26. SD Kart Uygulanınca SD Kart Uygulaması için Hizmeti Yeniden Başlatın
- 27. Sunucudan Resim Dosyaları Sil
- 28. Bir Travis deposunu saklayın
- 29. Görüntüyü Sc yoluyla özel Div ile indirin
- 30. Resim URL/sunucudan alınma
bu çok eski bir soru olur Umut
Ayrıca dosyayı
Manifest izinleri altına eklemeniz gerekecektir kullanarak yukarıdaki sınıf çağrı sormadan önce arama yapmalısınız Neyse cevabı burada bulabilirsiniz: http://stackoverflow.com/questions/3296850/how-do-i-transfer-an-image-from-its-url-to-the-sd-card – humazed