add
This commit is contained in:
0
Assets/CoolapeFrame/Plugins/iOS/KeyChainPlugin.h
Normal file
0
Assets/CoolapeFrame/Plugins/iOS/KeyChainPlugin.h
Normal file
101
Assets/CoolapeFrame/Plugins/iOS/KeyChainPlugin.h.meta
Normal file
101
Assets/CoolapeFrame/Plugins/iOS/KeyChainPlugin.h.meta
Normal file
@@ -0,0 +1,101 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 9ef3efa4e610d47a6922e83ac1fbf14b
|
||||
PluginImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
iconMap: {}
|
||||
executionOrder: {}
|
||||
defineConstraints: []
|
||||
isPreloaded: 0
|
||||
isOverridable: 0
|
||||
isExplicitlyReferenced: 0
|
||||
validateReferences: 1
|
||||
platformData:
|
||||
- first:
|
||||
Android: Android
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: ARMv7
|
||||
- first:
|
||||
Any:
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
Exclude Android: 1
|
||||
Exclude Editor: 1
|
||||
Exclude Linux: 1
|
||||
Exclude Linux64: 1
|
||||
Exclude LinuxUniversal: 1
|
||||
Exclude OSXIntel: 1
|
||||
Exclude OSXIntel64: 1
|
||||
Exclude OSXUniversal: 1
|
||||
Exclude Win: 1
|
||||
Exclude Win64: 1
|
||||
Exclude iOS: 0
|
||||
- first:
|
||||
Editor: Editor
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
DefaultValueInitialized: true
|
||||
OS: AnyOS
|
||||
- first:
|
||||
Facebook: Win
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
- first:
|
||||
Facebook: Win64
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
- first:
|
||||
Standalone: Linux
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: x86
|
||||
- first:
|
||||
Standalone: Linux64
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
- first:
|
||||
Standalone: OSXIntel
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
- first:
|
||||
Standalone: OSXIntel64
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
- first:
|
||||
Standalone: Win
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
- first:
|
||||
Standalone: Win64
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
- first:
|
||||
iPhone: iOS
|
||||
second:
|
||||
enabled: 1
|
||||
settings:
|
||||
CompileFlags:
|
||||
FrameworkDependencies: Security;
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
121
Assets/CoolapeFrame/Plugins/iOS/KeyChainPlugin.mm
Normal file
121
Assets/CoolapeFrame/Plugins/iOS/KeyChainPlugin.mm
Normal file
@@ -0,0 +1,121 @@
|
||||
#import "KeyChainPlugin.h"
|
||||
#import "UICKeyChainStore.h"
|
||||
|
||||
NSString *_keyForID = @"UserID";
|
||||
NSString *_keyForUUID = @"UserUUID";
|
||||
|
||||
@implementation KeyChainPlugin
|
||||
|
||||
extern "C" {
|
||||
void setKeyChain(const char* _key, const char* _val);
|
||||
char* getKeyChain(const char* key);
|
||||
void deleteKeyChain(char* key);
|
||||
|
||||
void setShareKeyChain(const char* _key, const char* _val, const char* _group);
|
||||
char* getShareKeyChain(const char* key, const char* group);
|
||||
void deleteShareKeyChain(char* key, const char* group);
|
||||
|
||||
char* getKeyChainUser();
|
||||
void setKeyChainUser(const char* userId, const char* uuid);
|
||||
void deleteKeyChainUser();
|
||||
}
|
||||
|
||||
void setKeyChain(const char* _key, const char* _val)
|
||||
{
|
||||
NSString *key = [NSString stringWithCString: _key encoding:NSUTF8StringEncoding];
|
||||
NSString *val = [NSString stringWithCString: _val encoding:NSUTF8StringEncoding];
|
||||
|
||||
[UICKeyChainStore setString:val forKey:key];
|
||||
}
|
||||
|
||||
char* getKeyChain(const char* key)
|
||||
{
|
||||
NSString *val = [UICKeyChainStore stringForKey:[NSString stringWithCString:key encoding:NSUTF8StringEncoding]];
|
||||
|
||||
if (val == nil || [val isEqualToString:@""]) {
|
||||
val = @"";
|
||||
}
|
||||
|
||||
return makeStringCopy([val UTF8String]);
|
||||
}
|
||||
|
||||
|
||||
|
||||
void setShareKeyChain(const char* _key, const char* _val, const char* _group)
|
||||
{
|
||||
|
||||
NSString *key = [NSString stringWithCString: _key encoding:NSUTF8StringEncoding];
|
||||
NSString *val = [NSString stringWithCString: _val encoding:NSUTF8StringEncoding];
|
||||
NSString *group = [NSString stringWithCString: _group encoding:NSUTF8StringEncoding];
|
||||
|
||||
[UICKeyChainStore setString:val forKey:key service:nil accessGroup:group];
|
||||
}
|
||||
|
||||
char* getShareKeyChain(const char* key, const char* group)
|
||||
{
|
||||
|
||||
NSString *val = [UICKeyChainStore stringForKey:[NSString stringWithCString:key encoding:NSUTF8StringEncoding]
|
||||
service:nil accessGroup:[NSString stringWithCString:group encoding:NSUTF8StringEncoding]];
|
||||
|
||||
if (val == nil || [val isEqualToString:@""]) {
|
||||
val = @"";
|
||||
}
|
||||
|
||||
return makeStringCopy([val UTF8String]);
|
||||
}
|
||||
|
||||
void deleteShareKeyChain(char* key, const char* group)
|
||||
{
|
||||
[UICKeyChainStore removeItemForKey:[NSString stringWithCString:key encoding:NSUTF8StringEncoding]
|
||||
service:nil
|
||||
accessGroup:[NSString stringWithCString:group encoding:NSUTF8StringEncoding]];
|
||||
}
|
||||
|
||||
char* getKeyChainUser()
|
||||
{
|
||||
NSString *userId = [UICKeyChainStore stringForKey:_keyForID];
|
||||
NSString *userUUID = [UICKeyChainStore stringForKey:_keyForUUID];
|
||||
|
||||
if (userId == nil || [userId isEqualToString:@""]) {
|
||||
NSLog(@"No user information");
|
||||
userId = @"";
|
||||
userUUID = @"";
|
||||
}
|
||||
|
||||
NSString* json = [NSString stringWithFormat:@"{\"userId\":\"%@\",\"uuid\":\"%@\"}",userId,userUUID];
|
||||
|
||||
return makeStringCopy([json UTF8String]);
|
||||
}
|
||||
|
||||
void setKeyChainUser(const char* userId, const char* uuid)
|
||||
{
|
||||
NSString *nsUseId = [NSString stringWithCString: userId encoding:NSUTF8StringEncoding];
|
||||
NSString *nsUUID = [NSString stringWithCString: uuid encoding:NSUTF8StringEncoding];
|
||||
|
||||
[UICKeyChainStore setString:nsUseId forKey:_keyForID];
|
||||
[UICKeyChainStore setString:nsUUID forKey:_keyForUUID];
|
||||
}
|
||||
|
||||
void deleteKeyChain(char* key)
|
||||
{
|
||||
[UICKeyChainStore removeItemForKey:[NSString stringWithCString:key encoding:NSUTF8StringEncoding]];
|
||||
}
|
||||
|
||||
void deleteKeyChainUser()
|
||||
{
|
||||
[UICKeyChainStore removeItemForKey:_keyForID];
|
||||
[UICKeyChainStore removeItemForKey:_keyForUUID];
|
||||
}
|
||||
|
||||
char* makeStringCopy(const char* str)
|
||||
{
|
||||
if (str == NULL) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
char* res = (char*)malloc(strlen(str) + 1);
|
||||
strcpy(res, str);
|
||||
return res;
|
||||
}
|
||||
|
||||
@end
|
||||
101
Assets/CoolapeFrame/Plugins/iOS/KeyChainPlugin.mm.meta
Normal file
101
Assets/CoolapeFrame/Plugins/iOS/KeyChainPlugin.mm.meta
Normal file
@@ -0,0 +1,101 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 39989bf612b1349b9b906fe1ba3667a1
|
||||
PluginImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
iconMap: {}
|
||||
executionOrder: {}
|
||||
defineConstraints: []
|
||||
isPreloaded: 0
|
||||
isOverridable: 0
|
||||
isExplicitlyReferenced: 0
|
||||
validateReferences: 1
|
||||
platformData:
|
||||
- first:
|
||||
Android: Android
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: ARMv7
|
||||
- first:
|
||||
Any:
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
Exclude Android: 1
|
||||
Exclude Editor: 1
|
||||
Exclude Linux: 1
|
||||
Exclude Linux64: 1
|
||||
Exclude LinuxUniversal: 1
|
||||
Exclude OSXIntel: 1
|
||||
Exclude OSXIntel64: 1
|
||||
Exclude OSXUniversal: 1
|
||||
Exclude Win: 1
|
||||
Exclude Win64: 1
|
||||
Exclude iOS: 0
|
||||
- first:
|
||||
Editor: Editor
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
DefaultValueInitialized: true
|
||||
OS: AnyOS
|
||||
- first:
|
||||
Facebook: Win
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
- first:
|
||||
Facebook: Win64
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
- first:
|
||||
Standalone: Linux
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: x86
|
||||
- first:
|
||||
Standalone: Linux64
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
- first:
|
||||
Standalone: OSXIntel
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
- first:
|
||||
Standalone: OSXIntel64
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
- first:
|
||||
Standalone: Win
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
- first:
|
||||
Standalone: Win64
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
- first:
|
||||
iPhone: iOS
|
||||
second:
|
||||
enabled: 1
|
||||
settings:
|
||||
CompileFlags:
|
||||
FrameworkDependencies: Security;
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
281
Assets/CoolapeFrame/Plugins/iOS/UICKeyChainStore.h
Normal file
281
Assets/CoolapeFrame/Plugins/iOS/UICKeyChainStore.h
Normal file
@@ -0,0 +1,281 @@
|
||||
//
|
||||
// UICKeyChainStore.h
|
||||
// UICKeyChainStore
|
||||
//
|
||||
// Created by Kishikawa Katsumi on 11/11/20.
|
||||
// Copyright (c) 2011 Kishikawa Katsumi. All rights reserved.
|
||||
//
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
|
||||
#if !__has_feature(nullability)
|
||||
#define NS_ASSUME_NONNULL_BEGIN
|
||||
#define NS_ASSUME_NONNULL_END
|
||||
#define nullable
|
||||
#define nonnull
|
||||
#define null_unspecified
|
||||
#define null_resettable
|
||||
#define __nullable
|
||||
#define __nonnull
|
||||
#define __null_unspecified
|
||||
#endif
|
||||
|
||||
#if __has_extension(objc_generics)
|
||||
#define UIC_KEY_TYPE <NSString *>
|
||||
#define UIC_CREDENTIAL_TYPE <NSDictionary <NSString *, NSString *>*>
|
||||
#else
|
||||
#define UIC_KEY_TYPE
|
||||
#define UIC_CREDENTIAL_TYPE
|
||||
#endif
|
||||
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
extern NSString * const UICKeyChainStoreErrorDomain;
|
||||
|
||||
typedef NS_ENUM(NSInteger, UICKeyChainStoreErrorCode) {
|
||||
UICKeyChainStoreErrorInvalidArguments = 1,
|
||||
};
|
||||
|
||||
typedef NS_ENUM(NSInteger, UICKeyChainStoreItemClass) {
|
||||
UICKeyChainStoreItemClassGenericPassword = 1,
|
||||
UICKeyChainStoreItemClassInternetPassword,
|
||||
};
|
||||
|
||||
typedef NS_ENUM(NSInteger, UICKeyChainStoreProtocolType) {
|
||||
UICKeyChainStoreProtocolTypeFTP = 1,
|
||||
UICKeyChainStoreProtocolTypeFTPAccount,
|
||||
UICKeyChainStoreProtocolTypeHTTP,
|
||||
UICKeyChainStoreProtocolTypeIRC,
|
||||
UICKeyChainStoreProtocolTypeNNTP,
|
||||
UICKeyChainStoreProtocolTypePOP3,
|
||||
UICKeyChainStoreProtocolTypeSMTP,
|
||||
UICKeyChainStoreProtocolTypeSOCKS,
|
||||
UICKeyChainStoreProtocolTypeIMAP,
|
||||
UICKeyChainStoreProtocolTypeLDAP,
|
||||
UICKeyChainStoreProtocolTypeAppleTalk,
|
||||
UICKeyChainStoreProtocolTypeAFP,
|
||||
UICKeyChainStoreProtocolTypeTelnet,
|
||||
UICKeyChainStoreProtocolTypeSSH,
|
||||
UICKeyChainStoreProtocolTypeFTPS,
|
||||
UICKeyChainStoreProtocolTypeHTTPS,
|
||||
UICKeyChainStoreProtocolTypeHTTPProxy,
|
||||
UICKeyChainStoreProtocolTypeHTTPSProxy,
|
||||
UICKeyChainStoreProtocolTypeFTPProxy,
|
||||
UICKeyChainStoreProtocolTypeSMB,
|
||||
UICKeyChainStoreProtocolTypeRTSP,
|
||||
UICKeyChainStoreProtocolTypeRTSPProxy,
|
||||
UICKeyChainStoreProtocolTypeDAAP,
|
||||
UICKeyChainStoreProtocolTypeEPPC,
|
||||
UICKeyChainStoreProtocolTypeNNTPS,
|
||||
UICKeyChainStoreProtocolTypeLDAPS,
|
||||
UICKeyChainStoreProtocolTypeTelnetS,
|
||||
UICKeyChainStoreProtocolTypeIRCS,
|
||||
UICKeyChainStoreProtocolTypePOP3S,
|
||||
};
|
||||
|
||||
typedef NS_ENUM(NSInteger, UICKeyChainStoreAuthenticationType) {
|
||||
UICKeyChainStoreAuthenticationTypeNTLM = 1,
|
||||
UICKeyChainStoreAuthenticationTypeMSN,
|
||||
UICKeyChainStoreAuthenticationTypeDPA,
|
||||
UICKeyChainStoreAuthenticationTypeRPA,
|
||||
UICKeyChainStoreAuthenticationTypeHTTPBasic,
|
||||
UICKeyChainStoreAuthenticationTypeHTTPDigest,
|
||||
UICKeyChainStoreAuthenticationTypeHTMLForm,
|
||||
UICKeyChainStoreAuthenticationTypeDefault,
|
||||
};
|
||||
|
||||
typedef NS_ENUM(NSInteger, UICKeyChainStoreAccessibility) {
|
||||
UICKeyChainStoreAccessibilityWhenUnlocked = 1,
|
||||
UICKeyChainStoreAccessibilityAfterFirstUnlock,
|
||||
UICKeyChainStoreAccessibilityAlways,
|
||||
UICKeyChainStoreAccessibilityWhenPasscodeSetThisDeviceOnly
|
||||
__OSX_AVAILABLE_STARTING(__MAC_10_10, __IPHONE_8_0),
|
||||
UICKeyChainStoreAccessibilityWhenUnlockedThisDeviceOnly,
|
||||
UICKeyChainStoreAccessibilityAfterFirstUnlockThisDeviceOnly,
|
||||
UICKeyChainStoreAccessibilityAlwaysThisDeviceOnly,
|
||||
}
|
||||
__OSX_AVAILABLE_STARTING(__MAC_10_9, __IPHONE_4_0);
|
||||
|
||||
typedef NS_ENUM(NSInteger, UICKeyChainStoreAuthenticationPolicy) {
|
||||
UICKeyChainStoreAuthenticationPolicyUserPresence = kSecAccessControlUserPresence,
|
||||
};
|
||||
|
||||
@interface UICKeyChainStore : NSObject
|
||||
|
||||
@property (nonatomic, readonly) UICKeyChainStoreItemClass itemClass;
|
||||
|
||||
@property (nonatomic, readonly, nullable) NSString *service;
|
||||
@property (nonatomic, readonly, nullable) NSString *accessGroup;
|
||||
|
||||
@property (nonatomic, readonly, nullable) NSURL *server;
|
||||
@property (nonatomic, readonly) UICKeyChainStoreProtocolType protocolType;
|
||||
@property (nonatomic, readonly) UICKeyChainStoreAuthenticationType authenticationType;
|
||||
|
||||
@property (nonatomic) UICKeyChainStoreAccessibility accessibility;
|
||||
@property (nonatomic, readonly) UICKeyChainStoreAuthenticationPolicy authenticationPolicy
|
||||
__OSX_AVAILABLE_STARTING(__MAC_10_10, __IPHONE_8_0);
|
||||
|
||||
@property (nonatomic) BOOL synchronizable;
|
||||
|
||||
@property (nonatomic, nullable) NSString *authenticationPrompt
|
||||
__OSX_AVAILABLE_STARTING(__MAC_NA, __IPHONE_8_0);
|
||||
|
||||
@property (nonatomic, readonly, nullable) NSArray UIC_KEY_TYPE *allKeys;
|
||||
@property (nonatomic, readonly, nullable) NSArray *allItems;
|
||||
|
||||
+ (NSString *)defaultService;
|
||||
+ (void)setDefaultService:(NSString *)defaultService;
|
||||
|
||||
+ (UICKeyChainStore *)keyChainStore;
|
||||
+ (UICKeyChainStore *)keyChainStoreWithService:(nullable NSString *)service;
|
||||
+ (UICKeyChainStore *)keyChainStoreWithService:(nullable NSString *)service accessGroup:(nullable NSString *)accessGroup;
|
||||
|
||||
+ (UICKeyChainStore *)keyChainStoreWithServer:(NSURL *)server protocolType:(UICKeyChainStoreProtocolType)protocolType;
|
||||
+ (UICKeyChainStore *)keyChainStoreWithServer:(NSURL *)server protocolType:(UICKeyChainStoreProtocolType)protocolType authenticationType:(UICKeyChainStoreAuthenticationType)authenticationType;
|
||||
|
||||
- (instancetype)init;
|
||||
- (instancetype)initWithService:(nullable NSString *)service;
|
||||
- (instancetype)initWithService:(nullable NSString *)service accessGroup:(nullable NSString *)accessGroup;
|
||||
|
||||
- (instancetype)initWithServer:(NSURL *)server protocolType:(UICKeyChainStoreProtocolType)protocolType;
|
||||
- (instancetype)initWithServer:(NSURL *)server protocolType:(UICKeyChainStoreProtocolType)protocolType authenticationType:(UICKeyChainStoreAuthenticationType)authenticationType;
|
||||
|
||||
+ (nullable NSString *)stringForKey:(NSString *)key;
|
||||
+ (nullable NSString *)stringForKey:(NSString *)key service:(nullable NSString *)service;
|
||||
+ (nullable NSString *)stringForKey:(NSString *)key service:(nullable NSString *)service accessGroup:(nullable NSString *)accessGroup;
|
||||
+ (BOOL)setString:(nullable NSString *)value forKey:(NSString *)key;
|
||||
+ (BOOL)setString:(nullable NSString *)value forKey:(NSString *)key service:(nullable NSString *)service;
|
||||
+ (BOOL)setString:(nullable NSString *)value forKey:(NSString *)key service:(nullable NSString *)service accessGroup:(nullable NSString *)accessGroup;
|
||||
|
||||
+ (nullable NSData *)dataForKey:(NSString *)key;
|
||||
+ (nullable NSData *)dataForKey:(NSString *)key service:(nullable NSString *)service;
|
||||
+ (nullable NSData *)dataForKey:(NSString *)key service:(nullable NSString *)service accessGroup:(nullable NSString *)accessGroup;
|
||||
+ (BOOL)setData:(nullable NSData *)data forKey:(NSString *)key;
|
||||
+ (BOOL)setData:(nullable NSData *)data forKey:(NSString *)key service:(nullable NSString *)service;
|
||||
+ (BOOL)setData:(nullable NSData *)data forKey:(NSString *)key service:(nullable NSString *)service accessGroup:(nullable NSString *)accessGroup;
|
||||
|
||||
- (BOOL)contains:(nullable NSString *)key;
|
||||
|
||||
- (BOOL)setString:(nullable NSString *)string forKey:(nullable NSString *)key;
|
||||
- (BOOL)setString:(nullable NSString *)string forKey:(nullable NSString *)key label:(nullable NSString *)label comment:(nullable NSString *)comment;
|
||||
- (nullable NSString *)stringForKey:(NSString *)key;
|
||||
|
||||
- (BOOL)setData:(nullable NSData *)data forKey:(NSString *)key;
|
||||
- (BOOL)setData:(nullable NSData *)data forKey:(NSString *)key label:(nullable NSString *)label comment:(nullable NSString *)comment;
|
||||
- (nullable NSData *)dataForKey:(NSString *)key;
|
||||
|
||||
+ (BOOL)removeItemForKey:(NSString *)key;
|
||||
+ (BOOL)removeItemForKey:(NSString *)key service:(nullable NSString *)service;
|
||||
+ (BOOL)removeItemForKey:(NSString *)key service:(nullable NSString *)service accessGroup:(nullable NSString *)accessGroup;
|
||||
|
||||
+ (BOOL)removeAllItems;
|
||||
+ (BOOL)removeAllItemsForService:(nullable NSString *)service;
|
||||
+ (BOOL)removeAllItemsForService:(nullable NSString *)service accessGroup:(nullable NSString *)accessGroup;
|
||||
|
||||
- (BOOL)removeItemForKey:(NSString *)key;
|
||||
|
||||
- (BOOL)removeAllItems;
|
||||
|
||||
- (nullable NSString *)objectForKeyedSubscript:(NSString<NSCopying> *)key;
|
||||
- (void)setObject:(nullable NSString *)obj forKeyedSubscript:(NSString<NSCopying> *)key;
|
||||
|
||||
+ (nullable NSArray UIC_KEY_TYPE *)allKeysWithItemClass:(UICKeyChainStoreItemClass)itemClass;
|
||||
- (nullable NSArray UIC_KEY_TYPE *)allKeys;
|
||||
|
||||
+ (nullable NSArray *)allItemsWithItemClass:(UICKeyChainStoreItemClass)itemClass;
|
||||
- (nullable NSArray *)allItems;
|
||||
|
||||
- (void)setAccessibility:(UICKeyChainStoreAccessibility)accessibility authenticationPolicy:(UICKeyChainStoreAuthenticationPolicy)authenticationPolicy
|
||||
__OSX_AVAILABLE_STARTING(__MAC_10_10, __IPHONE_8_0);
|
||||
|
||||
#if TARGET_OS_IOS
|
||||
- (void)sharedPasswordWithCompletion:(nullable void (^)(NSString * __nullable account, NSString * __nullable password, NSError * __nullable error))completion;
|
||||
- (void)sharedPasswordForAccount:(NSString *)account completion:(nullable void (^)(NSString * __nullable password, NSError * __nullable error))completion;
|
||||
|
||||
- (void)setSharedPassword:(nullable NSString *)password forAccount:(NSString *)account completion:(nullable void (^)(NSError * __nullable error))completion;
|
||||
- (void)removeSharedPasswordForAccount:(NSString *)account completion:(nullable void (^)(NSError * __nullable error))completion;
|
||||
|
||||
+ (void)requestSharedWebCredentialWithCompletion:(nullable void (^)(NSArray UIC_CREDENTIAL_TYPE *credentials, NSError * __nullable error))completion;
|
||||
+ (void)requestSharedWebCredentialForDomain:(nullable NSString *)domain account:(nullable NSString *)account completion:(nullable void (^)(NSArray UIC_CREDENTIAL_TYPE *credentials, NSError * __nullable error))completion;
|
||||
|
||||
+ (NSString *)generatePassword;
|
||||
#endif
|
||||
|
||||
@end
|
||||
|
||||
@interface UICKeyChainStore (ErrorHandling)
|
||||
|
||||
+ (nullable NSString *)stringForKey:(NSString *)key error:(NSError * __nullable __autoreleasing * __nullable)error;
|
||||
+ (nullable NSString *)stringForKey:(NSString *)key service:(nullable NSString *)service error:(NSError * __nullable __autoreleasing * __nullable)error;
|
||||
+ (nullable NSString *)stringForKey:(NSString *)key service:(nullable NSString *)service accessGroup:(nullable NSString *)accessGroup error:(NSError * __nullable __autoreleasing * __nullable)error;
|
||||
|
||||
+ (BOOL)setString:(nullable NSString *)value forKey:(NSString *)key error:(NSError * __nullable __autoreleasing * __nullable)error;
|
||||
+ (BOOL)setString:(nullable NSString *)value forKey:(NSString *)key service:(nullable NSString *)service error:(NSError * __nullable __autoreleasing * __nullable)error;
|
||||
+ (BOOL)setString:(nullable NSString *)value forKey:(NSString *)key service:(nullable NSString *)service accessGroup:(nullable NSString *)accessGroup error:(NSError * __nullable __autoreleasing * __nullable)error;
|
||||
|
||||
+ (nullable NSData *)dataForKey:(NSString *)key error:(NSError * __nullable __autoreleasing * __nullable)error;
|
||||
+ (nullable NSData *)dataForKey:(NSString *)key service:(nullable NSString *)service error:(NSError * __nullable __autoreleasing * __nullable)error;
|
||||
+ (nullable NSData *)dataForKey:(NSString *)key service:(nullable NSString *)service accessGroup:(nullable NSString *)accessGroup error:(NSError * __nullable __autoreleasing * __nullable)error;
|
||||
|
||||
+ (BOOL)setData:(nullable NSData *)data forKey:(NSString *)key error:(NSError * __nullable __autoreleasing * __nullable)error;
|
||||
+ (BOOL)setData:(nullable NSData *)data forKey:(NSString *)key service:(nullable NSString *)service error:(NSError * __nullable __autoreleasing * __nullable)error;
|
||||
+ (BOOL)setData:(nullable NSData *)data forKey:(NSString *)key service:(nullable NSString *)service accessGroup:(nullable NSString *)accessGroup error:(NSError * __nullable __autoreleasing * __nullable)error;
|
||||
|
||||
- (BOOL)setString:(nullable NSString *)string forKey:(NSString * )key error:(NSError * __nullable __autoreleasing * __nullable)error;
|
||||
- (BOOL)setString:(nullable NSString *)string forKey:(NSString * )key label:(nullable NSString *)label comment:(nullable NSString *)comment error:(NSError * __nullable __autoreleasing * __nullable)error;
|
||||
|
||||
- (BOOL)setData:(nullable NSData *)data forKey:(NSString *)key error:(NSError * __nullable __autoreleasing * __nullable)error;
|
||||
- (BOOL)setData:(nullable NSData *)data forKey:(NSString *)key label:(nullable NSString *)label comment:(nullable NSString *)comment error:(NSError * __nullable __autoreleasing * __nullable)error;
|
||||
|
||||
- (nullable NSString *)stringForKey:(NSString *)key error:(NSError * __nullable __autoreleasing * __nullable)error;
|
||||
- (nullable NSData *)dataForKey:(NSString *)key error:(NSError * __nullable __autoreleasing * __nullable)error;
|
||||
|
||||
+ (BOOL)removeItemForKey:(NSString *)key error:(NSError * __nullable __autoreleasing * __nullable)error;
|
||||
+ (BOOL)removeItemForKey:(NSString *)key service:(nullable NSString *)service error:(NSError * __nullable __autoreleasing * __nullable)error;
|
||||
+ (BOOL)removeItemForKey:(NSString *)key service:(nullable NSString *)service accessGroup:(nullable NSString *)accessGroup error:(NSError * __nullable __autoreleasing * __nullable)error;
|
||||
|
||||
+ (BOOL)removeAllItemsWithError:(NSError * __nullable __autoreleasing * __nullable)error;
|
||||
+ (BOOL)removeAllItemsForService:(nullable NSString *)service error:(NSError * __nullable __autoreleasing * __nullable)error;
|
||||
+ (BOOL)removeAllItemsForService:(nullable NSString *)service accessGroup:(nullable NSString *)accessGroup error:(NSError * __nullable __autoreleasing * __nullable)error;
|
||||
|
||||
- (BOOL)removeItemForKey:(NSString *)key error:(NSError * __nullable __autoreleasing * __nullable)error;
|
||||
- (BOOL)removeAllItemsWithError:(NSError * __nullable __autoreleasing * __nullable)error;
|
||||
|
||||
@end
|
||||
|
||||
@interface UICKeyChainStore (ForwardCompatibility)
|
||||
|
||||
+ (BOOL)setString:(nullable NSString *)value forKey:(NSString *)key genericAttribute:(nullable id)genericAttribute;
|
||||
+ (BOOL)setString:(nullable NSString *)value forKey:(NSString *)key genericAttribute:(nullable id)genericAttribute error:(NSError * __nullable __autoreleasing * __nullable)error;
|
||||
|
||||
+ (BOOL)setString:(nullable NSString *)value forKey:(NSString *)key service:(nullable NSString *)service genericAttribute:(nullable id)genericAttribute;
|
||||
+ (BOOL)setString:(nullable NSString *)value forKey:(NSString *)key service:(nullable NSString *)service genericAttribute:(nullable id)genericAttribute error:(NSError * __nullable __autoreleasing * __nullable)error;
|
||||
|
||||
+ (BOOL)setString:(nullable NSString *)value forKey:(NSString *)key service:(nullable NSString *)service accessGroup:(nullable NSString *)accessGroup genericAttribute:(nullable id)genericAttribute;
|
||||
+ (BOOL)setString:(nullable NSString *)value forKey:(NSString *)key service:(nullable NSString *)service accessGroup:(nullable NSString *)accessGroup genericAttribute:(nullable id)genericAttribute error:(NSError * __nullable __autoreleasing * __nullable)error;
|
||||
|
||||
+ (BOOL)setData:(nullable NSData *)data forKey:(NSString *)key genericAttribute:(nullable id)genericAttribute;
|
||||
+ (BOOL)setData:(nullable NSData *)data forKey:(NSString *)key genericAttribute:(nullable id)genericAttribute error:(NSError * __nullable __autoreleasing * __nullable)error;
|
||||
|
||||
+ (BOOL)setData:(nullable NSData *)data forKey:(NSString *)key service:(nullable NSString *)service genericAttribute:(nullable id)genericAttribute;
|
||||
+ (BOOL)setData:(nullable NSData *)data forKey:(NSString *)key service:(nullable NSString *)service genericAttribute:(nullable id)genericAttribute error:(NSError * __nullable __autoreleasing * __nullable)error;
|
||||
|
||||
+ (BOOL)setData:(nullable NSData *)data forKey:(NSString *)key service:(nullable NSString *)service accessGroup:(nullable NSString *)accessGroup genericAttribute:(nullable id)genericAttribute;
|
||||
+ (BOOL)setData:(nullable NSData *)data forKey:(NSString *)key service:(nullable NSString *)service accessGroup:(nullable NSString *)accessGroup genericAttribute:(nullable id)genericAttribute error:(NSError * __nullable __autoreleasing * __nullable)error;
|
||||
|
||||
- (BOOL)setString:(nullable NSString *)string forKey:(NSString *)key genericAttribute:(nullable id)genericAttribute;
|
||||
- (BOOL)setString:(nullable NSString *)string forKey:(NSString *)key genericAttribute:(nullable id)genericAttribute error:(NSError * __nullable __autoreleasing * __nullable)error;
|
||||
|
||||
- (BOOL)setData:(nullable NSData *)data forKey:(NSString *)key genericAttribute:(nullable id)genericAttribute;
|
||||
- (BOOL)setData:(nullable NSData *)data forKey:(NSString *)key genericAttribute:(nullable id)genericAttribute error:(NSError * __nullable __autoreleasing * __nullable)error;
|
||||
|
||||
@end
|
||||
|
||||
@interface UICKeyChainStore (Deprecation)
|
||||
|
||||
- (void)synchronize __attribute__((deprecated("calling this method is no longer required")));
|
||||
- (BOOL)synchronizeWithError:(NSError * __nullable __autoreleasing * __nullable)error __attribute__((deprecated("calling this method is no longer required")));
|
||||
|
||||
@end
|
||||
|
||||
NS_ASSUME_NONNULL_END
|
||||
101
Assets/CoolapeFrame/Plugins/iOS/UICKeyChainStore.h.meta
Normal file
101
Assets/CoolapeFrame/Plugins/iOS/UICKeyChainStore.h.meta
Normal file
@@ -0,0 +1,101 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 10b439c52ee954b5c8013e70f416483e
|
||||
PluginImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
iconMap: {}
|
||||
executionOrder: {}
|
||||
defineConstraints: []
|
||||
isPreloaded: 0
|
||||
isOverridable: 0
|
||||
isExplicitlyReferenced: 0
|
||||
validateReferences: 1
|
||||
platformData:
|
||||
- first:
|
||||
Android: Android
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: ARMv7
|
||||
- first:
|
||||
Any:
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
Exclude Android: 1
|
||||
Exclude Editor: 1
|
||||
Exclude Linux: 1
|
||||
Exclude Linux64: 1
|
||||
Exclude LinuxUniversal: 1
|
||||
Exclude OSXIntel: 1
|
||||
Exclude OSXIntel64: 1
|
||||
Exclude OSXUniversal: 1
|
||||
Exclude Win: 1
|
||||
Exclude Win64: 1
|
||||
Exclude iOS: 0
|
||||
- first:
|
||||
Editor: Editor
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
DefaultValueInitialized: true
|
||||
OS: AnyOS
|
||||
- first:
|
||||
Facebook: Win
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
- first:
|
||||
Facebook: Win64
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
- first:
|
||||
Standalone: Linux
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: x86
|
||||
- first:
|
||||
Standalone: Linux64
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
- first:
|
||||
Standalone: OSXIntel
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
- first:
|
||||
Standalone: OSXIntel64
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
- first:
|
||||
Standalone: Win
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
- first:
|
||||
Standalone: Win64
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
- first:
|
||||
iPhone: iOS
|
||||
second:
|
||||
enabled: 1
|
||||
settings:
|
||||
CompileFlags:
|
||||
FrameworkDependencies: Security;
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
1392
Assets/CoolapeFrame/Plugins/iOS/UICKeyChainStore.m
Normal file
1392
Assets/CoolapeFrame/Plugins/iOS/UICKeyChainStore.m
Normal file
File diff suppressed because it is too large
Load Diff
101
Assets/CoolapeFrame/Plugins/iOS/UICKeyChainStore.m.meta
Normal file
101
Assets/CoolapeFrame/Plugins/iOS/UICKeyChainStore.m.meta
Normal file
@@ -0,0 +1,101 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 9ebbdf13aa23f4295907752d5dc0ec07
|
||||
PluginImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
iconMap: {}
|
||||
executionOrder: {}
|
||||
defineConstraints: []
|
||||
isPreloaded: 0
|
||||
isOverridable: 0
|
||||
isExplicitlyReferenced: 0
|
||||
validateReferences: 1
|
||||
platformData:
|
||||
- first:
|
||||
Android: Android
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: ARMv7
|
||||
- first:
|
||||
Any:
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
Exclude Android: 1
|
||||
Exclude Editor: 1
|
||||
Exclude Linux: 1
|
||||
Exclude Linux64: 1
|
||||
Exclude LinuxUniversal: 1
|
||||
Exclude OSXIntel: 1
|
||||
Exclude OSXIntel64: 1
|
||||
Exclude OSXUniversal: 1
|
||||
Exclude Win: 1
|
||||
Exclude Win64: 1
|
||||
Exclude iOS: 0
|
||||
- first:
|
||||
Editor: Editor
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
DefaultValueInitialized: true
|
||||
OS: AnyOS
|
||||
- first:
|
||||
Facebook: Win
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
- first:
|
||||
Facebook: Win64
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
- first:
|
||||
Standalone: Linux
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: x86
|
||||
- first:
|
||||
Standalone: Linux64
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
- first:
|
||||
Standalone: OSXIntel
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
- first:
|
||||
Standalone: OSXIntel64
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
- first:
|
||||
Standalone: Win
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
- first:
|
||||
Standalone: Win64
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
- first:
|
||||
iPhone: iOS
|
||||
second:
|
||||
enabled: 1
|
||||
settings:
|
||||
CompileFlags:
|
||||
FrameworkDependencies: Security;
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
Reference in New Issue
Block a user