问题标签 [local-datastore]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
78 浏览

multithreading - Parse LocalDataStore 查询给出警告:正在主线程上执行长时间运行的操作

我正在使用 Parse 开发一个 Objective C 应用程序。我理解为什么当我对服务器进行 Parse 查询时,我需要在后台执行查询并在调用完成时在完成处理程序/回调中运行代码。这就是我最初启动应用程序并下载一些数据表时所做的事情。

但是,然后我将所有这些 Parse 对象固定在本地,然后使用 LocalDataStore 选项对这些数据进行查询。我还需要在后台执行这些调用吗?如果我通过这些调用删除背景选项,代码运行良好,但我仍然在控制台中收到警告:

警告:正在主线程上执行长时间运行的操作。中断 warnBlockingOperationOnMainThread() 进行调试。

如果我正在执行本地 Parse 查询,我可以将其简单地视为警告(并忽略它)还是我仍需要将这些查询视为应在后台线程中执行的操作?任何意见,将不胜感激。谢谢。

0 投票
0 回答
78 浏览

ios - 为什么我在查询 LocalDatastore 时得到 0 个固定对象?IOS。迅速。解析 v1.7.5

// 它返回的对象数 (xobjects.count) 为 0。为什么会这样?我试图在我的应用程序中查询 localdatastore,但它返回的对象数(xobjects.count)为 0。为什么会这样?我曾尝试使用以前的版本进行查询,但同样的事情发生了。解析的最新版本说他们已经修复了错误,但我仍然从 localdatastore 检索到的对象数量为“0”。请帮忙。

0 投票
1 回答
789 浏览

xcode - 如何使用本地数据存储通过 parse 和 swift 保存和查询数据

在我的应用程序中。消息列表代码下方将有用户列表和消息列表作为我
的代码(从解析加载列表)

添加消息代码(添加要解析的新消息)

我想使用解析本地数据存储在本地将这些数据存储在我的应用程序中,这样我的应用程序就不必一直使用互联网连接,当用户没有连接到互联网时,用户列表和消息列表仍然会出现.

问题是我不知道我应该在本地数据存储中使用什么方法我应该将本地数据存储代码放在“添加消息代码”中以保存新消息,并在“消息列表代码”中将其在本地查询到我的应用程序和如果有任何更新,它将在我们的本地“消息列表”加载后稍后执行。任何帮助表示赞赏。谢谢!

0 投票
1 回答
213 浏览

swift - Swift - Parse PFQueryTableViewController Error on loading the LocalDataStore

Good day! I'm using Parse in my swift project, Now my problem is loading and saving the query or objects to the localDataStore, I tried this method

now in my queryForTable method i have this

As you can see, I'm using Reachability to check if the device is connected to the internet. If not, The query will return query.fromLocalDataStore and if the device is connected it will return the normal query to get the latest data.

Now, my problem is when I'm turning off the internet to test it, it gives me an error 'Method requires Pinning enabled.' which i already did in tableView method

What do you think I did wrong? Thanks!

0 投票
0 回答
60 浏览

ios - 递归数据库解析 collectDirtyChildren,“pinning”或“saveEventually”时的互斥锁

我的用户有一个对话列表。

我有一个包含消息和用户列表的对话。

我有包含对话和用户(收件人和发件人)的消息。

当我对消息执行“saveEventually”或尝试固定“消息”或这些对象中的任何一个时,这似乎会导致问题,因为这可能是对这些对象指向的对象的递归调用。更多信息,似乎在对最新对话、消息和用户进行大量查询之后,有 15 个线程以“collectDirtyChildren”启动,这似乎是在更改消息的一个属性后对消息调用“saveEventually”时开始的(即状态)。

我是在使用 Parse 错误还是这是他们的错误?

0 投票
1 回答
1768 浏览

parse-platform - 如何正确同步解析与本地数据存储?

我正在开发一个使用parse的应用程序。从解析云获取数据不是问题。我也想将数据与用户的设备同步。

我现在正在考虑如何正确执行此操作。当我查询解析云时,我获取数据,将它们固定到本地数据存储区并将它们返回以供其他用途。然后,如果用户没有互联网连接,我将改为查询本地数据存储,但是当用户再次上线时,我需要再次与解析云同步数据。

这种方法好吗?这个问题有更好的解决方案吗?

谢谢

0 投票
0 回答
80 浏览

performance - 简单的 PFQuery 耗时太长

我有一个名为 TaskType 的简单类:

然后我对任务类型有一个简单的查询:

这是日志输出:

