第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

applicationWillEnterForeground與applicationDid

applicationWillEnterForeground與applicationDid

子衿沉夜 2019-12-07 14:29:20
當(dāng)應(yīng)用程序從后臺(tái)喚醒并且您希望它準(zhǔn)備好處于活動(dòng)狀態(tài)時(shí),哪個(gè)合適的委托實(shí)現(xiàn)?applicationWillEnterForeground與applicationDidBecomeActive-有什么區(qū)別?當(dāng)應(yīng)用程序要進(jìn)入睡眠狀態(tài)并且您想為其準(zhǔn)備清理和保存數(shù)據(jù)時(shí),哪個(gè)合適的委托實(shí)現(xiàn)?applicationWillResignActive與applicationDidEnterBackground-有什么區(qū)別?另外,我注意到當(dāng)傳入的SMS或呼叫進(jìn)入時(shí),會(huì)調(diào)用applicationWillResignActive,但是用戶選擇單擊“確定”并繼續(xù)。我不希望我的應(yīng)用在這些情況下采取任何措施。我只希望它繼續(xù)運(yùn)行而無(wú)需任何中間清理,因?yàn)橛脩魶](méi)有退出該應(yīng)用程序。因此,我認(rèn)為僅在applicationDidEnterBackground中進(jìn)行清理工作更有意義。我希望您能就最佳做法提供寶貴的意見(jiàn),然后再選擇要實(shí)施的代表來(lái)喚醒和入睡,以及考慮諸如SMS /呼叫中斷等事件。
查看完整描述

3 回答

?
縹緲止盈

TA貢獻(xiàn)2041條經(jīng)驗(yàn) 獲得超4個(gè)贊

喚醒時(shí)即重新啟動(dòng)應(yīng)用程序(通過(guò)跳板,應(yīng)用程序切換或URL)applicationWillEnterForeground:。在應(yīng)用程序準(zhǔn)備就緒后,僅在后臺(tái)運(yùn)行后才執(zhí)行一次,而applicationDidBecomeActive:在啟動(dòng)后可能會(huì)被多次調(diào)用。這applicationWillEnterForeground:對(duì)于重新啟動(dòng)后只需進(jìn)行一次設(shè)置的理想選擇。

applicationWillEnterForeground: 叫做:

  • 重新啟動(dòng)應(yīng)用程序時(shí)

  • 之前 applicationDidBecomeActive:

applicationDidBecomeActive: 叫做:

  • 應(yīng)用首次啟動(dòng)后的時(shí)間 application:didFinishLaunchingWithOptions:

  • applicationWillEnterForeground:如果沒(méi)有URL處理。

  • 之后application:handleOpenURL:被稱為。

  • 之后applicationWillResignActive:,如果用戶忽略中斷就像一個(gè)電話或短信。

applicationWillResignActive: 叫做:

  • 當(dāng)有電話之類的干擾時(shí)。

    • 如果用戶接聽(tīng)電話applicationDidEnterBackground:被呼叫。

    • 如果用戶忽略呼叫applicationDidBecomeActive:被調(diào)用。

  • 當(dāng)按下主屏幕按鈕或用戶切換應(yīng)用程序時(shí)。

  • 文檔說(shuō)你應(yīng)該

    • 暫停正在進(jìn)行的任務(wù)

    • 禁用計(jì)時(shí)器

    • 暫停游戲

    • 降低OpenGL幀率

applicationDidEnterBackground: 叫做:

  • 后 applicationWillResignActive:

  • 文檔說(shuō)您應(yīng)該:

    • 釋放共享資源

    • 保存用戶數(shù)據(jù)

    • 使計(jì)時(shí)器無(wú)效

    • 保存應(yīng)用程序狀態(tài),以便在應(yīng)用程序終止時(shí)可以將其恢復(fù)。

    • 禁用UI更新

  • 您有5秒的時(shí)間做您需要做的事情并返回方法

    • 如果您未在約5秒鐘內(nèi)返回,則該應(yīng)用程序?qū)⒔K止。

    • 您可以要求更多時(shí)間 beginBackgroundTaskWithExpirationHandler:


