2016-06-29 18 views
1

Ich erstelle eine App (grundlegende, Low-Level-Klon von Instagram), wo ein Benutzer Bilder sehen kann, die andere Benutzer gepostet haben. Ich kann jedoch scheinen, das Bild von Parse in Android herunterzuladen. Ich füge meinen Code an. Ich möchte Sie nur wissen lassen, dass ich KEINE Fehlermeldung bekomme, und meine App stürzt ab. Meine App funktioniert einwandfrei, aber in meiner App wird nichts angezeigt. Kann mir jemand sagen, was ich falsch mache? Vielen Dank!Bild-Datei von Parse in Android herunterladen

public class User extends AppCompatActivity { 
    static String title; 
    RelativeLayout relativeLayout; 

    @Override 
     protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_user); 
     setTitle(title); 
     relativeLayout = (RelativeLayout) findViewById(R.id.relativeLayout); 

     ParseQuery<ParseObject> query = ParseQuery.getQuery("Images"); 
     query.whereEqualTo("username", title); 
     query.findInBackground(new FindCallback<ParseObject>() { 
      @Override 
      public void done(List<ParseObject> objects, ParseException e) { 
       if(e==null){ 
        for(ParseObject object : objects){ 
         Log.i("info", "image found!"); 
         ParseFile file = (ParseFile) object.get("image"); 
         file.getDataInBackground(new GetDataCallback() { 
          @Override 
          public void done(byte[] data, ParseException e) { 
           if(e==null){ 
            Bitmap bitmapImage = BitmapFactory.decodeByteArray(data, 0, data.length); 
            ImageView image = new ImageView(getApplicationContext()); 
            image.setImageBitmap(bitmapImage); 
            relativeLayout.addView(image); 
           } 
           else{ 
            Log.i("info", e.getMessage()); 
           } 
          } 
         }); 
        } 
       } 
       else{ 
        Log.i("info", e.getMessage()); 
       } 
      } 
     }); 
    } 
} 

Antwort

1

Ich löste es. Das Problem war die ACL. Es wurde auf privat gesetzt, und deshalb erhielt meine Anwendung ein Objekt-Array mit der Größe 0. Ich setzte es auf öffentlich und es funktioniert jetzt.

Ich hoffe, dass dies der richtige Weg war. Idk, wenn ich ACL als öffentlich verlassen sollte.