Files
2024-07-09 21:02:22 +08:00

86 lines
2.3 KiB
Plaintext

//
// ViewController.m
// MMKVCatalystDemo
//
// Created by lingol on 2024/7/9.
// Copyright © 2024 Lingol. All rights reserved.
//
#import "ViewController.h"
#import <MMKV/MMKV.h>
@interface ViewController ()
@end
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view.
[self funcionalTest:NO];
}
- (void)funcionalTest:(BOOL)decodeOnly {
MMKV *mmkv = [MMKV defaultMMKV];
if (!decodeOnly) {
[mmkv setBool:YES forKey:@"bool"];
}
NSLog(@"bool:%d", [mmkv getBoolForKey:@"bool"]);
if (!decodeOnly) {
[mmkv setInt32:-1024 forKey:@"int32"];
}
NSLog(@"int32:%d", [mmkv getInt32ForKey:@"int32"]);
if (!decodeOnly) {
[mmkv setUInt32:std::numeric_limits<uint32_t>::max() forKey:@"uint32"];
}
NSLog(@"uint32:%u", [mmkv getUInt32ForKey:@"uint32"]);
if (!decodeOnly) {
[mmkv setInt64:std::numeric_limits<int64_t>::min() forKey:@"int64"];
}
NSLog(@"int64:%lld", [mmkv getInt64ForKey:@"int64"]);
if (!decodeOnly) {
[mmkv setUInt64:std::numeric_limits<uint64_t>::max() forKey:@"uint64"];
}
NSLog(@"uint64:%llu", [mmkv getInt64ForKey:@"uint64"]);
if (!decodeOnly) {
[mmkv setFloat:-3.1415926 forKey:@"float"];
}
NSLog(@"float:%f", [mmkv getFloatForKey:@"float"]);
if (!decodeOnly) {
[mmkv setDouble:std::numeric_limits<double>::max() forKey:@"double"];
}
NSLog(@"double:%f", [mmkv getDoubleForKey:@"double"]);
if (!decodeOnly) {
[mmkv setString:@"hello, mmkv" forKey:@"string"];
}
NSLog(@"string:%@", [mmkv getStringForKey:@"string"]);
if (!decodeOnly) {
[mmkv setDate:[NSDate date] forKey:@"date"];
}
NSLog(@"date:%@", [mmkv getDateForKey:@"date"]);
if (!decodeOnly) {
[mmkv setObject:[@"hello, mmkv again and again" dataUsingEncoding:NSUTF8StringEncoding] forKey:@"data"];
}
NSData *data = [mmkv getObjectOfClass:NSData.class forKey:@"data"];
NSLog(@"data:%@", [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]);
if (!decodeOnly) {
[mmkv removeValueForKey:@"bool"];
NSLog(@"bool:%d", [mmkv getBoolForKey:@"bool"]);
}
}
@end