许可证 | MIT |
发布最后发布 | 2023年11月 |
由 Luis Sanches、Rob Weber、James Go、Britton Katnich、Yasmeen Taj、Syed Yusuf、Syed Yusuf 维护。
MASStorage 是 iOS 移动 SDK 的数据持久化框架,它是 CA 移动 API 网关的一部分。它在本地和云中存储、管理和访问数据。
MASStorage 框架具有以下功能
欢迎并非常感谢您的贡献。有关更多信息,请参阅 贡献指南。
MASStorage 支持多种方法将库安装到项目中。
要使用 CocoaPods 将MASStorage集成到您的 Xcode 项目中,在您的 Podfile 中指定它:
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '9.0'
pod 'MASStorage'
然后,使用您的项目文件夹的命令提示符运行以下命令
$ pod install
对于手动安装,您需要将移动 SDK 添加到您的 Xcode 项目中。请注意,您必须添加MASFoundation库。为了完全使用MAS功能,请按如下所示安装所有MAS库。
文件->将文件添加到“项目名称”
并添加项目文件夹中的 msso_config.json 文件。-ObjC
添加到“其他链接器标志”。#import <MASFoundation/MASFoundation.h>
#import <MASStorage/MASStorage.h>
使用不同的权限类型存储/检索本地数据。您可以使用以下枚举值控制权限,用于 MASLocalStorageSegment
MASLocalStorageSegmentApplication
此部分用于存储仅与应用程序相关的数据。例如,您可以存储应用程序配置。在此处存储的数据将在应用程序内的用户之间共享。
MASLocalStorageSegmentApplicationForUser
此部分用于存储与应用程序中特定用户相关的数据。例如,在游戏应用程序中,您可以存储用户的游戏得分或用户游戏状态。
要开始在您的应用程序中使用本地存储,SDK 需要启用它。以下过程将以预定义的模式创建LocalStorage数据库。
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
//
// Enable Local Storage in the App
//
[MAS enableLocalStorage];
//
// Start the SDK
//
[MAS start:nil];
return YES;
}
任何符合 NSData
或 NSString
的对象都可以保存到本地存储中。
- (void)saveObjectMethod
{
NSString *myObject = @"someString";
NSString *key = @"someKey";
NSString *type = @"objectType";
//
// Save object to Local Storage
//
[MASLocalStorage saveObject:myObject withKey:key type:type mode:MASLocalStorageSegmentApplication completion:^(BOOL success, NSError *error) {
//Your code here
}];
}
使用加密,可以保存符合 NSData
或 NSString
的任何对象。它使用在方法中设置的密码来加密对象,在将其保存到本地存储之前。
- (void)saveEncryptedObjectMethod
{
NSString *myObject = @"someString";
NSString *key = @"someKey";
NSString *type = @"objectType";
//
// Save object to Local Storage
//
[MASLocalStorage saveObject:myObject withKey:key type:type mode:MASLocalStorageSegmentApplication password:@"S0m3Pwd!" completion:^(BOOL success, NSError *error) {
//Your code here
}];
}
- (void)findObjectMethod
{
//
// Find Local Storage Data
//
[MASLocalStorage findObjectUsingKey:key mode:MASLocalStorageSegmentApplication completion:(void (^)(MASObject *object, NSError *error))completion; {
//Your code here
}];
}
- (void)deleteObjectMethod
{
//
// Delete object from local storage
//
[MASLocalStorage deleteObjectUsingKey:key mode:MASLocalStorageSegmentApplication completion:^(BOOL success, NSError *error) {
//Your code here
}];
}
- (void)findObjectsMethod
{
//
// Find all Local Storage Data by Mode
//
[MASLocalStorage findObjectsUsingMode:MASLocalStorageSegmentApplication completion:^(NSArray *objects, NSError *error) {
//Your code here
}];
}
- (void)viewDidLoad
{
[super viewDidLoad];
//Add Observer for Notifications from the Mobile SDK
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(didSaveToLocalStorageNotification:)
name:MASStorageOperationDidSaveToLocalStorageNotification
object:nil];
}
通过不同的权限类型存储和检索云数据。您可以使用以下枚举值来控制 MASLocalStorageSegment 的权限。
MASCloudStorageSegmentUser
此段用于存储仅与特定用户相关的数据。例如,如果您想扩展SCIM用户配置文件。使用此段存储的数据可以被相同用户通过不同的应用程序访问。
MASCloudStorageSegmentApplication
此部分用于存储仅与应用程序相关的数据。例如,您可以存储应用程序配置。在此处存储的数据将在应用程序内的用户之间共享。
MASCloudStorageSegmentApplicationForUser
此部分用于存储与应用程序中特定用户相关的数据。例如,在游戏应用程序中,您可以存储用户的游戏得分或用户游戏状态。
任何符合 NSDate
或 NSString
的对象都可以保存到云存储中。
- (void)saveObjectMethod
{
NSString *myObject = @"someString";
NSString *key = @"someKey";
NSString *type = @"objectType";
//
// Save object to Cloud Storage
//
[MASCloudStorage saveObject:myObject withKey:key type:type mode:MASCloudStorageSegmentApplication completion:^(BOOL success, NSError *error) {
//Your code here
}];
}
- (void)findObjectMethod
{
//
// Find Cloud Storage Data
//
[MASCloudStorage findObjectUsingKey:key mode:MASCloudStorageSegmentApplication completion:(void (^)(MASObject *object, NSError *error))completion; {
//Your code here
}];
}
- (void)deleteObjectMethod
{
//
// Delete object from Cloud Storage
//
[MASCloudStorage deleteObjectUsingKey:key mode:MASCloudStorageSegmentApplication completion:^(BOOL success, NSError *error) {
//Your code here
}];
}
- (void)findObjectsMethod
{
//
// Find all Cloud Storage Data by Mode
//
[MASCloudStorage findObjectsUsingMode:MASCloudStorageSegmentApplication completion:^(NSArray *objects, NSError *error) {
//Your code here
}];
}
版权(c)2016 CA。版权所有。
本软件可以根据 MIT 许可证修改和分发。有关详细信息,请参阅LICENSE文件。
CocoaPods 是由以下人员发起的项目: