使用cocoaPods一鍵整合第三方登入(新浪微博,qq,微信),cocoapods一鍵

來源:互聯網
上載者:User

使用cocoaPods一鍵整合第三方登入(新浪微博,qq,),cocoapods一鍵

第三方登入是現在app很常用的功能,而這個功能我已經寫過兩三次了。。。每次都寫大同小異的代碼真的是很痛苦,而且每次都要根據說明去添加那些依賴庫,配置linkFlag什麼的,完全是體力活,所以一直想把這部分代碼封裝一下,方便以後複用。然後受DWZShareKit的啟發,想到可以用cocoaPods來添加依賴庫,完成配置,所以趕緊把之前的想法付諸行動,寫了個整合第三方登入的庫。地址在這裡:https://github.com/Phelthas/LXMThirdLoginManager具體如何使用及注意事項我已經寫在工程的readme裡面了,這裡來說點其他的。(說一鍵整合是誇張的修辭手法啦,申請appKey填寫scheme什麼的工作還是少不了的啦~) 一,思路CocoaPods如何完成配置,如何工作的咱還沒搞懂,所以只能說說我這裡是怎麼使用的問題的關鍵就在  LXMThirdLoginManager.podspec 這個檔案中, .podspec  中有一些描述用的代碼s.libraries  表示這個pod依賴的 蘋果官方的庫,也就是類似libstdc++.a ,libsqlite.a 等等的a檔案;s.vendored_libraries 就表示使用者自己的a檔案,比如新浪微博SDK的libWeiboSDK.a ;s.frameworks 表示pod依賴的 蘋果的framework, 比如 UIKit,SystemConfiguration等等s.vendored_frameworks, 表示pod依賴的自己的framework,比如qqSDK的TencentOpenAPI.framework;(其他的就不一一列舉了,具體的看CocoaPods的官網:https://cocoapods.org/about)(另外一個貌似是文檔的參考地址:http://www.rubydoc.info/github/CocoaPods/Core/Pod/Specification/DSL)利用這些,把第三方登入SDK所依賴的檔案全部加入這個pod中,那CocoaPods在載入這個pod的時候,就會順便把第三方登入所依賴的庫一起載入進去了。這樣就不用我們每個工程都配置一次了~~~CocoaPods會自動加入-ObjC的linkerFlag,這是方便呀~~ 不過這樣也有壞處:1是各個SDK更新之後這裡不會第一時間知道,也就沒辦法第一時間更新;2是因為把各個SDK的檔案都包含到了這個pod中,導致這個pod檔案很大(大概6M),install的時候會比較耗時間,尤其是網速不給力的話,可能會pod不下來。。。3是提供的方法比較單一,如果要其他功能還需要自己開發 但是這個庫最大的目的是省我們配置的時間呀!!!想到這裡我對它還是比較滿意的。  二,代碼實現就代碼的實現來說,這裡是想應用下類似工程模式的設計模式,不知道用的對不對。。。反正就是: 用一個統一的管理器(LXMThirdLoginManager)作為外部調用的統一入口,內部為各個登入類型分別寫一個helper類(這些類提供統一的調用介面),完成各自的登入邏輯,再統一回調manager的方法返回結果(統一的result類)。 這樣外部調用起來就很簡單了,而且如果需要擴充的話,只需要新加一個登入類型和一個helper類,完全不影響其他類型的使用。再具體的就看代碼吧,這個東西還是至少要自己實現一邊才能弄明白的。 三,吐槽1,新浪微博必須得工程的bundleID和在其開發平台註冊的bundleID一致才能登陸。。。新寫個demo還得改下bundleID好麻煩。。。2,建立的行動裝置 App居然要資格認證過了才有登陸許可權,認證一下300塊還只管用一年,完全不讓自己註冊個玩啊。。。。3,qq資格認證居然還要上傳身份證照片,要身份證就算了吧還要正反面都要。。。4,qq貌似得在info.plist檔案中添加bundleDisplayName,我沒寫貌似也沒事。。。這是文檔太久了?5,demo裡沒有可用的appKey和appSecret什麼的真不能怪我呀,自己的不能用又不能泄露公司的。。。6,體力活好累人呀。。。看文檔也是個體力活。。。   

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.