2017-04-24 693 views
2

我希望Android應用程序認爲自動時區設置爲開,即使它實際上不是。我讀過使用Settings.Global.AUTO_TIME變量檢測自動時區,如果自動時區爲ON,則返回值1,如果自動時區爲OFF,則返回值0。 此變量使用下面的線更改Settings.Global.AUTO_TIME始終爲1

Settings.Global.getInt(getContentResolver(), Settings.Global.AUTO_TIME) 

我讀此變量只能由系統應用程序來設置讀取。有沒有辦法改變這個變量?我可以編寫一個允許我更改此變量的應用程序嗎?這可以通過生根android設備來完成。

+0

........... COV? –

+0

如果你想讓你的應用程序'相信'設置設置爲開,即使它不是,那麼只是不讀取設置,並假設它是在.. – akash93

+0

@ akash93通過「我的應用程序」我的意思是我的應用程序,我使用而不是某些應用程序,我正在製作。將問題編輯得更清楚。 –

回答

0

您可以使用Settings.Global.putInt(getContentResolver(), Settings.Global.AUTO_TIME, 1)來設置應用程序的值。

儘管您需要具有WRITE_SETTINGS權限。

+0

如何獲得寫入權限?這不僅適用於系統應用程序嗎? –

+0

您需要創建一個應用程序並請求該權限。用戶應用程序也可以擁有該權限。 – akash93

+0

即使授予了「WRITE_SETTINGS」權限,該段代碼也會在用戶應用上始終返回false,因此不起作用。 來源:https://developer.android.com/reference/android/provider/Settings.Global.html「全局系統設置,包含總是適用於所有定義的用戶的首選項。應用程序可以讀取這些設置,但不允許寫入「 – CrisBarreiro