如何pin/unpin ParseObject 非递归?

How to pin/unpin ParseObject non recursive?

在我基于解析的新 android 应用程序中,我更喜欢自己固定所有子元素/而不是自动固定,因为固定某个子元素会导致无限递归,或者只是没有意义我的背景。 有没有一种方法可以不递归地固定和取消固定对象?

我已经能够非递归地固定一个对象,但这不是一个很好的方法:

Method m = ParseObject.class.getDeclaredMethod("pinInBackground", String.class, boolean.class);
m.setAccessible(true);
Object object = m.invoke(parseobject, pintag, false);
if(object instanceof Task) {
   Task task = (Task) object;
   return task;
}

有什么正常的方法可以做到这一点吗? 如果没有 Javadoc 中提到的这种递归,是否有可能以某种方式取消固定对象?

Removes the object and every object it points to in the local datastore, recursively.

由于当时在 Parse-SDK-Android 中显然没有针对我的问题的解决方案, 我自己实现了一些功能。

目前pull request还没有合并。 如果有人需要快速解决方案,请随时使用 my branch:

implementation 'com.github.thomax-it.Parse-SDK-Android:parse:1.21.1'