안드로이드 알람 제작
5303 단어 안드로이드시스템 브로드캐스트
private AlarmManager alarmManager;
//
alarmManager = (AlarmManager) getSystemService(Context.ALARM_SERVICE);
public void setAlarmOne(View view){
//
Calendar calendar=Calendar.getInstance();
int hour=calendar.get(Calendar.HOUR_OF_DAY);
int minute=calendar.get(Calendar.MINUTE);
//01.
TimePickerDialog timePickerDialog=new TimePickerDialog(this, new TimePickerDialog.OnTimeSetListener() {
@Override
public void onTimeSet(TimePicker timePicker, int i, int i1) {
Calendar c=Calendar.getInstance();
c.set(Calendar.HOUR_OF_DAY,i);
c.set(Calendar.MINUTE,i1);
//02.
//03.
//04. ,
Intent intent=new Intent();
intent.setAction("com.example.g150831_android28_alarm_notification.RING");
PendingIntent pendingIntent=PendingIntent.getBroadcast(MainActivity.this,0x101,intent,0);
alarmManager.set(AlarmManager.RTC_WAKEUP,c.getTimeInMillis(),pendingIntent);
}
},hour,minute,true);
timePickerDialog.show();
}
public void cancelAlarmCycle(View view){
alarmManager.cancel(pendingIntent);
}
extends BroadcastReceiver를 통해 브로드캐스트 전송을 위한 새로운 activity 클래스RingReceived
@Override
public void onReceive(Context context, Intent intent) {
//com.example.g150831_android28_alarm_notification if("com.example.g150831_android28_alarm_notification.RING".equals(intent.getAction())){
// intent Flag
Log.i("test"," ");
// Activity
Intent intent1=new Intent(context,RingActivity.class);
// Intent Flag
intent1.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
//Intent :ComponementName extra Action Data Categlay( ) Flag
context.startActivity(intent1);
}
새 Activity를 만듭니다. 시간이 되면 이 Activity로 넘어가서 동작을 수행합니다.
//
mediaPlayer = MediaPlayer.create(this, R.raw.duo);
//
mediaPlayer.start();
// mediaPlayer
public void close(View view){
mediaPlayer.stop();
finish();
}
androidmanifest에 있어야 합니다.xml에서 방송의 전송//android:name="com을 설정합니다.example.g150831_android28_alarm_notification.RING"은 브로드캐스트의 activaty와 일치해야 합니다.
<receiver android:name=".RingReceived">
<intent-filter
>
<action android:name="com.example.g150831_android28_alarm_notification.RING" >action>
intent-filter>
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
VisualStudio에서 Ant를 사용하여 Native APK를 만듭니다.※2019/11/13 Gradle판의 기사도 올랐습니다. 자세한 내용은 을 참조하십시오. CEDEC2019의 " "이라는 세션에서 VisualStudio에서도 Gradle을 사용한 Native 앱을 만들 수 있다는 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.