Parse.com:Android如何在离线模式下在ParseObject中存储Image ParseFile

时间:2014-12-31 06:05:45

标签: android parse-platform offline-caching

parse.com提供了一种使用object.saveEventually()在离线模式下保存ParseObject的方法; call ..这将对象存储在本地dataStore中,除非与服务器完成同步。

问题是,我无法存储Parsefile Like Parse对象saveEventully();方法

这是我的代码:

// Locate the image in res > drawable-hdpi
                        Bitmap bitmap = Util.convertBitmap(ImgLocalPath);
                        // Convert it to byte
                        ByteArrayOutputStream stream = new ByteArrayOutputStream();
                        // Compress image to lower quality scale 1 - 100
                        bitmap.compress(Bitmap.CompressFormat.JPEG, 100,
                                stream);
                        byte[] image = stream.toByteArray();
                        // Create the ParseFile
                        final ParseFile file = new ParseFile("NC_Image",
                                image);

                        // Upload the image into Parse Cloud
                        file.saveInBackground(new SaveCallback() {

                            @Override
                            public void done(ParseException arg0) {

                                final ParseObject ncImagesObj = new ParseObject("NCImages");


                                ParseObject userObject = ParseObject.createWithoutData("AppUsers", userId);
                                ncImagesObj.put("user", userObject);
                                ncImagesObj.put("comment",obj.getComment());
                                ncImagesObj.put("UserType", UserType);

                                ncImagesObj.saveEventually(new SaveCallback() {

                                    @Override
                                    public void done(ParseException arg0) {

                                            ncImagesObj.put("image", file);
                                            ncImagesObj.saveInBackground();

                                            System.out
                                                    .println("Images Save....");

                                    }
                                });                                 
                            }
                        }, new ProgressCallback() {

                            @Override
                            public void done(Integer arg0) {
                                // TODO Auto-generated method stub

                            }
                        });

但这不起作用 只有'NC_Image'ParseObject Create,但它不能将图像ParseFile放入该对象。

任何人都有解决方案...... PLZ帮我找出解决方案

1 个答案:

答案 0 :(得分:2)

我错了,无法在离线模式下存储/创建Parse文件,

因为解析文件在上传文件字节后生成文件的唯一对象ID。

这就是为什么它不可能,但是

要解决此问题,我必须在本地存储图像,然后在网络打开后在后台创建Parse文件(在服务器上上传)。

感谢您的帮助.. :)