Alex Kotliarskyi c4699d8b73 Open source FBPortForwarding
Summary:FBPortForwarding is incomplete and flaky implementation of `adb reverse`
functionality for iOS. We haven't worked on it internally for a while now,
but I think it might be a very usefull tool for the community. Some external
contributors (hello philikon!) expressed interest in maintaining it.

This diff moves it over to OSS RN `Libraries` folder.

Reviewed By: vjeux

Differential Revision: D3056293

fb-gh-sync-id: 9ced61fa8480a923771bba26fe09337c344ab3b3
shipit-source-id: 9ced61fa8480a923771bba26fe09337c344ab3b3
2016-03-24 10:51:34 -07:00

66 lines
2.0 KiB
Objective-C

/**
* Copyright (c) 2015-present, Facebook, Inc.
* All rights reserved.
*
* This source code is licensed under the BSD-style license found in the
* LICENSE file in the root directory of this source tree. An additional grant
* of patent rights can be found in the PATENTS file in the same directory.
*/
#import "PFAppDelegate.h"
#import <FBPortForwarding-iOS/FBPortForwardingServer.h>
@implementation PFAppDelegate
{
FBPortForwardingServer *_portForwardingServer;
}
@synthesize window = window_;
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
CGRect rect = [[UIScreen mainScreen] bounds];
UIView *view = [[UIView alloc] initWithFrame:rect];
view.backgroundColor = [UIColor whiteColor];
UIViewController *controller = [UIViewController new];
controller.view = view;
UIButton *button = [UIButton buttonWithType:UIButtonTypeRoundedRect];
[button setTitle:@"Send request" forState:UIControlStateNormal];
[button addTarget:self action:@selector(sendRequest) forControlEvents:UIControlEventTouchUpInside];
button.frame = CGRectMake(0, 0, 200, 50);
button.center = view.center;
[view addSubview:button];
self.window = [[UIWindow alloc] initWithFrame:rect];
self.window.rootViewController = controller;
[self.window makeKeyAndVisible];
_portForwardingServer = [FBPortForwardingServer new];
[_portForwardingServer forwardConnectionsFromPort:8082];
[_portForwardingServer listenForMultiplexingChannelOnPort:8025];
return YES;
}
- (void)sendRequest
{
NSURLRequest *req = [[NSURLRequest alloc] initWithURL:[NSURL URLWithString:@"http://localhost:8082/404"]];
[[[NSURLConnection alloc] initWithRequest:req delegate:self] start];
}
- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data
{
NSString *content = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
NSLog(@"Success: %@", content);
}
- (void)connection:(NSURLConnection *)connection didFailWithError:(NSError *)error
{
NSLog(@"Error: %@", error);
}
@end