- Forum-Beiträge: 346
03.02.2015, 18:03:04 via Website
03.02.2015 18:03:04 via Website
Hallo allerseits,
ich habe jetzt schon eine ganze Zeit gegrübelt: Ich möchte gerne ein Bild von einer URL herunterladen, speichern und anschließend als Hintergrund für ein Layout verwenden.
Nur will es einfach nicht funktionieren. Den untenstehenden Code habe ich durch einige Tutorials/Snippets. Ich habe schon gefühlt das halbe Internet nach einer funktionierenden Lösung durchsucht
Der Download an sich funktioniert- ich habe das Bild im Datei-Explorer gefunden.
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
downloadFile("http://www.beispiel.de/beispiel.jpg");
}
public void downloadFile(String uRl) {
File direct = new File(Environment.getExternalStorageDirectory()
+ "/AnhsirkDasarp");
if (!direct.exists()) {
direct.mkdirs();
}
DownloadManager mgr = (DownloadManager) this.getSystemService(Context.DOWNLOAD_SERVICE);
Uri downloadUri = Uri.parse(uRl);
DownloadManager.Request request = new DownloadManager.Request(
downloadUri);
request.setAllowedNetworkTypes(
DownloadManager.Request.NETWORK_WIFI
| DownloadManager.Request.NETWORK_MOBILE)
.setAllowedOverRoaming(true).setTitle("Demo")
.setDescription("Something useful. No, really.")
.setDestinationInExternalPublicDir("/AnhsirkDasarpFiles", "fileName.jpg");
mgr.enqueue(request);
Log.d("Download", "Download complete");
RelativeLayout rLayout=(RelativeLayout)findViewById(R.id.relativeLayout);
Drawable d = new BitmapDrawable(getResources(),Environment.getExternalStorageDirectory()
+ "/AnhsirkDasarp/fileName.jpg");
rLayout.setBackgroundDrawable(d);
Wäre nett, wenn mit jemand sagen könnte, was hier dran falsch ist
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.