開源中國iOS客戶端涉及的知識點(下)

2021-06-28 10:28:38 字數 2810 閱讀 9731

(五)、網路連線檢測

開源中國ios客戶端基於網路同步資料,從而達到與網頁看到同樣資料效果,所以在啟動程式的時候需要檢查網路;這也是每乙個聯網應用啟動的第一步,如果聯網應用沒有檢查網路,蘋果公司將不予以審核通過

開源中國ios客戶端大牛們在寫網路檢測時很迷惑人,開始以為他們用的是asi類庫做的網路檢測,今天才看明白,他們並不是用的asi類庫檢測,而是用到afnetworking這個類庫里乙個例項方法做網路連線檢測;

[cpp]view plain

copy

//檢查網路是否存在 如果不存在 則彈出提示

[config instance].isnetworkrunning = [checknetwork i***istencenetwork];  

[cpp]view plain

copy

- (void

}  使用蘋果官方提供的reachability來檢測網路連線狀況;

開源中國ios客戶端大牛們是在afnetworking類庫

failure:(void (^)(afhttprequestoperation *operation, nserror *error))failure  方法裡面,

這個方法使用afhttprequestoperation和「patch」請求http客戶端操作佇列,使用到了block塊(ios 4.0+特性),url請求成功執行success塊裡操作,這裡面block塊沒有返回值,接受兩個引數,建立請求操作和響應資料請求,url請求失敗執行failure裡面的方法,這個block塊裡仍沒有返回值,接受兩個引數建立請求操作和nserror物件,描述網路或解析錯誤狀況;

所以才有了上面截圖中網路的連線檢測,拿原始碼中一處來舉例

(六)mbprogresshud特效

在開源中國ios客戶端中也用到了mbprogresshud這個特效,主要作用為應用顯示乙個過渡的作用,常用於開啟乙個聯網頁面載入過程,防止出現假死現象,如果網速慢則告訴使用者已經在很努力很努力的載入中。

原始碼中也自帶了乙個demo,顯示13中動畫效果,可以根據需要選取其中特效加以使用,使用方法基本一樣;使用的時候只加把mbprogresshud.h和mbprogresshud.m拖入工程中,在使用的檔案中加上#import"mbprogresshud.h"

在開源中國ios客戶端中只用到一種特效,當我們選取一條資訊檢視詳細資訊時:

(七)網路通訊afnetworking類庫

afnetworking是乙個輕量級的ios網路通訊類庫,繼asi類庫不在更新之後開發者們有一套不錯選擇;

如果想深入研究有官方文件介紹:

在開源中國ios客戶端中關於afnetworking類庫的使用只用到了兩個例項方法

(1)getpath:parameters:success:failure:

(2)postpath:parameters:success:failure:

他們用法基本相同,只是請求資料方式不同,一種是get請求和post請求。get是向伺服器發索取資料的一種請求,也就相當於查詢資訊功能,不會修改類容,post是向伺服器提交資料的一種請求,影響資料內容;

(八)檢視切換 hmgltransitions

hmgltransitions 是一套動畫演示兩個uiview 或 uiviewcontroller之間切換時的過渡效果;

有些情況下我們需要兩個檢視之間做乙個動畫過渡的切換,或許系統自帶的catransition和普通動畫難以滿足我們的需求,此時第三方類庫就是乙個不錯的選擇;hmgltransitions提供五種不錯效果,分別是: 3d right(letf) 、cloth、flip right(letf)、rotate和doors

(九)aes加密

資料加密在解密在軟體開發過程中舉足輕重的作用,可能有的公司在加密的時候有自己公司內部一套設計的演算法,而在這方面不想浪費太大精力就可以去考慮使用第三方提供的加密演算法,如aes加密演算法,本篇內容介紹開源中國ios客戶端使用ase演算法加密密碼;

這裡的使用是:儲存使用者名稱和密碼是將使用者名稱和密碼放到了本地的乙個沙盒只之中,獲取的時候直接從本地讀取加密後的檔案,經過解密和伺服器上使用者資料進行比較。

(十)使用egoimageloading非同步載入

(十一)

rtlabel 基於uilabel類的拓展,能夠支援html標記的富文字顯示,它是基於core text,因此也支援core text上的一些東西。

開源中國iOS客戶端學習 序

說到這款開源軟體就得提到她的娘家了 開源中國社群 開源中國社群簡介 開源中國 www.oschina.net 成立於2008年8月,是目前中國最大的開源技術社群。傳播開源的理念,推廣開源專案,為 it 開發者提供了乙個發現 使用 並交流開源技術的平台。目前開源中國社群已收錄超過兩萬款開源軟體。開源中...

ios學習 零 開源中國iOS客戶端學習

說到這款開源軟體就得提到她的娘家了 開源中國社群 開源中國社群簡介 開源中國 www.oschina.net 成立於2008年8月,是目前中國最大的開源技術社群。傳播開源的理念,推廣開源專案,為 it 開發者提供了乙個發現 使用 並交流開源技術的平台。目前開源中國社群已收錄超過兩萬款開源軟體。開源中...

開源中國iOS客戶端v3 7 2發布

duang duang duang 這個版本中,我們對上個版本中出現的各種一些閃退問題進行了修復,同時我們也帶來了多圖動彈。喜歡嘗鮮的童鞋們,千萬不能錯過這個版本。不得不說的是 此版本將是最後乙個支援ios7系統的客戶端。ios7系統已經太古老,以至於我們不得不做許多額外的工作以解決相容性問題。但這...