簡體   English   中英

didReceiveMemoryWarning功能:應用程序可以做什么

[英]didReceiveMemoryWarning capabilities: how much could app do

好吧,我想知道應用程序收到內存警告時的應用程序“功能”。

- (void)applicationDidReceiveMemoryWarning:(UIApplication *)application {
    DDLogVerbose(@"applicationDidReceiveMemoryWarning");
    [self executeTasks];
}

可以建立藍牙連接嗎? [central connectPeripheral:perihperal options:nil]
可以掃描藍牙外圍設備嗎? (掃描從此時開始)
可以執行哪些后台任務?

我的擔憂:

我在該applicationDidReceiveMemoryWarning處理程序中放置了establishConnections代碼。 此代碼嘗試通過已知的uid( [central connectPeripheral:perihperal options:nil] )建立與外圍設備的連接。 我認為此功能可能會受到限制,應用會被拒絕。

UPD:

我對核心藍牙的長期使用是否正確?

    - (void)applicationDidReceiveMemoryWarning:(UIApplication *)application;      // try to clean up as much memory as possible. next step is to terminate app

因此,如果后台服務將終止,則可以在didReceiveMemoryWarning放置“建立連接”代碼,以防止連接丟失。 在該系統終止服務並注意這些連接后,將其作為“當設備出現在附近時使我的服務從睡眠中恢復的事件”

這里有幾個問題。 我只能先回答。

applicationDidReceiveMemoryWarning就是這樣,僅此而已:操作系統發出的一條消息,指出可用內存不足。 您可以根據自己的需要做任何事情,或者什么都不做。 如果需要,可以分配一百萬個整數的數組。

但是,當操作系統無法再為您的應用程序分配所需的內存時,您的應用程序將被終止。 內存警告只是在發生這種情況之前得到的好處,理想情況下,您可以采取一些措施來釋放內存。

暫無
暫無

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

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