我对Android-Development相当新,我得到了一个关于操作方法的一般性问题:
我的应用程序从步进检测器获取传感器数据(检测到的步骤加起来)。
现在我需要存储这些步骤(这将是很多数据)。
这些步骤应该像这样存储:
如果今天
每小时存储步骤。
否则
每天存储步骤
SharedPreferences不属于这个,因为它只存储KeyValues。
但SQLite可以处理这个吗?或者还有其他方法吗? 未来的功能可能是将这些数据与服务器同步。 我的意思是这可能最终会出现在数千个条目中,该应用程序还将支持需要以类似方式存储的其他大型数据集。
答案 0 :(得分:0)
可以使用SQL Lite,只要您的应用程序存在于设备中,它就会存在,但是如果您希望使用Cloud Service,Azure提供简单易用的App Service,它具有简单的表格,其中你可以直接调用API,在内部负责建立连接并将数据插入表中。你可以使用Free Tier of App Service来测试这个概念。
答案 1 :(得分:0)
尝试使用Realm noSql数据库。关键是,您可以将SD卡上的整个数据库保存为每天的单独文件,稍后再处理。它是原生的,并且在大量数据的情况下工作得非常快。您可以稍后处理所有读数 - 打开数据库,转换读数(可能插入较旧的值以缩小数据大小),然后将其上载到云并删除数据库文件。 但是,无论如何,数据库只是实现细节,考虑抽象出所有操作,以便稍后可以替换db。 据我所知,sqLite将所有表存储在一个文件中,因此您需要一列日期,所有记录都将存储在单个表中。 Realm对此任务更灵活。