【问题标题】:how to get file from parse.com in android?如何在 android 中从 parse.com 获取文件?
【发布时间】:2018-08-16 09:48:36
【问题描述】:

这是我的购买项目的数据库结构

这是我的图像表

我要获取文件FFNglxekCv

ParseQuery<ParseObject> query = ParseQuery.getQuery(KEY_MASTER_PURCHASED_ITEM);
    ParseUser currentUser = ParseUser.getCurrentUser();


    user.setObjectId(currentUser.getObjectId());*/

    query.whereEqualTo(KEY_PURCHASED_BY, currentUser);
    query.findInBackground(new FindCallback<ParseObject>() {
        public void done(List<ParseObject> parseObjectList, ParseException e) {
            hideProgressDialog();
            if (e == null) {

                if (!parseObjectList.isEmpty()) {

                    for (int i = 0; i < parseObjectList.size(); i++) {

                        ParseObject parseObject = parseObjectList.get(i);

                     // ParseFile parseFile =(ParseFile) parseObject.getParseFile("image");


                        Log.e(TAG,TAG);
                    }
                }

            } else {
                if (!e.getLocalizedMessage().equalsIgnoreCase(""))
                    showErrorToast(e.getLocalizedMessage(), true);
                else
                    showErrorToast(getString(R.string.no_response_from_server), true);
                Log.d(TAG, "Error: " + e.getMessage());
            }
        }
    });

我不知道如何从 parse.com 获取图像

【问题讨论】:

    标签: android parse-platform back4app


    【解决方案1】:

    我正在使用 Back4App!你能试试下面的方法吗?

    ParseQuery<ParseObject> query = ParseQuery.getQuery("Photo");
            query.whereEqualTo("objectId", FFNglxekCv);
            query.findInBackground(new FindCallback<ParseObject>() {
                @Override
                public void done(List<ParseObject> objects, ParseException e) {
                    if(e==null){
                        for(ParseObject object : objects){
                            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());
                    }
                }
            });
    

    让我知道它是否适合你!

    【讨论】:

    • 谢谢你,我要投票赞成你的答案。如果我有很多数据,比如我有 10 或 20 条记录,我认为这很耗时。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-29
    相关资源
    最近更新 更多