前言
由於工作需要,要做乙個sdk提供給第三方開發人員,就是將我們的乙個功能模組封裝一下,不能直接給對方原始碼,將原始碼打包成二進位制檔案,這也是我們常見的使用第三方工具的打包方式。
在建立sdk的時候,由於開發的時候經常要除錯,不能每次除錯就打一包,所以我們要建立在乙個工程裡,以便於我們開發和除錯。
1.建立工程
2.建立framework
1.建立framework工程檔案
2.修改配置 將mach-0 type 設定成為靜態庫檔案 static library
建立完成後就會出現下圖的framework
3.建立完成之後,我們就要建立我們自己的檔案。
這裡要記住,是在sdk資料夾下建立,找到自己建立的sdk資料夾,然後在裡面建立自己的檔案。
這裡可以看見ioslibframe資料夾是我們sdk開發的目錄,後面所有的sdk開發都在這裡進行。
在開發過程中會有很多的.**件,有些檔案是外部呼叫著引用的介面檔案,有些是sdk內部使用的,不要暴露出去,我們需要提供給開發者使用的標頭檔案我們需要設定一下:
現在testa就是外部開發者可以訪問的標頭檔案。
然後command+b編譯一下,在主工程中引用testa,就可以隨便去呼叫testa中的方法了。
這裡說明一下:呼叫的方式有兩種,第一種是直接引用:
#import "testa.h"
第二種方式是先編譯好後將編譯後的檔案放入主工程中
#import
兩種方式都可以,不過第二種好處是,在寫的時候就能知道哪些標頭檔案是不會暴露出去的,心裡會有數。
最後當所有的開發完成後,就是打包了,這裡打包包括兩個包,乙個包是真機執行的framework,乙個是模擬器執行的framework,看自己情況,如果自己的framework只能真機執行,那就直接用就行,如果兩個環境下都執行,則需要將兩個環境下的包合併到一起。
我這裡是debug環境,到時候真正發包的時候 大家用release環境就行。
在這兩個資料夾下都有乙個ioslibframe.framework,現在見它們拷貝出來道乙個目錄下進行合併。
合併的命令:
lipo -create /users/aaa/desktop/code/e-csdn/ios-sdk/sdk/debug-iphoneos/ioslibframe.framework/ioslibframe /users/aaa/desktop/code/e-csdn/ios-sdk/sdk/debug-iphonesimulator/ioslibframe.framework/ioslibframe -output /users/aaa/desktop/code/e-csdn/ios-sdk/sdk/out/ioslibframe
合併成功後會有乙個ioslibframe 檔案 這個就是我們最後的檔案。
然後將這個檔案拷貝到 debug-iphoneos/ioslibframe.framework 去替換裡面的ioslibframe。最終ioslibframe.framework這個檔案就是我們可以提供給開發者的靜態庫。
Unity製作和接入IOSSDK
1.新建xcode的framework工程。2.匯入sdk的.framework包。3.編寫.mm檔案,呼叫並封裝sdk功能。4.把編寫好的工程匯入進unity,其中包括sdk的.framework和.mm檔案 5.按照需求設定.framework需要的依賴和庫.6.某些依賴和庫在unity中找不到...
iOS SDK 整合指南
檢視最近更新了解最新的sdk更新情況。極光推送 jpush 是乙個端到端的推送服務,使得伺服器端訊息能夠及時地推送到終端使用者手機上,讓開發者積極地保持與使用者的連線,從而提高使用者活躍度 提高應用的留存率。極光推送客戶端支援 android,ios 兩個平台。包名為jpush ios sdk 版本...
iOS SDk開發之二
經過了緊張的第一周開發,sdk雛形已基本搭建完畢,今天解決了幾個大的bug。晚上放鬆下。聊一下最近的收穫 對於這個sdk開發,我主要是負責總體的架構,最初選擇開發模式的時候,我選擇了近似於afn 的設計模式,利用乙個單例 模組開發,把sdk內部分為管理者乙個總的排程者,和網路,動畫,資料,介面四個主...