Summary: I have a few details left, but its almost done. This PR addresses #145 - The NSUserDefaults plugin uses the SharedPreferences Desktop Part since we can reuse all of it. - The NSUserDefaults plugin uses swizzling in order to be notified of what specific event changed at runtime. - Added Test harness in both Sample Swift and Sample apps for iOS in order to test the plugin. - Updated the documentation in `docs/shared-preferences-plugin.md` and` README.md` I am open to suggestions since the desktop sharedPreferences version doesn't support deletion of preferences. Most likely I would have to modify the UI, and for that matter, I might as well build a user defaults desktop version I wanted to add xiphirx in this MR since he developed the shared preferences plugin for Android and Desktop. I don't see a way to remove preferences from the flipper desktop app so I was wondering if you would be OK with me adding that. Pull Request resolved: https://github.com/facebook/flipper/pull/291 Reviewed By: passy Differential Revision: D10334685 Pulled By: priteshrnandgaonkar fbshipit-source-id: d798c01a46df7ddecf713924799f046b560ea922
47 lines
1.4 KiB
Objective-C
47 lines
1.4 KiB
Objective-C
/*
|
|
* Copyright (c) 2018-present, Facebook, Inc.
|
|
*
|
|
* This source code is licensed under the MIT license found in the LICENSE
|
|
* file in the root directory of this source tree.
|
|
*
|
|
*/
|
|
|
|
#import "MainViewController.h"
|
|
|
|
#import "NetworkViewController.h"
|
|
#import "RootViewController.h"
|
|
#import "UserDefaultsViewController.h"
|
|
|
|
@interface MainViewController ()
|
|
|
|
@end
|
|
|
|
@implementation MainViewController
|
|
|
|
- (void)viewDidLoad {
|
|
[super viewDidLoad];
|
|
// Do any additional setup after loading the view.
|
|
}
|
|
|
|
- (IBAction)tappedComponentKitLayout:(UIButton *)sender {
|
|
RootViewController *rootViewController = [RootViewController new];
|
|
|
|
[self.navigationController pushViewController:rootViewController animated:true];
|
|
}
|
|
|
|
- (IBAction)tappedNetworkInspector:(UIButton *)sender {
|
|
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryBoard" bundle:nil];
|
|
NetworkViewController *networkViewController = [storyboard instantiateViewControllerWithIdentifier:@"NetworkViewController"];
|
|
|
|
[self.navigationController pushViewController:networkViewController animated:true];
|
|
}
|
|
|
|
- (IBAction)tappedUserDefaults:(id)sender {
|
|
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryBoard" bundle:nil];
|
|
UserDefaultsViewController *userDefaultsViewController = [storyboard instantiateViewControllerWithIdentifier:@"UserDefaultsViewController"];
|
|
|
|
[self.navigationController pushViewController:userDefaultsViewController animated:true];
|
|
}
|
|
|
|
@end
|