đ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 viewDidLoad
phươ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 NSArray
và 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 NSArray
và khi bạn muốn sử dụng nó sau này hãy truyền nó sang NSMutableArray
sử dụng [NSMutableArray arrayWithArray:array];
. Tôi hy vọng rằng sẽ giúp.