2016-06-29 3 views
1

Я создаю приложение (базовый, низкоуровневый клон Instagram), где пользователь может видеть изображения, опубликованные другими пользователями. Однако я не могу загрузить изображение из Parse на Android. Прилагаю мой код. Я просто хочу сообщить, что я НЕ получаю сообщение об ошибке, NOR мое приложение падает. Мое приложение отлично работает, но оно просто ничего не покажет в моем приложении. Может ли кто-нибудь сказать мне, что я делаю неправильно? Благодаря!Загрузить файл изображения из Parse в 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()); 
       } 
      } 
     }); 
    } 
} 

ответ

1

Я решил. Проблема была в ACL. Он был установлен на закрытом, поэтому мое приложение получало массив Object с размером 0. Я установил его на публике, и он работает сейчас.

Надеюсь, это был правильный способ сделать это. Idk, если я должен оставить ACL общедоступным.

Смежные вопросы