2012-06-20 6 views
-2

가능한 중복 :
I wanna make an android app using eclipse타이머

나는 응용 프로그램이 3 일 이상 사용하지 않은 경우 사용자에게 경고합니다 이클립스를 사용하여 안드로이드 응용 프로그램을 만들고 싶어 그게 가능하다고 생각하니?

그것의 더 많은 응용 프로그램이 3 일 이상 열리지 않은 사용자에게 경고를 표시합니다 응용 프로그램 내부 타이머가있다. 메신저 도움을 요청하는 이유는 그것을 수행하는 방법을 잘 모릅니다

, 즉.

+0

당신은 배경에있는 모든 시간을 실행하는 서비스를해야합니다. – m0skit0

+0

하지만 어떻게 시작합니까, 아니면 시작하나요? – Vintaga

+2

@ m0skit0 아니 ... 알람 관리기 (세트 + 취소) + 알림 – Selvin

답변

2

사용 AlarmManager. http://developer.android.com/reference/android/app/AlarmManager.html

"응용 프로그램이 현재 실행되지 않아도 특정 시간에 응용 프로그램 코드를 실행하려는 경우를위한 것입니다."

3 일 후 set 알림을 사용할 수 있지만 앱을 사용할 때마다 cancel 메서드를 사용하십시오.

행운을 빈다.

+0

코드는 단 한 줄이거나 전체 클래스와 비슷합니까? – Vintaga

+0

@Vintaga 아니, 꽤 짧습니다. 문서에 명시된대로'Context.getSystemService (Context.ALARM_SERVICE) '를 사용하여'AlarmManager'의 인스턴스를 얻으십시오. 그런 다음 알림 'PendingIntent'을 만드십시오 : http://www.vogella.com/articles/AndroidNotifications/article.html. 그런 다음 관리자를 설정하고 앱이 열리면 'AlarmManager'를 다시 검색하고'cancel' 메소드를 사용하여 앱을 취소하십시오. – eboix

+0

코드에 대한 Arun George의 대답을 참조하십시오. – eboix

1

이 코드는 당신을 도울 수 있습니다

AlarmManager alarmMgr = (AlarmManager)context.getSystemService(Context.ALARM_SERVICE); 
    Intent intent = new Intent(context, YourReceiverClass.class); 
    PendingIntent pendingIntent = PendingIntent.getBroadcast(context, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT); 
    Calendar time = Calendar.getInstance(); 
    time.setTimeInMillis(System.currentTimeMillis()); 
    time.add(Calendar.SECOND, timeoutInSeconds); 
    alarmMgr.set(AlarmManager.RTC_WAKEUP, time.getTimeInMillis(),pendingIntent);