안녕하세요 저는 현재 AlarmManager로 작업하고 있습니다. 나는 아래 주어진 코드를 작성했다. 코드 당 10 초 후에 AlarmManager가 트리거되어야하지만, 여기서는 알람 관리자가 즉시 트리거합니다. 도와주세요.알람 관리자가 즉시 트리거 됨
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
AlarmManager alarmManager = (AlarmManager)getSystemService(Context.ALARM_SERVICE);
int alarmType = AlarmManager.ELAPSED_REALTIME_WAKEUP;
long timeOrLengthofWait = 10000;
Intent intentToFire = new Intent(this, AlarmReciever.class);
PendingIntent alarmIntent = PendingIntent.getBroadcast(this, 0, intentToFire, 0);
alarmManager.set(alarmType, timeOrLengthofWait, alarmIntent);
}
}
그리고 내 AlarmReciever 클래스 I 이미 매니페스트에 필요한 권한을 추가 한
public class AlarmReciever extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
String phoneNumberReciever="5556";
String message="Alarm Triggered";
SmsManager sms = SmsManager.getDefault();
sms.sendTextMessage(phoneNumberReciever, null, message, null, null);
Toast.makeText(context," A message has been sent", Toast.LENGTH_LONG).show();
Log.d("Alarm ", "Alarm Has been triggered and sms send");
}
}
.
감사합니다. 덕분에 도움이되고 도움이되었습니다. –
약식으로 문서화에 다음과 같이 명시되어 있습니다. "지정한 트리거 시간이 과거이면 경보가 즉시 트리거됩니다." 질문에 제공된 10000의 타임 스탬프는 과거의 날짜를 나타냅니다. 이것이 바로 당신의 경보가 바로 발동 한 이유입니다. https://developer.android.com/training/scheduling/alarms.html#set – androidevil