ios:beehive

添加PrefixHeader.pch:参见:(http://www.jianshu.com/p/a19bb67d705e)

#ifndef PrefixHeader_pch
#define PrefixHeader_pch

#import "BeeHive.h"
#import "BHTimeProfiler.h"

#endif
=====================
Podfile:
platform :ios, '7.0'
target "TestBeehive" do
pod "BeeHive", '1.0.0'
end
=====================
在项目根目录下添加
--------------------
BeeHive.plist:
--------------------
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>moduleClasses</key>
<array>
<dict>
<key>moduleClass</key>
<string>TestService</string>
<key>moduleLevel</key>
<integer>1</integer>
</dict>
</array>
</dict>
</plist>
--------------------
BHService.plist:
--------------------
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<array>
<dict>
<key>service</key>
<string>HomeServiceProtocol</string>
<key>impl</key>
<string>ViewController</string>
</dict>
</array>
</plist>
=====================
--------------------
AppDelegate.h
--------------------
#import <UIKit/UIKit.h>
@interface AppDelegate : BHAppDelegate <UIApplicationDelegate>
@end

--------------------
AppDelegate.m
--------------------
#import "AppDelegate.h"
#import "HomeServiceProtocol.h"

@interface AppDelegate ()
@end

@implementation AppDelegate

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

//[BHContext shareInstance].env = BHEnvironmentDev;
[BHContext shareInstance].application = application;
[BHContext shareInstance].launchOptions = launchOptions;
[BHContext shareInstance].moduleConfigName = @"BeeHive";//可选,默认为BeeHive.bundle/BeeHive.plist
[BHContext shareInstance].serviceConfigName = @"BHService";

[BeeHive shareInstance].enableExpection = YES;
[[BeeHive shareInstance] setContext:[BHContext shareInstance]];
[[BHTimeProfiler sharedTimeProfiler] recordEventTime:@"BeeHive::super start launch"];

[super application:application didFinishLaunchingWithOptions:launchOptions];

id<HomeServiceProtocol> homeVc = [[BeeHive shareInstance] createService:@protocol(HomeServiceProtocol)];

if ([homeVc isKindOfClass:[UIViewController class]]) {
UINavigationController *navCtrl = [[UINavigationController alloc] initWithRootViewController:(UIViewController*)homeVc];
[navCtrl setNavigationBarHidden:YES];
self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds];
self.window.rootViewController = navCtrl;
[self.window makeKeyAndVisible];
}

return YES;

}

=====================
--------------------
ViewController.h
--------------------
#import <UIKit/UIKit.h>

@interface ViewController : UIViewController

@end

--------------------
ViewController.m
--------------------

#import "ViewController.h"
#import "HomeServiceProtocol.h"

//BeeHiveService(HomeServiceProtocol,ViewController)
@interface ViewController()<HomeServiceProtocol>

@end

@implementation ViewController

-(instancetype)init
{
self = [super init];
if (self) {

}
return self;
}

- (void)viewDidLoad {
[super viewDidLoad];
}

-(void)registerViewController:(UIViewController *)vc title:(NSString *)title iconName:(NSString *)iconName
{
// vc.tabBarItem.image = [UIImage imageNamed:[NSString stringWithFormat:@"Home.bundle/%@", iconName]];
// vc.tabBarItem.title = title;
//
// [self.registerViewControllers addObject:vc];
//
// self.viewControllers = self.registerViewControllers;
NSLog(@"test-======");
}

- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
}

@end
=====================
--------------------
HomeServiceProtocol.h
--------------------

#import <Foundation/Foundation.h>

@protocol HomeServiceProtocol <NSObject, BHServiceProtocol>

-(void)registerViewController:(UIViewController *)vc title:(NSString *)title iconName:(NSString *)iconName;

@end
=====================
--------------------
TestService.h
--------------------
#import <Foundation/Foundation.h>

@interface TestService : NSObject

@end

--------------------
TestService.m
--------------------

#import "TestService.h"
#import "HomeServiceProtocol.h"
#import "ViewController.h"

@interface TestService()<BHModuleProtocol>

@end

@implementation TestService

//BH_EXPORT_MODULE(YES)

-(void)modInit:(BHContext *)context
{
switch (context.env) {
case BHEnvironmentDev:
//....初始化开发环境
break;
case BHEnvironmentProd:
//....初始化生产环境
default:
break;
}
}

- (void)modSetUp:(BHContext *)context
{
//[[BeeHive shareInstance]registerService:@protocol(HomeServiceProtocol) service:[ViewController class]];

NSLog(@"TradeModule setup");
}

=====================


=====================
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值