android - 从 Parse 下载图像文件到 Android

标签 android parse-platform imagedownload parse-android-sdk

我正在创建一个应用程序(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());
                }
            }
        });
    }
}

最佳答案

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

我希望这是正确的做法。不知道我是否应该将 ACL 保留为公开。

关于android - 从 Parse 下载图像文件到 Android,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38089821/

相关文章:

Android Things 3 无法从 Raspberry PI 3 上的 rxtx 读取

android - 地理标记照片的位置信息有多准确?

git - 为什么我的 heroku 应用程序在克隆时是空的(它应该是解析服务器)

swift - 在 swift 2.0 中将 NSArray 转换为 NSMutableArray

ios - 如何异步下载图片并保持顺序?

reactjs - 如何从前端下载图像?

android - 如何初始化谷歌地图,以便放置的标记在 android 中可见

android - 使用 navGraphViewModels() [with Hilt] 初始化接口(interface) ViewModel 时出现 ClassCastException

java - 解析(Android 的 Java)登录返回未找到对象

android - 文件名结果不从android中的远程服务器下载图像