2010-07-05 2 views
0

정말 이상한 문제가 있습니다. - 테스터가 3GS에서 문제가 발생했음을보고합니다 (앱이 멈추지 않고 충돌하지 않음).하지만 3G가 아닙니다. 문제를 가정 m :iPhone : 코드가 3G에서 작동하지만 3GS는 작동하지 않음

- (void)applicationDidFinishLaunching:(UIApplication *)application { 
    NSSetUncaughtExceptionHandler(&uncaughtExceptionHandler); 
    [FlurryAPI startSession:@"myflurryapisessionkey"]; 
    [FlurryAPI setSessionReportsOnCloseEnabled:NO]; 

    // set managedObjectContext on TabBarController 
    tabBarController.managedObjectContext = self.managedObjectContext; 

    [window addSubview:tabBarController.view]; 
    [window makeKeyAndVisible]; 

    // check if we have to show a favorite immediately 
    Favorite *startseiteFavorite = [self getStartSeiteFavorite]; 

    if (startseiteFavorite != nil) { 
     [FlurryAPI logEvent:@"favorite found"]; 
     [self showStartseiteFavorite:startseiteFavorite]; 
    } else { 
     [FlurryAPI logEvent:@"no favorite found"]; 
    } 

} 

- (Favorite *) getStartSeiteFavorite { 
    // loading values 
    smart_infoAppDelegate *appDelegate = (smart_infoAppDelegate *)[[UIApplication sharedApplication] delegate]; 
    managedObjectContext = [appDelegate managedObjectContext]; 
    NSFetchRequest *request = [[NSFetchRequest alloc] init]; 
    NSEntityDescription *entity = [NSEntityDescription entityForName:@"Favorite" inManagedObjectContext:managedObjectContext]; 
    [request setEntity:entity]; 

    NSPredicate * predicate; 
    predicate = [NSPredicate predicateWithFormat:@"startseite == 1"]; 
    [request setPredicate:predicate]; 

    NSError *error; 
    NSMutableArray *mutableFetchResults = [[managedObjectContext executeFetchRequest:request error:&error] mutableCopy]; 

    [request release]; 

    Favorite *tempFavorite = [mutableFetchResults count] > 0 ? [mutableFetchResults objectAtIndex:0] : nil; 
    [mutableFetchResults release]; 

    return tempFavorite; 
} 
나는 그런 'startseiteFavorite'의 존재에 따라 탭을 선택에있어서 탭을 선택하고 싶습니다

- 하나가 있다면, 내가 탭 1을 선택을 달리 탭 0 .. 누구나 3G에서 문제없이 작동하지만 3GS에서는 작동하지 않는 문제 또는 이유를 찾은 사람이 있습니까?

고마워,

스테판

답변

0

그것은 당신이 실제로 문제가 자신을 복제하지 않은 경우이 같은 문제를 알아 내기 위해 꽤 힘든? 3GS에서 문제를 복제 할 수 없습니까? 문제가 발생하는이라고 가정하면 이라고 가정합니다. 이것이 최선의 방법은 아닙니다.

테스트 할 3GS가 없습니까? 그렇지 않다면, 나는 그것을 테스트하고 디버거에서 직접적으로 문제의 최하점을 얻으 러 갈 것이다. 응용 프로그램에서 지원하는 하드웨어가 없어도 응용 프로그램을 제공해서는 안됩니다 (수행 중인지 확실하지 않지만 질문의 소리에서 가능하다고 생각합니다).

테스터에게 에게 정확히에게 문의하십시오.

+0

물론이 방법으로 앱을 배송하지 않습니다. 이 코드가 문제가 발생하는 코드라고 확신하지만 왜 볼 수 없습니다. 그리고 3G에서 모든 것을 시도했습니다. 단지 거기에서 작동합니다. 그러나 3GS를 사용하는 두 명의 테스터는 시작하는 동안 매달린 앱을보고합니다. 이제 힌트를 구하고 있습니다. 3G와 3GS의 차이점은 무엇이며, 코드가 잘못되었을 수 있습니다. – swalkner

+0

디버거로 테스트 할 3GS가 있는지 여부는 밝히지 않았습니다. 문제가 3GS에있는 경우 문제가 3G와 관련이 있는지 확인하려고 시도 할 필요가 없습니다. 친구가 OpenGL과 관련된 3GS 문제를 디버깅하는 것을 도왔습니다. 그저 3G로 머리를 긁적 인 시간을 보냈습니다. 내 3GS를 연결하고 디버거를 실행하고 1 분 이내에 버그가 부숴 지도록했습니다. 문제가 3GS에있는 경우 3GS를 받으십시오. –

+0

괜찮습니다. 고맙습니다. 디버깅 할 3GS를 얻게 될 것입니다. 그러나 3GS와 3G에서 코드가 어떻게 다르게 작동 할 수 있습니까? 단지 메모리 차이 이상입니까? – swalkner

관련 문제