2012-05-23 60 views
0

我使用谷歌Analytics(分析)與IOS,我想盡快viewDidAppear稱爲更新自定義變量的數量,這裏是我的代碼。谷歌分析自定義變量不工作的罰款與iOS

for (int i = 0 ; i < [KeyArray count]; i++) { 
     error = nil; 
     if ([KeyArray objectAtIndex:i] == @"Carat") { 
      NSDictionary *caratDict = [selectedDiamondsFilter objectForKey:[KeyArray objectAtIndex:i]]; 
      NSString *value = [NSString stringWithFormat:@"Carat From %@ to %@",[caratDict objectForKey:@"caratfrom"],[caratDict objectForKey:@"caratto"]]; 
      NSLog(@"%@",value); 
      if (![[GANTracker sharedTracker] setCustomVariableAtIndex:1 name:@"Carat" value:value scope:kGANVisitorScope withError:&error]) { 
       NSLog(@"carat =%@",error); 
      } 

      if(![[GANTracker sharedTracker] trackEvent:@"Diamond Sort" action:@"Sort selected" label:@"sort" value:-1 withError:nil]){ 
       NSLog(@"Not able to track for Diamonds Section"); 
      } 
      [[GANTracker sharedTracker] dispatch]; 

     } 
     else if ([KeyArray objectAtIndex:i] == @"Clarity") { 
      NSDictionary *caratDict = [selectedDiamondsFilter objectForKey:[KeyArray objectAtIndex:i]]; 
      NSString *value = [NSString stringWithFormat:@"Clarity From %@ to %@",[caratDict objectForKey:@"clarityfrom"],[caratDict objectForKey:@"clarityto"]]; 
      NSLog(@"%@",value); 
      [[GANTracker sharedTracker] setCustomVariableAtIndex:1 name:@"Clarity" value:value scope:kGANVisitorScope withError:&error]; 
      if(![[GANTracker sharedTracker] trackEvent:@"Diamond Sort" action:@"Sort selected" label:@"sort" value:-1 withError:nil]){ 
       NSLog(@"Not able to track for Diamonds Section"); 
      } 

     } 
     else if ([KeyArray objectAtIndex:i] == @"Color") { 
      NSDictionary *caratDict = [selectedDiamondsFilter objectForKey:[KeyArray objectAtIndex:i]]; 
      NSString *value = [NSString stringWithFormat:@"Color From %@ to %@",[caratDict objectForKey:@"colorfrom"],[caratDict objectForKey:@"colorto"]]; 
      NSLog(@"%@",value); 
      [[GANTracker sharedTracker] setCustomVariableAtIndex:1 name:@"Color" value:value scope:kGANVisitorScope withError:&error]; 
      if(![[GANTracker sharedTracker] trackEvent:@"Diamond Sort" action:@"Sort selected" label:@"sort" value:-1 withError:nil]){ 
       NSLog(@"Not able to track for Diamonds Section"); 
      } 

     } 
     else if ([KeyArray objectAtIndex:i] == @"Price") { 
      NSDictionary *caratDict = [selectedDiamondsFilter objectForKey:[KeyArray objectAtIndex:i]]; 
      NSString *value = [NSString stringWithFormat:@"Price From %@ to %@",[caratDict objectForKey:@"pricefrom"],[caratDict objectForKey:@"priceto"]]; 
      NSLog(@"%@",value); 
      [[GANTracker sharedTracker] setCustomVariableAtIndex:1 name:@"Price" value:value scope:kGANVisitorScope withError:&error]; 
      if(![[GANTracker sharedTracker] trackEvent:@"Diamond Sort" action:@"Sort selected" label:@"sort" value:-1 withError:nil]){ 
       NSLog(@"Not able to track for Diamonds Section"); 
      } 

     } 
     else if ([KeyArray objectAtIndex:i] == @"Shape") { 
      NSArray *shapes = [selectedDiamondsFilter objectForKey:[KeyArray objectAtIndex:i]]; 
      for (int i = 0; i<[shapes count]; i++) { 
       [[GANTracker sharedTracker] setCustomVariableAtIndex:1 name:@"Shape" value:[shapes objectAtIndex:i] scope:kGANVisitorScope withError:&error]; 
       NSLog(@"%@",[shapes objectAtIndex:i]); 
       if(![[GANTracker sharedTracker] trackEvent:@"Diamond Sort" action:@"Sort selected" label:@"sort" value:-1 withError:nil]){ 
        NSLog(@"Not able to track for Diamonds Section"); 
       } 

      } 
      NSLog(@"%@",shapes); 

     } 
     else if ([KeyArray objectAtIndex:i] == @"Type") { 
      NSArray *types = [selectedDiamondsFilter objectForKey:[KeyArray objectAtIndex:i]]; 
      for (int i = 0; i<[types count]; i++) { 
       NSLog(@"%@",[types objectAtIndex:i]); 
       [[GANTracker sharedTracker] setCustomVariableAtIndex:1 name:@"Type" value:[types objectAtIndex:i] scope:kGANVisitorScope withError:&error]; 
       if(![[GANTracker sharedTracker] trackEvent:@"Diamond Sort" action:@"Sort selected" label:@"sort" value:-1 withError:nil]){ 
        NSLog(@"Not able to track for Diamonds Section"); 
       }     
      } 

     } 

     [[GANTracker sharedTracker] dispatch]; 

     if (error != nil) { 
      NSLog(@"Custom Variable HAS ERROR"); 
     } 

     NSLog(@"%@",selectedDiamondsFilter); 
    } 

但問題是,它有時更新「鍵入」有時「克拉」,有時是別的什麼。

請幫助我在哪裏,我米犯錯誤。

在此先感謝

回答

0

您的比較指針,不好。

這些都需要更改爲:

if([KeyArray objectAtIndex:i] isEqualToString:@"Carat"]]) 
相關問題