我有一個基於導航的應用程序。按主視圖上的按鈕,然後將新視圖推送到導航控制器。所有非常基本的東西。asihttprequest崩潰我的應用程序
加載新視圖時,我執行一個ASIHTTPRequest來獲取一些json數據,這是一個圖像url的列表。 然後我做一個for循環,創建一堆ASIHTTPRequests,將它們添加到隊列中,然後運行隊列。
但是,如果在隊列結束之前點擊後退按鈕,應用程序崩潰,此應用程序會顯示房屋,並可以說您選擇了錯誤的房屋,在顯示任何照片之前快速點擊,併發生撞擊。
此線程http://groups.google.com/group/asihttprequest/browse_thread/thread/3d4815198aa889b9解釋我的問題真的很好,除非我取消所有視圖請求卸載,將委託設置爲零並釋放隊列。
我仍然崩潰。如果我使用3G,每次都會崩潰,但在WiFi上真的很難讓它崩潰,但相當可行。
在幾乎80%的情況下,調試器跳轉到該行ASIHTTPRequest.m
(void)requestReceivedResponseHeaders:(NSMutableDictionary *)newResponseHeaders {
if ([self error] || [self mainRequest]) { return; }
--> if (delegate && [delegate respondsToSelector:didReceiveResponseHeadersSelector]) {
許多許多情況下,跳轉到:
(void)requestReceivedResponseHeaders:(NSMutableDictionary *)newResponseHeaders {
if ([self error] || [self mainRequest]) { return; }
---> if (delegate && [delegate respondsToSelector:didReceiveResponseHeadersSelector]) {
廣告的情況下,極少數是去我主循環
int main(int argc, char *argv[]) {
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
--> int retVal = UIApplicationMain(argc, argv, nil, nil); with SIGBART error [pool release]; return retVal;
我使用MBP和MacPro,最新的OS X,Xcode 4.0.2和我測試所有除原裝iPhone之外的其他設備。
我真的不想重寫我的整個應用程序,但是還有什麼與ASIHTTPRequest相比?
很好的回答,它的工作 – KsK 2013-08-26 07:27:31
使用第二種方法實際上有效。謝謝。我被困在這個上太久了。乾杯。 – 2014-02-11 09:23:51