查看完整回答
反對(duì) 回復(fù) 2019-12-07
?
鴻蒙傳說(shuō)

TA貢獻(xiàn)1865條經(jīng)驗(yàn) 獲得超7個(gè)贊

管理應(yīng)用程序的生命周期有助于解決您的問(wèn)題。有關(guān)快速概念,您可以參閱該文檔中的圖。您還可以從XCode向?qū)傻拇a中讀取注釋。列出如下:


- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions

{

    // Override point for customization after application launch.

    return YES;

}


- (void)applicationWillResignActive:(UIApplication *)application

{

    /*

     Sent when the application is about to move from active to inactive state. 

     This can occur for certain types of temporary interruptions (such as an 

     incoming phone call or SMS message) or when the user quits the application 

     and it begins the transition to the background state.

     Use this method to pause ongoing tasks, disable timers, and throttle down 

     OpenGL ES frame rates. Games should use this method to pause the game.

     */

}


- (void)applicationDidEnterBackground:(UIApplication *)application

{

    /*

     Use this method to release shared resources, save user data, invalidate 

     timers, and store enough application state information to restore your 

     application to its current state in case it is terminated later. 

     If your application supports background execution, this method is called 

     instead of applicationWillTerminate: when the user quits.

     */

}


- (void)applicationWillEnterForeground:(UIApplication *)application

{

    /*

     Called as part of the transition from the background to the active state; 

     here you can undo many of the changes made on entering the background.

     */

}


- (void)applicationDidBecomeActive:(UIApplication *)application

{

    /*

     Restart any tasks that were paused (or not yet started) while the 

     application was inactive. If the application was previously in the 

     background, optionally refresh the user interface.

     */

}


- (void)applicationWillTerminate:(UIApplication *)application

{

    /*

     Called when the application is about to terminate.

     Save data if appropriate.

     See also applicationDidEnterBackground:.

     */

}

有關(guān)更多詳細(xì)說(shuō)明,請(qǐng)參閱UIApplicationDelegate的官方文檔。


查看完整回答
反對(duì) 回復(fù) 2019-12-07
?
絕地?zé)o雙

TA貢獻(xiàn)1946條經(jīng)驗(yàn) 獲得超4個(gè)贊

我仍然對(duì)Dano的回答有些困惑,因此我做了一些測(cè)試以獲取某些情況下的事件流以供參考,但是它對(duì)您也可能有用。這適用UIApplicationExitsOnSuspend于不在info.plist中使用的應(yīng)用。這是在iOS 8模擬器上進(jìn)行的,并已通過(guò)iOS 7設(shè)備確認(rèn)。請(qǐng)?jiān)廥amarin的事件處理程序名稱。它們非常相似。


從非運(yùn)行狀態(tài)進(jìn)行的初始啟動(dòng)和所有后續(xù)啟動(dòng):

完成啟動(dòng)


激活


中斷(電話,頂部向下滑動(dòng),底部向上滑動(dòng)):

主頁(yè)按鈕雙擊列出不活動(dòng)的應(yīng)用程序,然后重新選擇我們的應(yīng)用程序:

OnResignActivation


激活


主頁(yè)按鈕連按兩次列出不活動(dòng)的應(yīng)用程序,選擇另一個(gè)應(yīng)用程序,然后重新啟動(dòng)我們的應(yīng)用程序:

按下主頁(yè)按鈕,然后重新啟動(dòng):

鎖定(開/關(guān)按鈕),然后解鎖:

OnResignActivation


DidEnterBackground


進(jìn)入前景


激活


雙擊主屏幕按鈕,然后終止我們的應(yīng)用程序:(隨后的重新啟動(dòng)是第一種情況)

OnResignActivation


DidEnterBackground


DidEnterBackground(僅限iOS 7?)


是的,DidEnterBackground在iOS7設(shè)備上被兩次調(diào)用。兩次UIApplication狀態(tài)均為Background。但是,iOS 8模擬器沒(méi)有。這需要在iO


查看完整回答
反對(duì) 回復(fù) 2019-12-07
  • 3 回答
  • 0 關(guān)注
  • 1789 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)