簡體   English   中英

在什么情況下調用了application:didFinishLaunchingWithOptions :?

[英]In what case that application:didFinishLaunchingWithOptions: been called?

我的應用程序適用於Voip,它可以在后台運行。 當它在后台長時間運行時,調用了application:didFinishLaunchingWithOptions:方法,然后我的應用程序停止運行。我想知道:為什么voip應用程序在后台運行,所以調用了application:didFinishLaunchingWithOptions方法? 如果調用了此方法,我應該怎么做才能使我的應用程序繼續運行? 有人可以幫忙嗎?謝謝...

我正在猜測,但是我認為您的應用程序可能會收到內存警告。 並且application:didFinishLaunchingWithOptions:對於應用程序的每次運行僅調用一次。 只需嘗試通過在應用程序委托中重寫- (void)applicationDidReceiveMemoryWarning:(UIApplication *)application方法即可進行調查。 那可能是崩潰的原因。

VoIP應用程序在電話啟動時啟動。 啟動時,您會在電話控制台中看到您的應用程序正在啟動。 如果您多次調用對application:didFinishLaunchingWithOptions的日志調用,則您的應用程序可能崩潰了,或者手機正在殺死它以獲取內存。 如果您已在plist中注冊為voip應用程序,則可以在applicationDidEnterBackground中調用setKeepAliveTimeout:handler:以每10分鍾(600秒)運行一次SIP注冊。 順便說一句,不要試圖保持application:didFinishLaunchingWithOptions運行; 我相信它會在iOS殺死您的應用程序之前達到5秒。

查看有關開發VoIP應用程序的提示: https : //developer.apple.com/library/ios/#documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/AdvancedAppTricks/AdvancedAppTricks.html

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM