Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/223.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 网络查询返回本地数据存储指针_Android_Parse Platform - Fatal编程技术网

Android 网络查询返回本地数据存储指针

Android 网络查询返回本地数据存储指针,android,parse-platform,Android,Parse Platform,我最近设法切换到本地数据存储,将数据库中所有需要的部分移动到客户端。此外,每当数据更改时,我都会发送推送通知,以便客户机数据保持最新 现在我的问题是数据中的一个指针在更新后一直返回旧指针 以下是我使用的代码: public ParseQuery<CircuitUnit> circuitUnits() { ParseQuery<CircuitUnit> query = CircuitUnit.getQuery(); query.include(Circuit

我最近设法切换到本地数据存储,将数据库中所有需要的部分移动到客户端。此外,每当数据更改时,我都会发送推送通知,以便客户机数据保持最新

现在我的问题是数据中的一个指针在更新后一直返回旧指针

以下是我使用的代码:

public ParseQuery<CircuitUnit> circuitUnits() {
    ParseQuery<CircuitUnit> query = CircuitUnit.getQuery();
    query.include(CircuitUnit.circuits);
    query.include(CircuitUnit.guard);
    query.setLimit(1000);
    return query;
}

circuitUnits().findInBackground(
             new FindCallback<CircuitUnit>() {

    @Override
    public void done(List<CircuitUnit> objects, ParseException e) {
        Log.d(TAG, "Pinning circuitUnits " + objects.size());

        // debugging loop of results
        for (CircuitUnit circuitUnit : objects) {
            if (circuitUnit.getObjectId().equals("TXEZDch6wK")) {

                Guard guard = circuitUnit.getGuard();
                Log.d(TAG, "Guard: " + guard.getObjectId());

            }
        }

        // This function updates the Local datastore with the newly fetched objects
        // updateServerDataPin(objects, PinsGlobal.CIRCUIT_UNITS,
                            e, callback);
    }
});
记录的输出为:Guard:L440gHXKTY,其中应为SDDg23rR4h

我添加了CircuitUnit表的屏幕截图,显示SDDg23rR4h确实是指针的预期objectId

我试图创建一个示例项目,将问题显示为parse.com的bug报告的一部分,但返回了正确的指针

我的理论是,这个问题在于本地数据存储中存在数据,这会以某种方式干扰结果。我不明白为什么,因为我显然是在查询网络,而不是本地

似乎include语句被忽略了,只是用本地数据存储中的已知数据填充


有没有人经历过类似的事情,或者对这种行为有可能的解释?

对我来说也是一样,你有答案吗?我想不起来找到了一个固溶体/解释。我相信我最终使用的是简单的值而不是指针,也就是从更新指针到更新整型值和字符串值。好的,谢谢。我也发布了一个问题。等着瞧。。。