30 분마다 알림/알림을 호출해야하는 애플리케이션이 있습니다.브로드 캐스트 수신기 및 호출 서버 기능 및 팝업
나는 응용 프로그램이 닫혀있는 경우
1과 같은 기능, 그것은, 응용 프로그램을 열고 대화 상자를 호출합니다. 클릭하면 serverFunction이 호출되고 MainActivity가 실행 중이면 해당 UI가 업데이트됩니다.
2 앱이 이미 열려 있으면 대화 상자를 엽니 다. 클릭하면 serverFunction이 호출됩니다. MainActivity가 맨 위에있을 수도 있고 그렇지 않을 수도 있기 때문에 UI를 업데이트하거나하지 마세요. 문맥 활동 상황이 아니므로 내 MainActivity.class 여기
private void callNotification()
{
AlarmManager service = (AlarmManager) getSystemService(Context.ALARM_SERVICE);
Intent i = new Intent(this, AlarmReceiver.class);
PendingIntent pending = PendingIntent.getBroadcast(this, 0, i,PendingIntent.FLAG_CANCEL_CURRENT);
Calendar time = Calendar.getInstance();
time.setTimeInMillis(System.currentTimeMillis());
time.add(Calendar.SECOND, Constants.TIME_CONSTANT);
service.set(AlarmManager.RTC_WAKEUP ,time.getTimeInMillis(), pending);
}
public class AlarmReceiver extends BroadcastReceiver
{
@Override
public void onReceive(final Context context, Intent intent)
{
}
}
문제에
는, 나는 onReceive에서 대화 상자를 넣을 수 없습니다. 어떻게하면 응용 프로그램이 열립니다, 어떻게 지금 위의 기능을 구현하는 가정합니다. 당신이 당신의 활동 당신이 대화 상자를 열 수 있습니다에 일단
Intent i = new Intent(context, AlertActivity.class);
i.setFlags
startActivity(i);
: 당신의 onReceive 곳이에
알림 표시 줄을 사용하는 것이 좋습니다. – Flynn81
예 첫 번째 경우에는 알림을 사용하지만 사용자가 앱 안에있을 때 수신자가 메시지를받는 경우 어떻게 사용자가 응용 프로그램의 모든 활동을 수행 할 수 있다고 가정하고 함수를 호출 할 수 있습니까? iPhone 개발에 대한 아이디어가 있다면 AppDelegate에서이 작업을 수행 할 수 있습니다. –