Wie kann ich eine Datei von URL herunterladen mit Retrofit 2.0 und DownloadManager in Android? Ich kann dies mit Retrofit 1.9 tun, aber bitte helfen Sie mir für Retrofit 2.0. Jede Hilfe wird sehr geschätzt. Lassen Sie mich auch wissen, wie man es auf dem Android-Gerät Bildschirm zeigt.Datei herunterladen mit Retrofit 2.0 und DownloaManager
Antwort
Sie haben drei Fragen gestellt. Lassen Sie mich versuchen, sie zu beantworten eins nach dem anderen:
1) Download-Datei mit Retrofit 2.0: Der einzige Unterschied zwischen den Anrufen in Retrofit 1,9 und 2,0:
Synchron in Retrofit 1,9:
public interface GetAPI {
@GET("/list")
Model getModel();
}
asynchrone in Retrofit 1,9
public interface GetAPI {
@GET("/list")
void getModel(Callback<Model> cb);
}
Jetzt in Retrofit 2.0 können Sie einfach erklären:
public interface GetAPI {
@GET("/list")
Call<Model> getModel();
}
synchroner Aufruf in Retrofit 2,0
Call<Model> call = service.getModel();
Model model = call.execute();
Asynchronen Aufruf in Retrofit 2,0
Call<Model> call = service.getModel();
call.enqueue(new Callback<Model>() {
@Override
public void onResponse(Response<Model> response) {
// Get result Model from response.body()
}
@Override
public void onFailure(Throwable t) {
}
});
können Sie sehen: http://www.androidtutorialpoint.com/networking/retrofit-android-tutorial/
2) herunterladen Downloadmanager mit: Sie leicht jeder sehen kann Tutorial im Web in Bezug auf dies. Hauptsächlich gibt es zwei Schritte:
diese// für Android Download-Manager erstellen Anfrage
downloadManager = (DownloadManager)getSystemService(DOWNLOAD_SERVICE);
DownloadManager.Request request = new DownloadManager.Request(uri);
// Enqueue herunterladen und speichern in referenceId
downloadReference = downloadManager.enqueue(request);
3) Zeigen Sie es auf dem Gerät angezeigt. So könnte Anzeige von Bild oder JSON-Array sein. Also hier erzähle ich dir von Image. Verwenden Sie den folgenden Code:
int width, height;
ImageView image = (ImageView) findViewById(R.id.imageViewId);
Bitmap bMap = BitmapFactory.decodeFile(getExternalFilesDir(null) + File.separator + "AndroidTutorialPoint.jpg");
width = 2*bMap.getWidth();
height = 6*bMap.getHeight();
Bitmap bMap2 = Bitmap.createScaledBitmap(bMap, width, height, false);
image.setImageBitmap(bMap2);
Ich hoffe, meine Erklärung hat Ihnen geholfen. Alles Gute.
danke für die Info. Lass mich das versuchen. –
Es funktioniert. Vielen Dank :) –
- 1. MockWebserver und Retrofit 2.0
- 2. Retrofit 2.0 mit Fehlerantwort
- 3. Erhalten Antwortstatuscode mit Retrofit 2.0 und RxJava
- 4. Retrofit 2.0 mit jackson Konverter
- 5. Wie Datei in Android mit Retrofit-Bibliothek herunterladen?
- 6. HTTP-Caching mit Retrofit 2.0.x
- 7. Video von Url mit Retrofit herunterladen
- 8. Retrofit 2.0 nicht-Beta, mit GsonConverterFactory
- 9. Verwenden von Mockito mit Retrofit 2.0
- 10. Retrofit 2.0-Methode ohne Antwort
- 11. GET Abfrage mit JSON - Retrofit 2.0
- 12. Wie Wert zurück mit Async Retrofit 2.0
- 13. jede Antwort von Retrofit 2.0
- 14. Retrofit 2.0 deserialising komplexe Datenstruktur
- 15. Retrofit 2.0 wie zu löschen?
- 16. Retrofit 2.0, fordert GET auf eine .json Datei als Endpunkt
- 17. Download und schreibe eine Datei mit Retrofit und RxJava
- 18. Wie benutze ich gson 2.0 on - onResponse von Retrofit 2.0
- 19. Retrofit 2.0 beta1: wie rohen String Körper
- 20. Wie Timeout in Retrofit-2.0 + Android
- 21. Retrofit (2.0 beta2) Multipart Dateiupload funktioniert nicht
- 22. Retrofit 2.0 + RxJava + Fehler JSON Körper
- 23. So behandeln Sie Fehler in Retrofit 2.0
- 24. Datei mit Selen herunterladen
- 25. Datei mit jQuery herunterladen
- 26. Datei mit PAMIE herunterladen
- 27. Datei mit Büroklammer herunterladen
- 28. Datei herunterladen mit Angular und Django
- 29. Datei herunterladen mit HtmlUnit
- 30. Datei herunterladen mit Javascript
Ich bin mir sicher, dass es möglich ist. Aber ohne ein Beispiel für Ihre Versuche ist es schwer, Ihnen zu sagen, wo Sie falsch liegen. – Mike
Hallo Mike, eigentlich konnte ich die Syntax der asynchronen Retrofit 2.0-Anfrage nicht bekommen. –