我想知道是否有可能以编程方式更改Android手机上的默认通知声音,基于时间。例如,我希望在晚上11点之后将默认通知声音更改为Silent,然后在上午8点将其更改为声音我有Java的工作知识,但从来没有做过任何Android开发。提前感谢您的帮助。
发布于 2013-01-14 14:15:16
没有太多的细节,我将首先创建一个AlarmService来解决这个问题,它将定期运行,并通过RingtoneManager根据您一天中的期望时间更改默认铃声
AlarmManager设置定期调用"RingToneChanger.class“,如下所示:
AlarmManager am=(AlarmManager)context.getSystemService(Context.ALARM_SERVICE);
Intent i = new Intent(context, Alarm.class);
PendingIntent pi = PendingIntent.getBroadcast(context, 0, i, 0);
am.setRepeating(AlarmManager.RTC_WAKEUP, System.currentTimeMillis(), 1000 * 60 * 10, pi); // Millisec * Second * Minute然后在触发的RingToneChanger.class中,铃声可以像这样更改:
if(isNoon) {
RingtoneManager.setActualDefaultRingtoneUri(Context context, RingtoneManager. TYPE_NOTIFICATION , Uri lunchtimeNotificationSound);
} else {
RingtoneManager.setActualDefaultRingtoneUri(Context context, RingtoneManager. TYPE_NOTIFICATION , Uri defaultNotificationsound);
}希望能有所帮助。否则,请不要犹豫,尽管问。
https://stackoverflow.com/questions/14305044
复制相似问题