从 Parse 下载图像文件到 Android

Posted

技术标签:

【中文标题】从 Parse 下载图像文件到 Android【英文标题】:Download image file from Parse into Android 【发布时间】:2016-06-29 03:21:49 【问题描述】:

我正在创建一个应用程序(Instagram 的基本低级克隆),用户可以在其中查看其他用户发布的图像。但是,我似乎无法将图像从 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());
                
            
        );
    

【问题讨论】:

我遇到了同样的问题***.com/q/51874166/6067866 请帮我获取解析文件为空 【参考方案1】:

我解决了。问题是 ACL。它被设置为私有,因此我的应用程序得到一个大小为 0 的对象数组。我将它设置为公共,它现在可以工作了。

我希望这是正确的做法。如果我应该将 ACL 保持为公开状态,我想知道。

【讨论】:

以上是关于从 Parse 下载图像文件到 Android的主要内容,如果未能解决你的问题,请参考以下文章

直接从Android活动下载图像

无法使用 Parse Server 和 Android 上传图像

从 Parse.com 下载图像并将其用于 iCarousel

从 Parse.com 将徽标图像加载到 UIImage

Parse 从 url 获取图像文件数据并保存为 Parse File

如何裁剪从android资源文件夹(@mipmap)获取的图像?