điều này nghe có vẻ NOOB thật! Tôi muốn kiểm tra xem đó có phải là lần thứ hai người dùng vào ứng dụng của tôi hay không, vì vậy để giữ số lần chạy mà tôi đang sử dụng NSUserDefaults. Tôi đã thực hiện đoạn mã sau vào tôi rootViewController's viewDidLoadphương pháp:
NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
NSLog(@"hello %ld", (long)[userDefaults integerForKey:@"runCount"]);
if ([userDefaults integerForKey:@"runCount"] != 1) {
//not the 2nd run
[userDefaults setInteger:1 forKey:@"runCount"];
NSLog(@"not 2nd run");
} else {
//second run or more
NSLog(@"2nd run");
}
[userDefaults synchronize];
mọi thứ hoạt động tốt, nhưng vấn đề là khi tôi gỡ cài đặt (xóa và cài đặt lại) ứng dụng theo đây và ở đây , dữ liệu sẽ được xóa, nhưng nó không được và sau khi cài đặt lại ứng dụng, dữ liệu trước đó vẫn hiển thị. Tôi đang chạy ứng dụng của mình trên trình mô phỏng iOS bằng xCode6-beta và nhắm mục tiêu ứng dụng trên iOS 8
NSMutableArrayđược lưu dưới dạng một NSArrayvà việc thay đổi nó đã khiến ứng dụng của tôi gặp sự cố. .. Tôi khuyên bạn nên lưu một NSArrayvà khi bạn muốn sử dụng nó sau này hãy truyền nó sang NSMutableArraysử dụng [NSMutableArray arrayWithArray:array];. Tôi hy vọng rằng sẽ giúp.