Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/207.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/111.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.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 导出数据以预加载到移动应用程序中的Firebase实例中_Android_Ios_Firebase_Firebase Realtime Database - Fatal编程技术网

Android 导出数据以预加载到移动应用程序中的Firebase实例中

Android 导出数据以预加载到移动应用程序中的Firebase实例中,android,ios,firebase,firebase-realtime-database,Android,Ios,Firebase,Firebase Realtime Database,该用例是一个用于事件的双平台移动应用程序。有一个时间表,包括照片、链接、扬声器的bios和谈话说明。如果所有与会者碰巧在同一时间、同一地点下载并打开应用程序,他们可能无法获得最佳体验->WiFi可能会减慢数据服务器的通话速度,而FireBase服务器端的通话速度将急剧上升 是否可以从服务器端导出数据库,并将事件日程数据预加载到移动应用程序下载中?启动后,该应用程序可以根据需要通过连接和与Firebase的短同步来同步任何最后一分钟的更新 如果这种类型的体系结构不可用,是否有Firebase团队会

该用例是一个用于事件的双平台移动应用程序。有一个时间表,包括照片、链接、扬声器的bios和谈话说明。如果所有与会者碰巧在同一时间、同一地点下载并打开应用程序,他们可能无法获得最佳体验->WiFi可能会减慢数据服务器的通话速度,而FireBase服务器端的通话速度将急剧上升

是否可以从服务器端导出数据库,并将事件日程数据预加载到移动应用程序下载中?启动后,该应用程序可以根据需要通过连接和与Firebase的短同步来同步任何最后一分钟的更新


如果这种类型的体系结构不可用,是否有Firebase团队会推荐的替代方案?

Firebase数据库API中没有将数据预加载到磁盘缓存的方法

我能想到两件事(两件都不是很好):

  • 让客户端从应用程序的资源中读取JSON文件并将其写入该位置。这样做的最终结果是服务器上的数据保持不变。但这确实会导致每个客户机向服务器写入相同的数据,因此与原始问题相反(而且可能表现更差)
  • 在从JSON文件加载的Firebase API调用周围有一个包装器,然后让它们在随机延迟后附加侦听器(以减少应用程序上的匆忙)
  • 如前所述,它们都不是很好。对于这两者,您都可以从下载JSON


    根据我的经验,会议应用程序的使用率远低于大多数开发者/组织者的想象。它通常也会在会议期间很好地分布。因此,减少加载的数据量可能足以使事情正常进行。

    Firebase数据库API中没有办法将数据预加载到磁盘缓存中

    我能想到两件事(两件都不是很好):

  • 让客户端从应用程序的资源中读取JSON文件并将其写入该位置。这样做的最终结果是服务器上的数据保持不变。但这确实会导致每个客户机向服务器写入相同的数据,因此与原始问题相反(而且可能表现更差)
  • 在从JSON文件加载的Firebase API调用周围有一个包装器,然后让它们在随机延迟后附加侦听器(以减少应用程序上的匆忙)
  • 如前所述,它们都不是很好。对于这两者,您都可以从下载JSON


    根据我的经验,会议应用程序的使用率远低于大多数开发者/组织者的想象。它通常也会在会议期间很好地分布。因此,减少加载的数据量可能足以让事情顺利进行。

    在android上,您可以在应用程序的资产目录中提供sql数据库,然后在用户打开应用程序时将其与更新进行协调。Firebase数据库是一个json文件。您还可以将其发送到assets目录,然后在首次加载时进行协调。

    在android上,您可以将sql数据库与应用程序一起发送到assets目录,然后在用户打开应用程序时将其与更新进行协调。Firebase数据库是一个json文件。您也可以将其发送到资产目录中,然后在第一次加载时进行协调。

    这在很大程度上是正确的,但在处理实时数据同步时,图像和其他更丰富的媒体可能会对会议室wifiz造成一些损害。请始终寻找将需要同步的数据最小化的方法。因此,不要在数据库中存储类似blob的对象,而是将它们存储为文件。您可以在可能的情况下将文件作为资源随应用程序一起发送,并将潜在更新存储在云存储上。然后从数据库中链接到文件。并对URL进行指纹识别或使用时间戳指示上次更新(以帮助您确定是否应从本地资源或云存储加载)。感谢您的帮助。图像文件是一个值得关注的问题。网站上的下载路径可以是照片的来源。1.从导出的JSON 2本地构建客户端结构。使用时间戳限定所有客户端Firebase查询。计划的种子数据是本地JSON,不在客户端的Firebase中。客户机查询比种子数据更新的数据,每个查询都是这样限定的。当存在任何重复时,来自服务器的结果将覆盖本地加载的数据。听起来对吗@这听起来难吗?是的,听起来可行,但相当复杂。我真的很想知道你的JSON计划会有多大,是否真的需要预加载。如果您将JSON保持在较小的范围内,并进行一些餐巾纸计算,那么这一切可能都是不必要的。如果您愿意,只需忽略由于会议场所WiFi带宽有限而导致的问题。这与数据的大小无关。这是开箱即用的体验(OOBE),例如,当WiFi无法满足需求时,DevFest DC研讨会的与会者受到阻碍。我不希望在我的应用程序中有这种体验。你和其他人可能很容易忽略->我让应用程序飞起来。这在很大程度上是正确的,但在处理实时数据同步时,图像和其他更丰富的媒体等东西可能会对会议室wifiz造成一些损害。始终要想办法尽量减少需要同步的数据。因此,不要在数据库中存储类似blob的对象,而是将它们存储为文件。您可以在可能的情况下将文件作为资源随应用程序一起发送,并将潜在更新存储在云存储上。然后从数据库中链接到文件。并对URL进行指纹识别或使用时间戳指示上次更新(以帮助您确定是否应从本地资源或云存储加载)。感谢您的帮助。图像文件是一个值得关注的问题。网站上的路径