setTimeZone () не работает в android 9 (API 28) - PullRequest
1 голос
/ 18 июня 2020

Я хочу установитьTimeZone () для своего системного приложения. Хорошо работает в устройстве Android 4.2 (API 17). Но когда я перехожу на устройство Android 9 (API 28), я получаю неправильное сообщение:

java.lang.SecurityException: Neither user 11029 nor current process has android.permission.SET_TIME_ZONE

Я добавил эти разрешения, но ничего не происходит.

<uses-permission android:name="android.permission.SET_TIME_ZONE" tools:ignore="ProtectedPermissions" android:protectionLevel="signature|system"></uses-permission>
<uses-permission android:name="android.permission.SET_TIME" tools:ignore="ProtectedPermissions"/>

Здесь это мой код:

public void setTimeZone(String timeZone) {
  ((AlarmManager) mContext.getApplicationContext().getSystemService(Context.ALARM_SERVICE))
      .setTimeZone(timeZone);
}

Я хочу сохранить эту функциональность, что вы посоветуете использовать вместо метода AlarmManager.setTimeZone () для изменения системного времени?

...