Android 修改預設時區

2021-09-06 15:46:11 字數 2113 閱讀 3761

首先介紹應用程式修改 : 

alarmmanager malarmmanager =(alarmmanager) getsystemservice(context.alarm_service);

malarmmanager.settimezone(

"america/santiago

");//

asia/****ei

//gmt+08:00

"asia/****ei");

timezone tz =timezone.getdefault();

"gmt+08:00");

this

,

"zone :

" + tz.getid() + "

itz :

" + tz.gettimezone("

gmt+08:00

"), toast.length_short)

.show();

注意下面的一句 :

malarmmanager.settimezone("

america/santiago

");

"america/santiago" 是xml乙個id值,這個id值來自 : 下面xml中id後面的賦值

"

pacific/majuro

">馬朱羅

"pacific/midway

">中途島

"pacific/honolulu

">檀香山

"america/anchorage

">安克雷奇

上面只列出部分項.

修改後,進入setting->date & time->select time zone項,既可以看到結果.

其次可以通過系統修改,通過系統修改是修改系統預設值:

android 系統預設時區為gmt + 00:00,在設定中的「日期和時間」中可以看到,下面是修改預設時區的方法。

在android原始碼中找到device/(裝置或平台名稱)/(這裡可能還有一層是編譯的代號之類的吧)/system.prop

在其中新增,若已存在則修改為persist.sys.timezone=asia/shanghai

persist.sys.timezone屬性的對應值在如下檔案中,frameworks\base\core\res\res\xml\time_zones_by_country.xml

這個xml檔案中可以找到中國所在的 gmt + 8:00時區的對應值

<

timezone

code

="cn"

>asia/shanghai

timezone

>

<

timezone

code

="cn"

>asia/harbin

timezone

>

<

timezone

code

="cn"

>asia/chongqing

timezone

>

<

timezone

code

="cn"

>asia/urumqi

timezone

>

<

timezone

code

="cn"

>asia/kashgar

timezone

>

修改完之後需要重新編譯整個系統,編譯後的結果在/out/target/product/(以裝置平台名稱編譯版本命名的資料夾)/system/build.prop中可以看到。

system.prop 這個檔案中還可以修改其他一些預設屬性,例如預設的顯示語言和國家區域如下:

ro.product.locale.language=zh ro.product.locale.region=cn

linux修改預設時區

公司新做的系統時區一直是utc的,所以讓我想個好辦法把時區改為cst的 就是修改 etc localtime的軟鏈結的指向 ln sf usr share zoneinfo asia shanghai etc localtime 在除錯的過程中還發現另外乙個奇特的方法,就是tzselect命令 雖然...

PHP預設時區修改

今天敲使用者管理系統時 轉換時間戳卡拉我兩個多小時 修改php.ini,在php.ini中找到data.timezone 去掉它前面的分號 去掉分號後一定定格,不定格反正我是一直報錯。如果配置檔案不想去改 可以修改時間戳 放在 頂部 可以生效 在php.ini裡加上找到date.timezone項,...

php之修改預設時區

在每個地區都有自己的本地時間,php預設的時區設定是utc 格林威治標準時間 時間。而北京證號位於時區的東八區,領先utc八個小時,所以在使用時間函式時time 獲取的時間總是不對,因此你需要修改伺服器中預設的時區。有兩種方法修改時區 第一種通過修改php.ini中的date.timezone屬性,...