2

我创建了一个更改 Android 上的日期/时间设置的应用程序,但如果我对其进行测试,它就不起作用。

那是因为android内部系统的安全性,还是有问题?

这是我的代码:

if (killed) {
    // TODO Auto-generated method stub
    AlarmManager a = (AlarmManager) getSystemService(Context.ALARM_SERVICE);
    long current_time_milliens = System.currentTimeMillis();
try {
    a.setTime((long) current_time_milliens - 86400);
} catch (Exception e) {
    // add exception handling
}
4

2 回答 2

1

除非它是系统应用程序(保护级别签名或系统)或您的手机已植根(因为 linux 层中有保护),否则您无法更改此设置。这意味着,如果它是一个普通的 Play 应用程序,这是不可能的。此外,如果您成功满足上述要求,您的应用还需要权限 android.permission.SET_TIME。

从非系统应用程序更改时间的唯一方法是让用户手动设置:

startActivity(new Intent(android.provider.Settings.ACTION_DATE_SETTINGS));
于 2013-10-21T09:01:52.687 回答
0

David Wasser 回答了一个类似的问题;
“应用程序不可能更改(非根)Android 设备上的日期或时间。

从 AlarmManager.setTime() 的文档中:

需要权限 android.permission.SET_TIME。

http://developer.android.com/reference/android/app/AlarmManager.html "

原评论:
尝试在android系统时间中设置时间和日期时,在AlarmManager中找不到setTime(long)方法

于 2013-10-21T08:58:39.103 回答