Android - 更改手机的时区

时间:2012-10-17 07:20:45

标签: android datetime

可以在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()));

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

2 个答案:

答案 0 :(得分:3)

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

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

startActivity(new Intent(android.provider.Settings.ACTION_DATE_SETTINGS));

答案 1 :(得分:2)

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