搭建完本地服務(wù)器之后,我們便可以著手客戶端的工作,這里我們使用XMPPFramework這個(gè)開(kāi)源庫(kù),安卓平臺(tái)可以使用Smack(最好使用4.1以及之后的版本,支持流管理),為...
自從3G時(shí)代帶火到現(xiàn)在,即時(shí)通訊已經(jīng)走過(guò)很多個(gè)年頭了,現(xiàn)在的IM基本上都是一家公司的APP的基本配置,大多數(shù)公司都會(huì)選擇一些三方公司,畢竟三方公司有著成熟的IM體系,服務(wù)器都...
本文介紹了CocoaAsyncSocket庫(kù)中GCDAsyncSocket類(lèi)的使用、粘包處理以及時(shí)間延遲測(cè)試. 一.CocoaAsyncSocket介紹 CocoaAsync...
我們?cè)陧?xiàng)目中有時(shí)會(huì)碰到視頻相關(guān)的需求,一般的可以分為幾種情況: 1. 簡(jiǎn)單的視頻開(kāi)發(fā),對(duì)界面無(wú)要求,可直接使用系統(tǒng)UIImagePickerController。 (1)使用...
注冊(cè)了這么久簡(jiǎn)書(shū)賬號(hào),今天終于決定把自己的總結(jié)發(fā)出來(lái)。第一篇文章誕生了! 項(xiàng)目中monitor數(shù)據(jù)上報(bào),消息推送均使用了socket長(zhǎng)連接,技術(shù)上使用GCDAsyncSock...
一、前言 以下是我自己的學(xué)習(xí)加理解,分享給大家,同時(shí)也算是自己做的筆記吧,俗話說(shuō)好記性不如爛筆頭,希望來(lái)的你能有所幫助,有什么理解不到位的地方,還請(qǐng)大神些多多指教。 ...
前言 Objective-C是一門(mén)非常動(dòng)態(tài)的語(yǔ)言,以至于確定調(diào)用哪個(gè)方法被推遲到了運(yùn)行時(shí),而非編譯時(shí)。與之相反,C語(yǔ)言使用靜態(tài)綁定,也就是說(shuō),在編譯期就能決定程序運(yùn)行時(shí)所應(yīng)該...
Block是我們?cè)谌粘C編碼中經(jīng)常使用的特性,它可以非常便捷高效的編寫(xiě)和組織代碼,可以讓異步調(diào)用的代碼更加的精煉易讀。但是在日常開(kāi)發(fā)過(guò)程中我們大部分情況都是寫(xiě)著教科書(shū)一般的...
代碼片段示例 聲明變量一 聲明變量二 聲明變量三 聲明變量四 以上為聲明屬性的幾個(gè)方式,其中:1和2 兩種方式在一些第三方庫(kù)代碼中經(jīng)常性出現(xiàn)。 解讀 1、聲明一個(gè)存儲(chǔ)屬性,通...
由于種種原因,簡(jiǎn)書(shū)等第三方平臺(tái)博客不再保證能夠同步更新,歡迎移步 GitHub:https://github.com/kingcos/Perspective/。謝謝! Val...
masonry git地址:https://github.com/SnapKit/Masonry 本文主要會(huì)講到masonry英文文檔(見(jiàn)上面的git地址)中提及到的使用說(shuō)明...
我們?cè)谑褂玫谌娇蚣軙r(shí),往往需要import然后添加代碼去實(shí)例化才能使用。但是IQKeyboardManager不需要任何代碼就能自動(dòng)解決鍵盤(pán)遮擋輸入源,而且也提供了眾多接口...
這篇文章會(huì)對(duì) IQKeyboardManager 自動(dòng)解決鍵盤(pán)遮擋問(wèn)題的方法進(jìn)行分析。 最近在項(xiàng)目中使用了 IQKeyboardManager 來(lái)解決 UITextField...
前言 在以前,一直以為Hybrid App開(kāi)發(fā)是一種略顯簡(jiǎn)單的事,不會(huì)使用太多能發(fā)揮移動(dòng)端原生本身優(yōu)勢(shì)的復(fù)雜API,后來(lái)在新公司的工作(半混合式開(kāi)發(fā))過(guò)程中,發(fā)現(xiàn)混合式開(kāi)發(fā)也...