37 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			Mathematica
		
	
	
	
		
		
			
		
	
	
			37 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			Mathematica
		
	
	
	
| 
								 | 
							
								#import "TDKeychainHelper.h"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#if __has_include(<ThinkingDataCore/TDKeychainManager.h>)
							 | 
						||
| 
								 | 
							
								#import <ThinkingDataCore/TDKeychainManager.h>
							 | 
						||
| 
								 | 
							
								#else
							 | 
						||
| 
								 | 
							
								#import "TDKeychainManager.h"
							 | 
						||
| 
								 | 
							
								#endif
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								static NSString * const TDInstallTimesOld = @"com.thinkingddata.analytics.installtimes";
							 | 
						||
| 
								 | 
							
								static NSString * const TDInstallTimesNew = @"com.thinkingddata.analytics.installtimes_1";
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								@interface TDKeychainHelper ()
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								@end
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								@implementation TDKeychainHelper
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								+ (void)saveInstallTimes:(NSString *)string {
							 | 
						||
| 
								 | 
							
								    [TDKeychainManager saveItem:string forKey:TDInstallTimesNew];
							 | 
						||
| 
								 | 
							
								    
							 | 
						||
| 
								 | 
							
								    // Compatibility handles the case of jumping back and forth between old and new SDK versions
							 | 
						||
| 
								 | 
							
								    [TDKeychainManager oldSaveItem:string forKey:TDInstallTimesOld];
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								+ (NSString *)readInstallTimes {
							 | 
						||
| 
								 | 
							
								    NSString *data = [TDKeychainManager itemForKey:TDInstallTimesNew];
							 | 
						||
| 
								 | 
							
								    if (data == nil) {
							 | 
						||
| 
								 | 
							
								        data = [TDKeychainManager oldItemForKey:TDInstallTimesOld];
							 | 
						||
| 
								 | 
							
								        if (data) {
							 | 
						||
| 
								 | 
							
								            [TDKeychainManager saveItem:data forKey:TDInstallTimesNew];
							 | 
						||
| 
								 | 
							
								        }
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								    return data;
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								@end
							 |