我知道這個問題已被問了好幾次,但我尋找一個更一般的答案。 我已經開發了iOS 6的應用程序,我在模擬器(Retina 3.5和4英寸)以及iPhone 4設備上進行了測試。 它從來沒有崩潰,但是當我提交的應用程序,以蘋果和他們回答:蘋果拒絕我的應用程序崩潰在iphone 5
我們發現您的應用一經推出在iPhone 5運行iOS 6.1.3墜毀,
綜觀崩潰日誌
我們看到,它在管線164從索引出界,這是有道理的,因爲我有這樣的代碼有崩潰:
我補充說「如果「停止執行,只要indexTimesArray
大於數組的長度並查看發生的原因,但我無法重現該錯誤。我從來沒有像他們那樣得到index out of bounds
... 確實,我沒有在iPhone 5設備上測試它,但我的電腦上有XCode 4.6和iOS 6.1,而且還有iOS 6.1.3的iPhone 4,但蘋果公司的這些人正在讓應用程序崩潰,所以如何重現錯誤呢? 我試圖安裝從TestFlight的應用程序,因爲它安裝它作爲一個全新的應用程序,就像他們在測試時一樣,但仍然沒有錯誤...
如何重現錯誤?這可能是與構建設置有關的問題嗎?
由於
[編輯] 我初始化timesArray的內容中的對象的init方法中,這樣的:
- (id)init{ self = [super init]; df = [[NSDateFormatter alloc] init]; [df setDateFormat:@"yyyy-MM-dd HH:mm"]; rangeDates = [[NSArray alloc]initWithObjects:@"2013-04-11 10:00", @"2013-04-12 10:00", @"2013-04-13 10:00", @"2013-04-14 10:00", nil]; timesArray = [[NSArray alloc]initWithArray:[NSArray arrayWithObjects:@"10:00", @"11:00", @"12:00", @"13:00", @"14:00", @"15:00", @"16:00", @"17:00", @"18:00", @"19:00", @"20:00", @"21:00", @"22:00", nil]]; colorDictio = [[NSDictionary alloc]initWithObjects:[NSArray arrayWithObjects:[UIColor colorWithRed:0.74 green:0.66 blue:0.37 alpha:1.0], [UIColor colorWithRed:0.64 green:0.15 blue:0.11 alpha:1.0], [UIColor colorWithRed:0.313 green:0.65 blue:0.69 alpha:1.0], [UIColor colorWithRed:0.79 green:0.4 blue:0.59 alpha:1.0], [UIColor colorWithRed:0.45 green:0.55 blue:0.53 alpha:1.0], [UIColor colorWithRed:0.14 green:0.27 blue:0.66 alpha:1.0], nil] forKeys:[NSArray arrayWithObjects:@"showers area", @"zinctalks", @"zincnetwork", @"zincshows", @"zinclabs", @"zinczone", nil] ]; return self; }
我面臨與Objective-C中的數組相似的錯誤...我的建議是使用NSMutableArrays或NSArrays。 – mayuur 2013-04-04 08:41:34
你的意思是聲明數組作爲一個屬性? – subharb 2013-04-04 09:06:56
用屬性'@property(nonatomic,retain)NSMutableArray * timesArray;' – mayuur 2013-04-04 09:13:30