android–ParseObject pinInBackground返回null objectId

android–ParseObject pinInBackground返回null objectId,第1张

概述我在Android项目中有一段代码,它创建一个ParseObject并将其存储在本地数据存储区中.但是,当我在pinInBackground()的done()回调方法中检查objectId时,它返回null.如果我从pinInBackground()切换到saveInBackground(),那么它工作正常,并给出一个有效的objectId.这是代码:finalPars

我在Android项目中有一段代码,它创建一个ParSEObject并将其存储在本地数据存储区中.但是,当我在pinInBackground()的done()回调方法中检查objectID时,它返回null.如果我从pinInBackground()切换到saveInBackground(),那么它工作正常,并给出一个有效的objectID.这是代码:

final ParSEObject testObject = new ParSEObject("TestObject");testObject.put("foo", "bar2");testObject.pinInBackground(new SaveCallback() {  @OverrIDe  public voID done(ParseException e) {      if (e != null) {          Log.e(TAG, "Failed to pin TestObject: " + e.getMessage());          return;      }      Log.d(TAG, "Added key-value pair to TestObject '" + testObject.getobjectID() + "': 'foo' => 'bar2'");  }

});

日志显示:

为TestObject’null’添加了键值对:’foo’=> ‘bar2’

为什么objectID为null?我是否需要设置它,因为它没有保存到云端?

解决方法:

问题是您没有将对象保存到Parse数据库,只保存到设备,因此尚未实际创建对象. pinInBackground()仅保存到设备,而saveInBackground()保存到Parse数据库,从而实际创建对象.如果使用.saveEventually(),则会固定,直到可以访问网络以保存到Parse数据库.但一般情况下 – 您实际上不会通过保存到您的设备来创建对象,它必须保存到Parse数据库才能创建.

总结

以上是内存溢出为你收集整理的android – ParseObject pinInBackground返回null objectId全部内容,希望文章能够帮你解决android – ParseObject pinInBackground返回null objectId所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1110696.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存