简体   繁体   English

Parse.com 为对象返回 null

[英]Parse.com Returns null for object

I am trying to fetch object from parse.com.我正在尝试从 parse.com 获取对象。 But I get an empty object.Here is the class.但我得到一个空对象。这是课程。

截屏

And here is my code.这是我的代码。

ParseQuery<ParseObject> query = ParseQuery.getQuery("AppDate");
    query.getInBackground("lOtmkstVaR", new GetCallback<ParseObject>() {
        public void done(ParseObject object, ParseException e) {
            if (e == null) {
                Log.d("DATA", object.getObjectId());
            } else {
                // something went wrong
                e.printStackTrace();
            }
        }
    });

And here is my logcat.这是我的 logcat。

06-12 10:57:20.203    7512-7512/com.andromedatech.onlineradio W/System.err﹕ com.parse.ParseException: no results found for query
06-12 10:57:20.273    7512-7512/com.andromedatech.onlineradio W/System.err﹕ at com.parse.AbstractParseQueryController$1.then(AbstractParseQueryController.java:26)
06-12 10:57:20.273    7512-7512/com.andromedatech.onlineradio W/System.err﹕ at com.parse.AbstractParseQueryController$1.then(AbstractParseQueryController.java:17)
06-12 10:57:20.273    7512-7512/com.andromedatech.onlineradio W/System.err﹕ at bolts.Task$13.run(Task.java:755)
06-12 10:57:20.273    7512-7512/com.andromedatech.onlineradio W/System.err﹕ at bolts.BoltsExecutors$ImmediateExecutor.execute(BoltsExecutors.java:105)
06-12 10:57:20.273    7512-7512/com.andromedatech.onlineradio W/System.err﹕ at bolts.Task.completeImmediately(Task.java:746)
06-12 10:57:20.274    7512-7512/com.andromedatech.onlineradio W/System.err﹕ at bolts.Task.access$100(Task.java:31)
06-12 10:57:20.274    7512-7512/com.andromedatech.onlineradio W/System.err﹕ at bolts.Task$9.then(Task.java:538)
06-12 10:57:20.274    7512-7512/com.andromedatech.onlineradio W/System.err﹕ at bolts.Task$9.then(Task.java:535)
06-12 10:57:20.274    7512-7512/com.andromedatech.onlineradio W/System.err﹕ at bolts.Task.runContinuations(Task.java:832)
06-12 10:57:20.274    7512-7512/com.andromedatech.onlineradio W/System.err﹕ at bolts.Task.access$600(Task.java:31)
06-12 10:57:20.274    7512-7512/com.andromedatech.onlineradio W/System.err﹕ at bolts.Task$TaskCompletionSource.trySetResult(Task.java:887)
06-12 10:57:20.274    7512-7512/com.andromedatech.onlineradio W/System.err﹕ at bolts.Task$TaskCompletionSource.setResult(Task.java:921)
06-12 10:57:20.274    7512-7512/com.andromedatech.onlineradio W/System.err﹕ at bolts.Task$14$1.then(Task.java:813)
06-12 10:57:20.274    7512-7512/com.andromedatech.onlineradio W/System.err﹕ at bolts.Task$14$1.then(Task.java:800)
06-12 10:57:20.274    7512-7512/com.andromedatech.onlineradio W/System.err﹕ at bolts.Task$13.run(Task.java:755)
06-12 10:57:20.275    7512-7512/com.andromedatech.onlineradio W/System.err﹕ at bolts.BoltsExecutors$ImmediateExecutor.execute(BoltsExecutors.java:105)
06-12 10:57:20.275    7512-7512/com.andromedatech.onlineradio W/System.err﹕ at bolts.Task.completeImmediately(Task.java:746)
06-12 10:57:20.275    7512-7512/com.andromedatech.onlineradio W/System.err﹕ at bolts.Task.continueWith(Task.java:545)
06-12 10:57:20.275    7512-7512/com.andromedatech.onlineradio W/System.err﹕ at bolts.Task.continueWith(Task.java:556)
06-12 10:57:20.275    7512-7512/com.andromedatech.onlineradio W/System.err﹕ at bolts.Task$14.run(Task.java:800)
06-12 10:57:20.275    7512-7512/com.andromedatech.onlineradio W/System.err﹕ at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
06-12 10:57:20.275    7512-7512/com.andromedatech.onlineradio W/System.err﹕ at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
06-12 10:57:20.275    7512-7512/com.andromedatech.onlineradio W/System.err﹕ at java.lang.Thread.run(Thread.java:818)

I just started using parse.com back-end service.我刚开始使用 parse.com 后端服务。 I am using parse.com guide.我正在使用 parse.com 指南。

You have made a simple typo in your query.您在查询中犯了一个简单的错字。 Your class name is AppData but you have used AppDate .您的类名是AppData但您使用了AppDate It should be它应该是

ParseQuery<ParseObject> query = ParseQuery.getQuery("AppData");

I had this error too.我也有这个错误。 Is caused by parse don't return a "ParseObject", just and object, here my code which works fine for me:是由解析不返回“ParseObject”引起的,只是和对象,这里我的代码对我来说很好用:

ParseQuery query = new ParseQuery("Your_class_name");
query.getInBackground(imagenID, new GetCallback() {

@Override
                            public void done(Object o, Throwable throwable) {
                            ParseObject object = (ParseObject) o;
                            ParseFile foto = (ParseFile) object.get("Your_column_name");
                            foto.getDataInBackground(new GetDataCallback() {
                                @Override
                                public void done(byte[] bytes, ParseException e) {
                                    if (e == null) {
                                        //do your things like decoding to a Bitmap
                                    } else {
                                        Toast.makeText(getApplicationContext(), "Error", Toast.LENGTH_SHORT).show();
                                        e.printStacktrace();

                                    }
                                }
                            });

                        }
                   }

just replace your "done" for my "done".只需将您的“完成”替换为我的“完成”。 It works perfectly for me它非常适合我

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM