Establecer la fecha / hora de Android mediante programación

Necesito establecer la fecha y hora de Android de forma programática, pero no estoy teniendo éxito! Tengo estas tres fuentes arriba:

Código fuente 1

AlarmManager alarm = (AlarmManager) getSystemService(ALARM_SERVICE); alarm.setTime(1330082817000); 

AndroidManifest:

 <uses-permission android:name="android.permission.SET_TIME" /> <uses-permission android:name="android.permission.SET_TIME_ZONE" /> 

Excepción:

 Service fatal error : Unable to start activity ComponentInfo{br.com.tdta.service/br.com.tdta.service.Service}: java.lang.SecurityException: setTime: Neither user 10038 nor current process has android.permission.SET_TIME. java.lang.RuntimeException: Unable to start activity ComponentInfo{br.com.tdta.service/br.com.tdta.service.Service}: java.lang.SecurityException: setTime: Neither user 10038 nor current process has android.permission.SET_TIME. at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679) at android.app.ActivityThread.access$2300(ActivityThread.java:125) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:123) at android.app.ActivityThread.main(ActivityThread.java:4627) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:521) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626) at dalvik.system.NativeStart.main(Native Method) Caused by: java.lang.SecurityException: setTime: Neither user 10038 nor current process has android.permission.SET_TIME. at android.os.Parcel.readException(Parcel.java:1247) at android.os.Parcel.readException(Parcel.java:1235) at android.app.IAlarmManager$Stub$Proxy.setTime(IAlarmManager.java:237) at android.app.AlarmManager.setTime(AlarmManager.java:289) at br.com.tdta.service.Service.onCreate(Service.java:32) at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627) ... 11 more 

===

Código fuente 2

 boolean itsWork = SystemClock.setCurrentTimeMillis(1330082817000); System.out.println(itsWork); 

Manifiesto:

 <uses-permission android:name="android.permission.SET_TIME" /> <uses-permission android:name="android.permission.SET_TIME_ZONE" /> 

Su valor de trabajo

 false 

===

Código fuente 3

 SimpleDateFormat format = new SimpleDateFormat("yyyyMMdd.hhmmss"); String data = format.format(new Date(1330082817000)); try { Runtime.getRuntime().exec("date -s " + data); } catch (IOException e) { } 

¿Qué estoy haciendo mal?

¡Gracias por adelantado!

La aplicación de usuario no tiene permiso para cambiar la hora del dispositivo. Por favor, lea la respuesta por cashbash en el siguiente post para la opción alternativa.

Copiando aquí para una referencia rápida:

De acuerdo con este hilo , las aplicaciones de usuario no pueden establecer la hora, independientemente de los permisos que le proporcionamos. En su lugar, el mejor enfoque es hacer que el usuario ajuste la hora manualmente. Usaremos:

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

Desafortunadamente, no hay manera de vincularlos directamente a la configuración de tiempo (lo que les ahorraría un clic más). Haciendo uso de ellapsedRealtime , podemos asegurar que el usuario fije el tiempo correctamente.

  • Cómo deshabilitar / habilitar a todos los niños en LinearLayout en Android
  • Extendiéndose de dos clases
  • Android Building Workspace Error
  • Alternativa de Java para el desarrollo de Android
  • Manera correcta de cambiar Collapseble Título de la barra de herramientas
  • Convertir matriz de bytes a Base64 String en android
  • Java / Android - ¿Cómo imprimir una traza de pila completa?
  • Guardar matriz de objetos personalizados en estado de instancia
  • Cómo agregar un certificado pkcs12 de cliente a Postman Chrome, W7?
  • ¿Cómo puedo reducir el relleno interno alrededor del texto dentro de un objeto de botón de Android?
  • ¿Cómo depurar un complemento de Gradle?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.