2016-06-29 29 views
1

我正在創建一個應用程序(Instagram的基本,低級克隆),用戶可以看到其他用戶發佈的圖像。但是,我似乎無法將Parse中的圖像下載到Android中。 我附上我的代碼。我只是想讓你知道我不會收到錯誤,或者我的應用程序崩潰。我的應用工作正常,但它不會在我的應用上顯示任何內容。誰能告訴我我做錯了什麼?謝謝!從解析下載圖像文件到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。它被設置爲private,因此我的應用程序獲得了一個大小爲0的Object數組。我將它設置爲public,並且它現在可用。

我希望這是正確的做法。 Idk是否應該將ACL保留爲公開狀態。