当前位置: 首页 > 面试题库 >

适用于Android / Java的“时间/以前”库

毛成济
2023-03-14
问题内容

从那时起有什么建议可以为Android / Java提供良好的显示时间?

(例如10分钟前,5天前)

安卓


问题答案:

通过Google I / O 2012应用程序:

/*
 * Copyright 2012 Google Inc.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

private static final int SECOND_MILLIS = 1000;
private static final int MINUTE_MILLIS = 60 * SECOND_MILLIS;
private static final int HOUR_MILLIS = 60 * MINUTE_MILLIS;
private static final int DAY_MILLIS = 24 * HOUR_MILLIS;


public static String getTimeAgo(long time, Context ctx) {
    if (time < 1000000000000L) {
        // if timestamp given in seconds, convert to millis
        time *= 1000;
    }

    long now = getCurrentTime(ctx);
    if (time > now || time <= 0) {
        return null;
    }

    // TODO: localize
    final long diff = now - time;
    if (diff < MINUTE_MILLIS) {
        return "just now";
    } else if (diff < 2 * MINUTE_MILLIS) {
        return "a minute ago";
    } else if (diff < 50 * MINUTE_MILLIS) {
        return diff / MINUTE_MILLIS + " minutes ago";
    } else if (diff < 90 * MINUTE_MILLIS) {
        return "an hour ago";
    } else if (diff < 24 * HOUR_MILLIS) {
        return diff / HOUR_MILLIS + " hours ago";
    } else if (diff < 48 * HOUR_MILLIS) {
        return "yesterday";
    } else {
        return diff / DAY_MILLIS + " days ago";
    }
}


 类似资料:
  • 问题内容: 我正在尝试为Android创建一个仅向SSH服务器发送命令的应用程序。无需响应,我只需要能够发送命令即可。我想知道是否可以使用任何Java库? 不需要高级的东西,只需一个纯粹的连接即可发送命令。 问题答案: 您正在搜索JSch。 其他库是jaramiko,paramiko和trilead- ssh2 。connectbot项目是您可以浏览Trilead源代码的地方。请注意,connec

  • 问题内容: 是否有读取ePub格式的库?我在http://github.com/psiegman/epublib中找到了ePublib 。我仍在学习如何使用它。 是否有适用于Android的ePub jar? 问题答案: 我是epublib的作者。现在可以在Android上运行。参见http://www.siegmann.nl/epublib/android

  • 问题内容: 我想知道是否有一种从Java方法调用属性的方法。我没有在Android文档中找到任何方法来做到这一点。这是我要实现的布局图: http://www.anddev.org/resources/image/2234 我知道可以通过XML进行操作,如下所示: 但是在我的情况下,我需要通过Java代码来完成此操作,因为我将动态实现另一个布局视图。为了避免将XML布局与Java代码合并,我宁愿使

  • 问题内容: 是否有一些针对Java的智能日期/时间解析器库?聪明的意思是,我不需要指定日期/时间格式。该API应该与此类似: 更新 : 问题答案: JodaTime非常适合处理日期对象(例如date.plusDays(10)) …但是 JChronic 是您想要的自然语言日期解析,例如

  • 问题内容: 我目前正在做一个小项目,该项目将从URL加载图像,调整大小,并使用指定的调色板将其颜色深度更改为仅16种颜色。我的主要问题是,我需要一个程序,可以在Android设备和台式计算机上使用。您知道在两个系统上都可以使用的良好图像处理库吗? 提前致谢。 问题答案: 有几种工具: 图片J,http: //rsbweb.nih.gov/ij/ 斐济,http://fiji.sc/wiki/ind

  • 问题内容: 由于GAE具有严格的限制,例如-“ Java应用程序无法使用任何用于写入文件系统的类”。 是否有一个好的Java PDF库可以将PDF写入内存以流式传输到云? 问题答案: 根据这个在Google网上论坛上的主题(需要身份验证),PDFjet可以在GAE上使用(已进行了少许修改,以在某些地方用流替换文件)。正如他们在线程中所说: 这是一个相当低级的库,但是对于简单的任务应该可以。 到目前