1. Hast Du Lust, bei uns mitzuarbeiten und das AH-Team zu verstärken? Alle Details zu dieser aktuellen Herausforderung findest Du hier.
  1. Unicate, 23.09.2010 #1
    Unicate

    Unicate Threadstarter Android-Experte

    Hi alle zusammen!

    Ich habe einen REST-Server auf dem Android laufen und empfange Bilder, welche auch korrekt auf dem Telefon ankommen. Diese Bilder speichere ich in eine Datei auf der SDCard.

    Was ich möchte:

    Das Bild soll in die Datenbank eingetragen werden und sofort in meiner App verfügbar sein (Ich brauche Id, etc).

    Was ich dafür im Moment tue:
    Siehe hier:
    Code:
        public long addImage(String targetFolder, String mime, InputStream in, String title, String description) {
            long id = -1;
            File file = createFile(targetFolder, mime);
            if(null != file) {
                try {
                    FileOutputStream out = new FileOutputStream(file);
                    byte[] b = new byte[1024];
                    int s = 0;
                    long size = 0;
                    while((s = in.read(b, 0, 1024)) > 0) {
                        out.write(b,0,s);
                        size+=s;
                        if(in.available() == 0) {
                            break;
                        }
                    }
                    out.flush();
                    out.close();
                    MediaScanner scanner = new MediaScanner(_context);
                    scanner.scanFile(file.getCanonicalPath(), mime);
                    String url = MediaStore.Images.Media.insertImage(_contentResolver, BitmapFactory.decodeFile(file.getCanonicalPath()), title, description);
                    Uri uri = Uri.parse(url);
    
                    id = Long.valueOf(uri.toString().substring(uri.toString().lastIndexOf(File.separator)+1));
                    return id;
                } catch (Exception e) {
                    Log.w(TAG, e);
                }
            }
            return id;
        }
    
    Das funktioniert auch soweit außer:

    Was das Programm tut:
    Es legt immer 2 Bilder an. Eins an dem Ort wo es sein soll und das andere unter den Kamerabildern.


    Was mache ich falsch?
     
  2. BenOtto, 23.09.2010 #2
    BenOtto

    BenOtto Android-Hilfe.de Mitglied

    Also erstmal fällt mir auf, dass du den Konstruktor mit Pfad und Mime-Type benutzt. Dabei ist mime wahrscheinlich dein Bildname, vielleicht solltest du die Variablen umbenennen.

    Des Weiteren würde ich vermuten, dass die Zeile

    String url = MediaStore.Images.Media.insertImage(_contentResolver, BitmapFactory.decodeFile(file.getCanonicalPath()), title, description);

    dafür sorgt, dass dein zweites Bild erzeugt wird.
     
Die Seite wird geladen...
Ähnliche Themen Forum Datum
[ERLEDIGT] Komplexe View erstellen Android App Entwicklung 13.09.2017
[ERLEDIGT] LL zur Laufzeit erstellen, Abstand zwischen LL und LL möglich ? Android App Entwicklung 06.09.2017
[ERLEDIGT] Wie erstelle ich einen Ripple Effekt ohne hintergrund Farbe? Android App Entwicklung 18.07.2017
[GESCHLOSSEN] Wie kann ich Kostenlos Apps erstellen? Android App Entwicklung 28.06.2017
[ERLEDIGT] APK erstellen Android App Entwicklung 11.06.2017
[OFFEN] Android Icon Pack dynamisch erstellen Android App Entwicklung 05.06.2017
[Meinung] Spezielle App für Mittelstand erstellen (lassen) Android App Entwicklung 23.05.2017
[RÜCKMELDUNG FEHLT] Text und Bilder in View einbinden Android App Entwicklung 26.03.2017
[ERLEDIGT] App erstellen - Sprites? Android App Entwicklung 23.03.2017
Wie erstelle ich eine Fortbildungs-App für die Schule ? Android App Entwicklung 20.02.2017
Du betrachtest das Thema "Image erstellen + Thumbnail" im Forum "Android App Entwicklung",