Articles of 时间

如何获得Android本机代码中的高分辨率定时器?

我正在寻找一种方法来获得Android上的高分辨率定时器(时钟源)。 这必须在本地代码,并可能是相当不便携的。 我想微秒的分辨率,或更好。 对于我的特殊应用,分辨率比精度更重要,而单调的计时器是最好的。 我已经使用Android 4.0.3在特定的ARMv7芯片组上进行了testing。 我到目前为止所尝试的是: clock_gettime(CLOCK_MONOTONIC) :在目标硬件上以1ms为单位递增( EDIT最初由于我的代码中的错误而被认为是10ms,1ms是正确的,但还不是很好) gettimeofday() :类似于clock_gettime 我还没有尝试过: System.nanoTime() :这不是本地的。 我相信这是基于clock_gettime(),但是我更愿意找出底层的东西,直接使用它。 /dev/rtc 某种ARM指令/工具,可能是SysTick ( http://web.eecs.umich.edu/~prabal/teaching/eecs373-f10/readings/ARMv7-M_ARM.pdf )或通用计时器(GPT)。 另见(相关问题,但不回答): Android JNI中的高精度定时器 在Android上获得高精度定时

时间回到Android上

我正在开发一个应用程序,并不时得到这个奇怪的消息: W/SystemClock(11814): time going backwards: prev 9003590393023(ioctl) vs now 9003584533648(ioctl), tid=11856 这是什么意思? 为什么会发生? 谢谢!

在两部手机中同步系统时间

我正在做一个研究项目,其中2个Android手机必须同时播放相同的声音文件,要做到这一点,我需要在每个手机的系统时间同步到毫秒。 我的问题是,如何在代码级别实现这一点? 现在所有的方法都只能做二级同步。

如何在一个格式化的datestring中包含毫秒?

嗨我编码如下: String sph=(String) android.text.format.DateFormat.format("yyyy-MM-dd_hh-mm-ss_SSS", new java.util.Date()); 我想要当前的date和时间和毫秒 它给我的是: 2011-09-01_09-55-03-SSS SSS不转换回毫秒 有没有人知道为什么要得到3毫秒的毫秒数? 谢谢

如何访问收件箱中收到的短信时间?

我可以从这个收件箱中读取消息: Uri uriSMSURI = Uri.parse("content://sms/inbox"); Cursor cur = getContentResolver().query(uriSMSURI, null, null, null, null); 我从这个访问date: – date = cur.getString(cur.getColumnIndexOrThrow("date")); 但现在的问题是,它给当前时间不是收件箱中的消息时间。 对不起,编辑不好,任何想法将不胜感激。 提前致谢!

测量Android中两个MotionEvents之间的时间间隔

我是Android编程新手,所以我要求你帮忙解决我的问题。 我正在尝试以秒/毫秒为单位测量MouseEvent.ACTION_DOWN和MouseEvent.ACTION_UP之间的时间量。 @Override public boolean onTouchEvent(MotionEvent event) { long start=0; if (event.getAction() == MotionEvent.ACTION_DOWN) { // manage down press start=System.nanoTime();//START System.out.println("START"); } else if (event.getAction() == MotionEvent.ACTION_MOVE) { // manage move System.out.println(event.getRawX()+","+event.getRawY()); } else { // manage up long finish=System.nanoTime()//FINISH long seconds = (finish-start) / 1000000000;//for seconds Toast.makeText(this, "FINISH, duration: "+seconds, Toast.LENGTH_SHORT).show(); System.out.println("FINISH, duration: "+seconds); […]

24小时不能在dateformat android工作

我已经做了一个应用程序,我需要在24小时格式执行date转换。 这是我的代码。 GregorianCalendar c = new GregorianCalendar(Locale.GERMANY); c.set(2011, 04, 29,0,0,0); String cdate = (String) DateFormat.format("yyyy-MM-dd HH:mm:ss", c.getTime()); Log.i(tag,cdate); 现在当我检查我的LOG这里是输出: 04-22 12:44:15.956:INFO / GridCellAdapter(30248):2011-04-29 HH:00:00 为什么小时字段没有设置。 我已经明确地通过了0,当我做日历对象,仍然是在日志中显示HH。 我已经尝试了传球,这是设置,但是HH没有被设置。 可能是什么问题呢? 先谢谢你。

在24小时的时间表上获取当前时间和date

我在24小时的时间表上遇到问题。 据我所知,“HH”应代表24小时时标上的当前小时,然而,由于某种原因,“HH”根本没有被解释。 这就是为什么下面这行代码输出“HH:50:06 Uhr,02. Sep.” : DateFormat.format("HH:mm:ss 'Uhr', dd. MMM", new Date()); 任何想法我做错了什么? 然而,使用“hh”作品,这将会输出12小时的时间,这不是我想要做的。 帮助表示赞赏!

为当前时间添加一定的时间并写入

我在用着: Calendar c = Calendar.getInstance(); 与我目前的时间, String sHour = c.get(Calendar.HOUR_OF_DAY) String sMinute = c.get(Calendar.MINUTE) 我需要的是添加例如1小时10分钟 – 将其存储在variables中,也可以使用10分钟并将其另存为另一个variables。 (我需要在TextView使用它们) 我见过add(); 方法在Android文档,但我似乎无法理解它是如何工作的。 谢谢

无法获取Joda时间在Android上运行。

我正在学习Android,并需要date/时间。 我被同事推荐给乔达,这似乎正是我需要进步的。 不幸的是,我无法正常工作。 我正在使用intellij,这是Android 2.2。 我采取的步骤: 从网站下载Joda时间jar子。 Intellij>文件>项目结构>附加类 build立 然后我得到这个错误: 警告:忽略不具有关联的EnclosingMethod属性的匿名内部类的InnerClasses属性。 (这个类可能是由一个破碎的编译器产生的。) 我不知道该从哪里出发。 帮助将不胜感激!