2012-09-03 134 views
0

在我的應用程序中,我使用了報警功能。它的工作正常,但當我在模擬器測試通過彈出框通知警報。在真實設備它只是作爲通知在狀態欄而不是彈出框。彈出警報框不顯示?

我正在尋找實際設備中的彈出框。我不確定我在這裏做錯了什麼?

我使用此代碼爲我的報警

[[UIApplication sharedApplication] cancelAllLocalNotifications]; 

UILocalNotification *localNotification = [[UILocalNotification alloc] init]; 

localNotification.fireDate = date; 

localNotification.timeZone = [NSTimeZone defaultTimeZone]; 
localNotification.alertBody = alarmMessage; 
localNotification.alertAction = NSLocalizedString(@"View", nil); 
localNotification.repeatInterval = NSDayCalendarUnit; 

/* Here we set notification sound and badge on the app's icon "-1" 
means that number indicator on the badge will be decreased by one 
- so there will be no badge on the icon */ 


NSString *ringtonename = [lblRingToneName text]; 
NSString *extension = @".caf"; 

NSString *ringtone = [[NSString alloc]initWithFormat:@"%@%@", ringtonename, extension]; 

localNotification.soundName = ringtone; 
localNotification.applicationIconBadgeNumber = -1; 

[[UIApplication sharedApplication] scheduleLocalNotification:localNotification];  

感謝您的幫助球員

+0

hi是你的代碼localNotification.repeatInterval = NSDayCalendarUnit;工作正常....? – Rajneesh071

+0

是的,這是工作罰款Rajneesh – GoCrazy

+0

我也在工作這樣的類型的應用程序....但是,當我登錄火災日期其顯示不同的日期,但本地noti來完美的時間...爲什麼這個表演差異日期日誌? – Rajneesh071

回答

1

如果設備被鎖定,將顯示爲彈出框通知,如果一個應用程序正在運行的通知會顯示在狀態欄中,沒有關於您的代碼。

+0

謝謝Veelian ..那真的很簡單.. + 1 – GoCrazy

+0

是否可以啓用當用戶第一次安裝應用程序時。 – GoCrazy

+0

@Vino首次安裝?你的意思是第一次打開應用程序?您可以將一個變量保存在一個文件中,然後在打開它後更改該值。 – Mil0R3

1

當UILocalNotification被激發,有3種可能性:

  • 您的應用程序在後臺運行或關閉:您的本地通知將根據用戶定義的設置出現:它可能顯示爲一個橫幅,作爲UIAlertView,或根本不出現。

  • 您的應用程序在前臺運行:您可以收到,在你的AppDelegate類,用下面的方法的任何本地通知:

    - (void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification

  • 設備被鎖定:該設備將顯示一個(或者如果用戶定義如此則不會)

+0

感謝您的回答..當用戶首次安裝應用程序時,可以啓用UIAlertView .. – GoCrazy

+0

不,您無法使用用戶的通知設置進行遊戲。 –

+0

噢好的,謝謝..只是一個簡單的問題..如果用戶在打電話..如果警報得到通知,我可以減少警報聲到10秒..這可能嗎? – GoCrazy