为什么从 LOCAL DATASTORE 查询 20 个项目需要 1400 毫秒!?

在 iPod Touch 5 上进行测试。在我的 iPhone 6 上,相同的查询大约需要 500-600 毫秒,但仍然太多了!这是一种错误还是我做错了什么?如何最小化查询时间?

PS:在没有这个“fromLocalDatastore”的情况下,我的 iPod 5 上的相同查询显示了以下内容:

从远程获取的时间怎么可能比从本地数据存储中获取的时间少 3-4 倍?...

0 投票
1 回答
1505 浏览

ios - 解析本地数据存储 + 网络同步

自 6 个月以来,我在我的 iOS 应用程序(用 Swift 编写)中使用 Parse.com,出于多种原因,我想使用 Parse 本地数据存储:

  • 使我的应用程序可离线使用(可检索)
  • 减少数据使用(许多查询返回«未更新数据»)
  • 减少加载时间(主要是在启动应用程序和从网络加载所有数据时)

为此,我想编写一个全局函数来处理我从应用程序中执行的所有查询的这些场景。

我已经对函数应该做什么有一个具体的想法,但我不知道如何在技术上编写这个函数:)

场景:

  • 注册/登录(链接多个查询):

    1. 从网络获取数据
    2. 在 NSUserDefaults 中的 « lastUpdateLocalDatastore » 变量中保存日期
    3. 在本地数据存储中固定数据
    4. 显示来自本地数据存储区的数据 —> 返回并更新 TableView
  • 加载应用程序(链多个查询):

    1. 显示来自本地数据存储区的数据 —> 返回并更新 TableView
    2. 从网络获取数据(其中 Parse 中的 «lastUpdateDate » 比 NSUserDefault 中的 «lastUpdateLocalDatastore » 更新)
    3. 在本地数据存储中固定数据
    4. 显示本地数据存储中的更新数据 —> 返回并更新 TableView
  • 触发更新(简单查询):

    1. 从网络获取数据(其中 Parse 中的 «lastUpdateDate » 比 NSUserDefault 中的 «lastUpdateLocalDatastore » 更新)
    2. 在本地数据存储中固定数据
    3. 显示本地数据存储中的更新数据 —> 返回并更新 TableView
  • 登出 :

    1. 取消固定本地数据存储中的所有数据
    2. 清除 NSUserDefault 中的 « lastUpdate » 值

功能结构:

问题 :

  1. 如何处理多个(异步)返回
  2. 如何使函数能够链接多个查询(例如,当我加载我的应用程序时,我需要从 6 个不同的查询中检索数据)
0 投票
0 回答
456 浏览

ios - 解析本地数据存储:无法获取固定对象

我的应用程序将contact对象存储在本地数据存储中。它只是将所有通讯簿联系人复制到 Parse Local Datastore 中。就我而言,我创建了大约 200 个新联系人,并使用以下代码行存储它们:

每次启动我的应用程序时,我都会查找存储的对象以通过以下查询将它们呈现给用户:

如果没有找到联系人,我会浏览通讯簿并重新创建它们。

问题是查询在某些情况下不返回任何内容。我启动应用程序,等到控制台中出现“固定联系人”(只是为了确保调用 pin 回调)并一次又一次地重新运行应用程序 - 最终查询返回重复的联系人(其中大约 800 个),所以我我确定在以前的尝试中固定成功,但在大多数情况下查询看不到它们。为什么会这样?

更新

我已经将我的 fetch 方法包装在一个dispatch_after块中,以将查询延迟几秒钟并修复了错误!看起来我的查询正在尝试获取尚未准备好的本地数据存储?查询回调中没有错误消息,什么都没有。

0 投票
1 回答
176 浏览

ios - 取消固定对象后,如何正确地将数据从本地数据存储区重新加载到表中?

在我正在开发的 iOS 应用程序中,我有一个UITableView填充了来自本地数据存储区的对象(我为此进行了子类化PFTableViewController)。我进行了设置,以便在为该特定行点击删除按钮时取消固定该对象,但在点击该按钮后,该对象仍显示在表格中。让它消失的唯一方法是下拉刷新或点击后退按钮,然后回到这个视图。

我试过打电话[tableview reloadData][self loadObjects]尝试UITableView刷新,但它不起作用。我也尝试过 [tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationFade],但这只会导致错误提示“第 0 节中的行数无效”。

如何设置它,以便删除按钮使应用程序取消固定对象并删除行/刷新数据,以便对象不再出现在表中?谢谢。这是代码: