2013-11-28 94 views
0

我編寫了iOS應用程序(在其他人之間)拍攝照片並將其發送到服務器。爲了達到這種效果,我使用標準動作TakePicture,並在事件OnDidFinishTaking中有我的邏輯。在執行takePicture之後,我會獲得標準的相機應用程序來獲取照片並將其批准到我的應用程序。在批准時,OnDidFinishTaking事件通常會觸發....但當我批准圖片時,有時(30%)應用程序崩潰(完成...被殺害 - 不知道如何調用它)。我在開始OnDidFinishTaking事件時設置了剎車點,並知道在這種情況下,程序甚至不會運行此事件。iOS應用程序在拍照時崩潰

我使用RadStudio XE5更新1. iOS是新版本的iPad 7.0.4。

回答

0

這聽起來像是內存不足的事件。在你的模擬器中,從菜單中選擇「模擬存儲器警告」。連續做2或3次。如果您在處理內存警告時遇到問題,將會「崩潰」您的應用。

如果是這種情況,按照本指南,以減少你的應用程序的內存使用情況:http://www.raywenderlich.com/2696/

你也應該看看這個網頁約內存和性能: https://developer.apple.com/library/ios/documentation/iphone/conceptual/iphoneosprogrammingguide/PerformanceTuning/PerformanceTuning.html

+0

我看看......你說得對。我的工作是減少內存使用情況。我卸載everithing那不再使用,我的應用程序中沒有圖片(而不是第一個屏幕上的一個PNG 128x128)。我的啓動應用程序需要36MB的內存(我可以檢查它的唯一方法是使用Pad-Info應用程序) - 這是相當的我覺得很少,還有很多其他的,畝更大的應用程序工作:( –

+0

我發現,例如。在一張圖片和另一張圖片之間拍攝照片之前切換應用程序有助於(也許某些系統已經完工?),但是您是否知道,如何在Firemonkey中調用此行爲而無需在應用程序之間切換或在應用程序中關閉和操作相同的表單? –

+0

您的應用程序可能因線程問題或多問題問題而崩潰,但就像您的應用程序有很多事情一樣。我需要更多的信息才能夠幫助你。請在回覆前嘗試縮小問題範圍 – portforwardpodcast

0

OK了...我應用程序被構建爲許多不同的形式。每個人都被動態加載和銷燬,但無論我做了什麼,都沒有幫助。 最後,我重建應用程序使用製表符而不是窗體。現在,應用程序在我的iPad中使用的內存幾乎相同(比其他應用程序要少得多,但幸運的是,不會崩潰)。形式。即使採用相同的內存,似乎管理是不同的,它工作得更好。

M.