<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      iOS OC CocoaPods搭建私有倉庫

       

      靜態庫和動態庫的存在的形式

      • 靜態庫:.a 和 .framework  為文件后綴名。
      • 動態庫:以.tbd(之前叫.dylib) 和 .framework 為文件后綴名。(系統直接提供給我們的framework都是動態庫!)

       靜態庫和動態庫的區別

        • 靜態庫:鏈接時,靜態庫會被完整地復制到可執行文件中,被多次使用就有多份冗余拷貝
        • 動態庫:鏈接時不復制,程序運行時由系統動態加載到內存,供程序調用,系統只加載一次,多個程序共用,節省內存

      搭建私有倉庫

      目的

      (1)復用性更好,快速構建移植核心功能 "模塊化"

      (2)加快編譯速度 "提高啟動效率" :

              每當我們build一個工程項目時,系統總是會先將所有源代碼編譯為目標文件,再將目標文件鏈接為可執行程序。即使是我們改變其中某一個文件中的源代碼,而其他文件沒有改變也是如此。因此為了加快編譯速度,有些文件將不再以源代碼的形式提供,而是可以將一部分目標文件先集中起來形成一個靜態庫。這樣就可以對這部分文件略過編譯而直接進行鏈接從而加快編譯的速度。

      (3)代碼安全

             .a 形式的靜態鏈接庫文件 配合.h只提供方法聲明 不公開代碼實現  : .a文件是一個純二進制文件

             .framework 生成私有倉庫  

             .a + .h + sourceFile = .framework

      步驟

      (1)先創建本地私有倉庫,創建完再推遠端 (?? 先本地后遠端 很重要:錯誤坑 就是 先創建了遠程倉庫,并且設置了OC 忽略文件 會屏蔽Pod 相關的文件,這里不應該寫忽略文件,就是整體全提交到遠端,改進:刪除遠端倉庫 重新執行 (1))

            pod lib create  HFTestPirvate 

            命令行執行上面這句代碼  本地創建 一個 模板工程 叫 HFTestPrivate  自主做出命令提示選擇

      (2)功能文件拖入Classes文件                 (??添加文件時候 默認是Example 為目錄下 ,需要手動切換主目錄 才能找到 Classes文件夾,也可以從Finder 中直接查找一下看看這個文件夾在哪個層級,無需關聯target)  

              

       

       

       

       (3) 在Example 層文件夾 執行  pod install

          這樣在 Development Pods 中就生成了目標私有庫文件  ,并且自動關聯了樣例工程,可以用來測試調試

          Development Pods 中 冗余的ReplaceMe.m 文件可以手動刪除

      (4)HFTestPirvate.podspec  中的 配置是否需要主動調試

             1.版本號注意是否需要修改 ,每次迭代升級 就靠它 ??

             2.s.homepage         = 'https://github.com/xxx/HFTestPirvate'   ??未來遠程倉庫

             3. s.source           = { :git => 'https://github.com/xxx/HFTestPirvate.git',:tag => s.version.to_s }??未來遠程倉庫下載源

       (5)

         (5.1)HFTestPirvate  倉庫提交到遠程 :

             (1)創建添加遠程倉庫:git remote add origin https://github.com/xxx/HFTestPirvate.git

             (2)本地HFTestPirvate 提交到遠程  : git push -u origin master

         (5.2)  給HFTestPrivate 打tag

             (1) HFTestPirvate.podspec 文件中 是  s.version          = '0.1.1'  打tag 也必須是 0.1.1       

           git tag   0.1.1

            git push  --tags

        (5.3) 創建遠程索引倉庫  Repo_cocoapods_specs

            (1)   git remote add origin https://github.com/xxx/Repo_cocoapods_specs.git

            (2)  cocoapods本地倉庫路徑,添加一個自己的遠程索引庫

           ~/.cocoapods/repos

      
      

           pod repo add Repo_cocoapods_specs  https://github.com/xxx/Repo_cocoapods_specs.git

            (3) 建立關聯  把索引倉庫 和 私有倉庫建立關聯

                 pod repo push Repo_cocoapods_specs HFTestPirvate.podspec --sources=https://github.com/xxx/HFTestPirvate.git,https://github.com/CocoaPods/Specs --verbose --allow-warnings

      至此,可以在遠程索引倉庫里面看見 HFTestPirvate.podspec 版本索引

       

      (6)  升級一個0.1.2

            方法模塊升級功能  修改好版本號

            執行(5.1.2)  提交到私有遠程倉庫 

            執行(5.2)

            執行(5.3.3)

      至此,可以在項目里面 重新pod install 則會下載最新的0.1.2版本      

       

      ??備注 :根據(5.3)遠程索引倉庫 在項目里面需要添加私有倉庫源 

           source 'https://github.com/xxx/Repo_cocoapods_specs.git'   

          然后

          pod 'HFTestPirvate'

      參考

      (1)https://zhuanlan.zhihu.com/p/217631955

        (2) http://www.cocoachina.com/articles/23359 

       

       

      posted on 2021-07-08 16:36  ACM_Someone like you  閱讀(304)  評論(0)    收藏  舉報

      導航

      主站蜘蛛池模板: 亚洲香蕉av一区二区蜜桃| 97色伦97色伦国产| 精品人妻少妇一区二区三区在线| 国产成人午夜福利院| 国产肥妇一区二区熟女精品| 国产一区二区不卡在线| 人人爽人人爽人人爽| 熟女一区二区中文字幕| 高清无码爆乳潮喷在线观看| 中日韩黄色基地一二三区| 久久96热在精品国产高清| 翘臀少妇被扒开屁股日出水爆乳 | 亚洲精品香蕉一区二区| 无套内射极品少妇chinese| 亚洲色一色噜一噜噜噜| 国模一区二区三区私拍视频| 婷婷六月色| 白丝乳交内射一二三区| 免费看的一级黄色片永久| 亚洲福利精品一区二区三区| 色欲国产精品一区成人精品| 久草热大美女黄色片免费看| 精品国产一区二区三区2021 | 成人特黄特色毛片免费看| 亚洲国产日韩伦中文字幕| 国产精品中文字幕一区| 四虎精品国产精品亚洲精| 色视频在线观看免费视频| 午夜福利日本一区二区无码| 欧美激情一区二区久久久| 国产一区在线播放av| 国产精品任我爽爆在线播放6080 | 9久久精品视香蕉蕉| 人人玩人人添人人澡超碰| 久女女热精品视频在线观看| 亚洲熟妇无码爱v在线观看| 亚洲欧美精品一中文字幕| 精选国产av精选一区二区三区| 琼海市| 国产精品国产三级在线专区| 丁香五月婷激情综合第九色 |