2

是否可以在android中以编程方式设置手机的时区?我得到了这个代码

 Calendar calendar = Calendar.getInstance();       
 SimpleDateFormat sdf = new SimpleDateFormat("dd-MMM-yyyy hh:mm:ss z");
 sdf.setTimeZone(TimeZone.getTimeZone("America/Los_Angeles"));
 System.out.println(sdf.format(calendar.getTime()));

但它不会改变手机的时区。它只显示美国/洛杉矶的时区。

4

2 回答 2

3

您显示的代码只是定义了一个日历实例,该实例具有要在应用程序中使用的特定格式。无法以编程方式更改手机的时区。

您可以将用户重定向到适当的设置:

startActivity(new Intent(android.provider.Settings.ACTION_DATE_SETTINGS));
于 2012-10-17T07:23:45.813 回答
2

好吧,这只会改变格式,所以你不能指望它改变手机的时区。不,没有用于更改时间或时区的 API,这是为系统应用程序保留的。

于 2012-10-17T07:22:10.167 回答