使用Small创建iOS工程目录

开始前提:请根据github上的说明,创建好工程。


工程配置要点:
1、bundle.json
在SMBundle类中,方法
- (instancetype)initWithDictionary:(NSDictionary *)dictionary
根据bundle.json配置文件信息查找framework、bundle文件,从而加载到应用中进行使用。
    NSString *bundlePath = nil;
    NSString *bundleSuffix = @"bundle";
    SMBundleType bundleType = SMBundleTypeAssets;
    if ([pkg rangeOfString:@".app."].location != NSNotFound
        || [pkg rangeOfString:@".lib."].location != NSNotFound) {
        bundleSuffix = @"framework";
        bundleType = SMBundleTypeApplication;
    }
以上代码表明,要加载framework文件,pkg名称必须包含“.app.”(模块库)/“.lib.”(工具库),否则全部默认加载bundle包。因此bundle.json文件可以是这样的:

"version": "1.0.0",
    "bundles": [
                {
                "uri": "lib.utils",
                "pkg": "com.example.small.lib.utils"
                },
                {
                "uri": "main",
                "pkg": "com.example.small.app.main"
                },
                {
                "uri": "home",
                "pkg": "com.example.small.app.home"
                },
                {
                "uri": "about",
                "pkg": "com.example.small.web.about"
                }
                ]


2、workspace/project设置
2.1、framework模块工程
2.1.1、工程名可根据自己需要进行命名,eg:Small.Main;
2.1.2、framework编译成功后,名称跟Product Name一样,命名规则一般是这样的
                xx_xx_lib_xx【com_example_small_lib_utils】
                xx_xx_app_xx
                xx_xx_xx_xx


注意lib、app这些对查找framework文件相当重要,这所以会有"_",是small对"."做了替换

2.1.3、Principal class设置,指定模块入口 


2.2、主工程设置
2.2.1、framework添加到主工程,不以Linked方式进行添加,使用Build Phases中的Copy Bundle Resources 选项,将framework拖动添加其中即可,这样可以完成对framework编译完后的拷贝

完成添加,进入测试。使用过程中,有可以模块更新代码后,主工程调用发现功能未更新,这时候需要清理工程,重新编译;或者修改编译包配置,从而时时更新。





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值