2012-10-26 55 views
0

我做了一個顯示來自AWS服務器的圖像的應用程序。它適用於iPhone 4及更高版本,但是當我在iPhone 5上運行我的應用程序時,應用程序在使用WiFi或3G連接時崩潰。我做了很多測試,告訴我,當我使用S3GetObject ...iPhone 5上的應用程序崩潰

3GetObjectResponse *getObjectResponse = [[AmazonClientManager s3] getObject:getObjectRequest]; 

UIImage *tampon = [[UIImage alloc] initWithData:getObjectResponse.body]; 

應用崩潰,我不知道,如果AWS-SDK與iOS 6或不兼容,請幫助我。

+1

又是什麼崩潰日誌說,返回的值? –

+0

沒有日誌,因爲當我運行的應用程序連接到Mac,但工作正常,但當我執行應用程序的連接WiFi或3g的崩潰=回到主屏幕的iPhone –

+0

@MedReda我幫助維護適用於iOS的AWS SDK和兩者最新版本支持iPhone 5和iOS6。如果你可以在你的代碼片段中包含S3GetObjectRequest的創建,這將會很有幫助,因爲如何創建它可以對響應產生影響。 此外,您可以通過連接設備並轉到Xcode>管理器>設備>您的設備>設備日誌,從墜毀的應用程序獲取日誌。 –

回答

2

根據您other questions之一,看來你仍可以包括一箇舊版本的AWS SDK適用於iOS,其曾與時因爲釋放內置崩潰的問題包含GTMLogger庫。

請確保刪除對以前版本的適用於iOS的AWS開發工具包的任何引用,並更新您的項目框架包含路徑。

可以確認您使用的是最新版本的SDK登錄從

[AmazonSDKUtil userAgentString] 
+0

謝謝鮑勃金尼我在這個論壇上找到了解決方案https://forums.aws.amazon.com/thread.jspa?threadID=100271 –

+0

其解決方案:D => [AmazonLogger turnLoggingOff]; –

+0

@MedReda我很高興你能解決眼前的問題,但我的回答是確保你使用最新版本仍然很重要。確保您使用的是最新版本的SDK。 –

2

看起來您正在使用帶有Grand Central Dispatch的AWS SDK,並在同一線程上調用同步getObject:並更新UI。您需要確保在後臺線程上調用getObject:,並更新主線程上的UI。你的代碼看起來應該像下面這樣:

dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{ 

    for(int i=0;i<ads.count;i++){ 

     NSString *phot =[ads objectAtIndex:i]; 
     NSLog(@"hna%@",phot); 
     S3GetObjectRequest *getObjectRequest = [[S3GetObjectRequest alloc] initWithKey:phot withBucket:@"olfactifPhoto"]; 
     S3GetObjectResponse *getObjectResponse = [[AmazonClientManager s3] getObject:getObjectRequest]; 

     dispatch_async(dispatch_get_main_queue(), ^{ 

      UIImage *tampon = [[UIImage alloc] initWithData:getObjectResponse.body]; 
      UIImageView *tempImageView = [[UIImageView alloc] initWithImage:tampon]; 
      tempImageView.frame = CGRectMake(10,currentXLocation, 300, 310); 

      NSLog(@" il est dans la position %f",tempImageView.frame.origin.y); 
      self.monImage = tempImageView; 

      [scroll addSubview:monImage]; 
     }); 
    } 

}); 
+0

它不起作用我猜加載在iPhone 5崩潰的圖像的速度 –