2016-06-29 1 views
1

Je crée une application (clone de bas niveau d'Instagram) où un utilisateur peut voir les images que d'autres utilisateurs ont posté. Cependant, je ne peux pas sembler télécharger l'image de Parse dans Android. Je joins mon code. Je veux juste vous faire savoir que je ne reçois pas d'erreur, ni mon application tombe en panne. Mon application fonctionne correctement, mais elle ne montrera rien sur mon application. Quelqu'un peut-il me dire ce que je fais mal? Merci!Télécharger le fichier image à partir de Parse dans Android

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()); 
       } 
      } 
     }); 
    } 
} 

Répondre

1

Je l'ai résolu. Le problème était l'ACL. Il a été défini sur privé, et donc mon application obtenait un tableau objet avec la taille 0. Je l'ai mis sur public et cela fonctionne maintenant. J'espère que c'était la bonne façon de le faire. Idk si je devrais laisser ACL comme public.