- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在为几个特定位置开发一种 parking 计时器应用程序。该应用程序询问用户他在哪里(下拉菜单,保存列字母和数字,如 A6),然后显示具有给定位置的屏幕、从 0 开始计数的计时器(计时器类)以及必须支付的价格退出(使用经过的小时数 * 基本价格计算)。
这一切都很好,直到用户或操作系统终止应用程序(任务管理器或内存管理)。然后,下次用户打开该应用时,他会回到主菜单,但他的位置、时间和价格都已丢失。
我需要一种方法来保存所有用户信息并能够在应用重启时加载这些信息。
最初我想将用户的位置和计时器启动的确切时间(可能是 DateTime.Now() ?)保存到内部存储中的 .txt 文件中,以便读取:
mallname,columnLetter,columnNumber,startTime
这样,如果应用程序被终止,或者任何时候应用程序从头开始启动,MainActivity 将首先检查应用程序的内部存储中是否存在 file.txt,如果存在,它会立即启动 lastPage Activity , 读取 .txt 文件以将值作为参数传递(因此,逗号分隔)。如果没有这样的文件,它就会正常进行。最后一页确实包含一个重置按钮,该按钮将删除文件,以便应用程序在下次使用时可以正常启动。
我不知道这种方法的效率如何,但这是第一个想到的。但是,我不知道该怎么做。我在 C# 中为 Windows Phone 编写了完全相同的方法,但我不知道如何将它转换为 Android 的 Java。此外,在 C# 中我实际上并没有使用计时器,而是保存了 startTime 并使用了一个计时器来计算 startTime - DateTime.now() 在每个滴答声(每秒)上并更新 textBlock 以显示它。
如有任何帮助,我们将不胜感激。
最佳答案
通常用户数据应该保存到 SQLite 数据库中,但是在您的情况下,由于您谈论的是几个变量,将这些值保存在应用程序的 SharedPreferences
中会容易得多。 .
对于您想要保存的每个值,将此行添加到您的 Chronometer 的 onChronometerTick() 方法中:
PreferenceManager.getDefaultSharedPreferences(this).edit().putInt("your_key", <Your_value>).commit();
这可以稍后(例如,每当您的应用程序从崩溃中恢复时)通过以下方式检索:
PreferenceManager.getDefaultSharedPreferences(this).getInt("your_key", <Default_value>);
关于性能问题,如果您的 Chronometer 每秒滴答一次,这应该不会影响您应用的性能并且是完全可以接受的。
关于java - 如何在 Android 应用程序中保存天文钟耗时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25352888/
我在我的 UIPath 项目中实现了一个普通的“for each”循环(不是每行特定的 excel)。 for-each 循环使用以前从 excel 文件中检索到的数据查看数据表。 然后,for-ea
我认为我的 SQL 查询花费的时间太长,现在看起来大约需要 30 秒。我有两个表,Record 和 Mainrecord。我想获取有关列金额中包含 0 的所有 Mainrecords 的信息,并且在这
这个编辑器是水平的http://tinymce.moxiecode.com/examples/simple.php我似乎只找到水平编辑器,有人遇到过垂直编辑器吗?有什么例子吗? build 需要多长时
我想创建一个跟踪任务时间的 ASP.NET WinForms 应用程序。我需要能够编写表单,以便将任务添加到数据库、在新选项卡中打开它,以及能够开始、暂停和停止任务。完成后,我需要计算完成任务所需的时
抱歉,我是 C 的新手。但我做错了什么?几乎尝试了一切,但仍然无法计算执行 t1 和 t2 之间的代码所传递的秒数,总是返回我在 0.00 秒内完成。感谢您的耐心等待:) #include cloc
我有 2 个简单的函数(在一个范围内循环)可以单独运行而没有任何依赖性。我正在尝试使用 Python 多处理模块和多线程模块来运行这 2 个函数。 当我比较输出时,我看到多进程应用程序比多线程模块多花
尝试记录使用装饰器运行函数所需的时间,但我误解了一些东西。它拒绝写登录装饰器。 当你颠倒装饰器的顺序时,它会导致模板上的构建错误(就像信息丢失一样)。 在我的初始 py 中: if app.debug
我听说 System.out.println(); Java 语句是昂贵的(它消耗了很多时间) 所以我试着评估一下它的成本: 当我评估 5 个语句时...成本 = 1.0 所以我预计 1 条语句的成本
我正在使用 codeigniter REST-API(作者:philsturgeon 引用 URL: https://github.com/philsturgeon/codeigniter-rests
我在 SFML 中有一个时钟和计时器,它测量秒数。我试图在经过一定秒数(特别是 4 秒)后执行下一个操作 这是我的代码 #include "stdafx.h" #include "Splash
例如,我们在 SomeActivity 中,该 Activity 有一个按钮,用于调用将文件从一个目录移动到另一个目录(我们称之为作业)。 在黑莓手机上我会: 推送一个不可取消的弹出窗口(对话框屏幕)
我正在尝试从大小为 7,140,000 的 ArrayList 中删除 140,000 个对象。我预计这会花费几秒钟(如果那样的话),但 Java 每千个对象花费几秒钟。这是我的代码:
我得到了这个查询,它占用了我的 elapsed_time 并且工作正常,但后来我意识到我得到的 actual_elapsed 的值是错误的。 actual_elapsed 是我使用 TIMEDIFF(
我在更新面板中放置了一个 GridView。 当用户按下按钮时,gridView 将被一个数据表填满: GridView_Overview.Da
客户想要将数据库从 MS SQL 转换为 MySql。 就我个人而言,我不会这样做,我更喜欢使用 MS SQL 来处理大型数据库,并且喜欢使用 MSSQL 时可用的工具。 但是我确实在较小的项目上使用
我目前正在为一个 Julia 项目使用 Graph Database,使用 Redis。 有时 Redis 请求需要 300 毫秒才能执行,我不明白为什么。我运行了一个简单的请求 10.000 次(请
我们在一次运行中处理了 500 万个请求。然而,在运行期间,很少有请求失败。验证关闭后,我们了解到 Full GC 已启动,并且花费了超过 40 秒(到 60 秒),从而导致超时。 配置:我们有 3
我是一名优秀的程序员,十分优秀!