相关疑难解决方法(0)

如何在Android Project中使用ThreeTenABP

我正在添加这个问题,因为我是Java和Android的新手,我搜索了几个小时试图解决这个问题.答案来自相关答案的组合,所以我想我会记录我为其他可能正在努力的人学到的东西.见答案.

对于一些背景知识,我的经验主要是PHP的Web开发和一点Ruby.我唯一的操作系统是Linux(Ubuntu Studio),我(不情愿地)在Android Studio 2.1.2中开发我的第一个Android应用程序.我的Java设置如下:

>java -version
> openjdk version "1.8.0_91"
> OpenJDK Runtime Environment (build 1.8.0_91-8u91-b14-3ubuntu1~15.10.1-b14)
> OpenJDK 64-Bit Server VM (build 25.91-b14, mixed mode)
Run Code Online (Sandbox Code Playgroud)

datetime android android-gradle-plugin threetenbp threetenabp

169
推荐指数
3
解决办法
2万
查看次数

在Android上将UTC转换为本地时间

在我的项目中,我得到了json格式的API响应.我得到一个UTC时间格式的字符串值,如下所示Jul 16, 2013 12:08:59 AM.
我需要将其更改为本地时间.这就是我们使用此应用程序需要显示当地时间的地方.我该怎么做?

这是我尝试过的一些代码:

String aDate = getValue("dateTime", aEventJson);
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("MMM dd, yyyy HH:mm:ss z");
simpleDateFormat.setTimeZone(TimeZone.getDefault());
String formattedDate = simpleDateFormat.format(aDate);
Run Code Online (Sandbox Code Playgroud)

假设aDate包含 Jul 16, 2013 12:08:59 AM

java android utc

44
推荐指数
4
解决办法
4万
查看次数

UTC使用JodaTime以毫秒为单位的当地时间

我试图使用Jodatime显示特定时间段内的交易.

我们的服务器要求开始日期和结束日期为UTC(这可能是显而易见的).因此,围绕这些的任何业务逻辑都使用DateTime对象,时区设置为DateTimeZone.UTC,例如

mStartDate = DateTime.now(UTC).withTimeAtStartOfDay();
Run Code Online (Sandbox Code Playgroud)

除了显示我不知道如何为本地(系统默认)时区增加它的时间之外,这很有效.理想情况下,我想使用DateUtils formatDateRange函数传递两个本地时间戳.但该getMillis()功能似乎没有考虑到本地偏移:

时间戳返回相同的毫秒时间

我也试过这个:

mTimePeriodTitle.setText(DateUtils.formatDateRange(mContext, f, mStartDate.getMillis(),
    mEndDate.getMillis(), DateUtils.FORMAT_SHOW_TIME,
    TimeZone.getDefault().getID()).toString());
Run Code Online (Sandbox Code Playgroud)

但它没有任何区别.所以我的问题是如何获得具有2个UTC时间戳的格式良好的本地日期范围?

java datetime android jodatime datetime-conversion

3
推荐指数
1
解决办法
1049
查看次数