2016-08-23 115 views
0

我对android开发感兴趣,我想知道是否有可能在特定的一天在特定的时间在Android的特定时间播放一些歌曲,以及如何去做。谢谢!AlarmClock只有一次,每年在特定的一天在特定的时间

public class AlarmActivity extends Activity { 

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_alarm); 

    Intent myIntent = new Intent(AlarmActivity.this , MyBroadcastReceiver.class); 
    AlarmManager alarmManager = (AlarmManager)getSystemService(ALARM_SERVICE); 
    PendingIntent pendingIntent = PendingIntent.getService(AlarmActivity.this, 0, myIntent, 0); 
    Calendar cal = Calendar.getInstance(); 
    cal.set(Calendar.HOUR_OF_DAY, 02); 
    cal.set(Calendar.MINUTE, 18); 
    cal.set(Calendar.SECOND, 55); 
    alarmManager.set(AlarmManager.RTC_WAKEUP, cal.getTimeInMillis(), pendingIntent); 
    alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, cal.getTimeInMillis(), 60000 , pendingIntent); //set repeating every year 


} 

}

广播:

public class MyBroadcastReceiver extends BroadcastReceiver 
{ 
    @Override 
    public void onReceive(Context context, Intent intent) { 
     Toast.makeText(context, "Broadcast Received.", Toast.LENGTH_LONG).show(); 
     // Vibrate the mobile phone 
     Vibrator vibrator = (Vibrator) context.getSystemService(Context.VIBRATOR_SERVICE); 
     vibrator.vibrate(2000); 
    } 
} 
+0

这将帮助你 - '的https:// developer.android.com /引导/ index.html'和'https://developer.android.com/reference/android/app/AlarmManager.html' –

回答

0
Intent myIntent = new Intent(MainActivity.this , NotifyService.class);  
AlarmManager alarmManager = (AlarmManager)getSystemService(ALARM_SERVICE); 
pendingIntent = PendingIntent.getService(ThisApp.this, 0, myIntent, 0); 
Calendar cal = Calendar.getInstance(); 
cal.set(Calendar.HOUR_OF_DAY, YOUR_HOUR); 
cal.set(Calendar.MINUTE, 00); 
cal.set(Calendar.SECOND, 00); 
alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, cal.getTimeInMillis(), 31556952000 , pendingIntent); //set repeating every year 

希望这有助于..

+0

谢谢,但你能告诉我我做错了什么吗?请参阅编辑的文章 – Mifo

+0

对不起我的错,这是工作:) – Mifo

+0

感谢兄弟.. upvote;) –

0

检查official documentation学习如何设置闹钟。

至于你的具体目标,你可以在当前的一个响铃时为下一年设置一个新的警报。

相关问题