攝像照相視頻音頻處理
SCRecorder- SCRecorder 短視頻錄制。
VideoPushDemo- 視頻剪輯視頻特效制作1視頻特效制作2叛拷。
LLSimpleCamera- A simple, customizable camera control for iOS舌厨, 攝像頭。
EZAudio- EZAudio 是一個 iOS 和 OSX 上簡單易用的音頻框架忿薇,根據(jù)音量實時顯示波形圖裙椭,基于Core Audio,適合實時低延遲音頻處理署浩,非常直觀揉燃。中文介紹,官網(wǎng)。
ffmpeg- ffmpeg官網(wǎng)筋栋,FFmpeg在iOS上完美編譯你雌。
VLC- VCL官網(wǎng),VLC for iOS 2.7.2 source code。
kxmovie- 使用ffmpeg的影片播放器二汛,修改說明婿崭,修改代碼,基于FFmpeg的kxMoive艱難的編譯運行肴颊。
ijkplayer- B站開源的視頻播放器氓栈,支持Android和iOS。
iOS中集成ijkplayer視頻直播框架婿着。
StreamingKit- StreamingKit流媒體音樂播放器授瘦。
FreeStreamer- FreeStreamer流媒體音樂播放器醋界,cpu占用非常小。
DOUAudioStreamer- DOUAudioStreamer豆瓣的音樂流媒體播放器提完。
fmpro- 電臺播放器形纺,支持鎖屏歌詞,支持基本播放流程徒欣,歌詞展示逐样,后臺鎖屏播放和控制以及鎖屏后封面+歌詞,
fmpro_R打肝。
IPDFCameraViewController- 支持相機定焦拍攝脂新、濾鏡、閃光粗梭、實時邊框檢測以及透視矯正功能争便,并有簡單易用的API。
SCRecorder- 酷似 Instagram/Vine 的音頻/視頻攝像記錄器断医,以 Objective-C 為基礎(chǔ)的過濾器框架滞乙。 你可以做很多如下的操作:記錄多個視頻錄像片段。刪除任何你不想要的記錄段鉴嗤≌镀簦可以使用任何視頻播放器播放片段。保存的記錄可以在序列化的 NSDictionary 中使用。(在 NSUserDefaults 的中操作)添加使用 Core Image 的視頻濾波器〉樗剑可自由選擇你需要的 parameters 合并和導(dǎo)出視頻欧芽。
Cool-iOS-Camera- Cool-iOS-Camera。
FastttCamera- FastttCamera 快速照相朴摊。
ICGVideoTrimmer- ICGVideoTrimmer提供提供視頻剪切的視圖(類似系統(tǒng)相冊中瀏覽視頻時頂部那個條狀視圖)默垄。左右兩個邊界選擇器還能夠自定義。
IOS錄音和播放功能demo- 比較完整的ios錄音和播放功能的實現(xiàn)甚纲。
CameraManager- 相機管理封裝類庫口锭。看著極好用的樣子----swift介杆。
MCAudioInputQueue- 簡易錄音類鹃操,基于AudioQueue的。
DraggableYoutubeFloatingVideo- 展示像類似Youtube移動應(yīng)用的那種瀏覽視頻的效果春哨,當(dāng)點擊某視頻時能夠從右下方彈出一個界面荆隘,并且該界面能夠通過手勢,再次收縮在右下方并繼續(xù)播放赴背。這是通過AutoLayout設(shè)計實現(xiàn)椰拒。amr- 做即時通訊的音頻處理晶渠,錄音文件是m4a,便于web端的音頻播放燃观。邊錄音邊轉(zhuǎn)碼- 一邊錄音褒脯,一邊將錄制成的 wav 格式音頻文件轉(zhuǎn)碼成 amr 音頻格式。只支持真機運行調(diào)試缆毁。
FSVoiceBubble- 一個輕量級播放錄音音頻的氣泡:1.支持短時間的音頻播放(支持網(wǎng)絡(luò)音頻)番川;2.播放時的聲波動畫;3.自定義包括聲波的顏色积锅,氣泡的背景等爽彤。
KRVideoPlayer- 類似Weico的播放器,支持豎屏模式下全屏播放缚陷。
自定義視頻播放器AVPlayer- 利用系統(tǒng)類AVPlayer實現(xiàn)完全自定義視頻播放器适篙,顯示播放時間,緩存等功能箫爷。代碼清晰嚷节,注釋詳細。
VideoBeautify- 功能酷似美拍,秒拍等應(yīng)用的源碼:對視頻進行各種美化處理虎锚,采用主題形式進行分類硫痰,內(nèi)含各種濾鏡,動畫特效和音效等窜护。
HTY360Player- 是一款提供在 iOS 中使用 360 度無死角拖拽視頻進行不同角度播放的視頻播放器效斑。
ALCameraViewController- ALCameraViewController 攝像頭視圖控制器(含可定制照片選擇器,圖片簡單裁切功能)及演示柱徙。
recordDemo.swift- 一個Swift語言實現(xiàn)直接可以用的錄音Demo缓屠,實現(xiàn)說明。
Swift-Radio-Pro- 集成 LastFM 的專業(yè)電臺應(yīng)用(基于 Swift 2.0)护侮。
Eleven- Eleven Player - 一個使用 FFmpeg 實現(xiàn)的簡單強大的 iOS 開源播放器敌完。
mobileplayer-ios.swift- 很不錯的高度可定制播放器項目。
iFrameExtractor- 開源視頻播放器羊初, ffmpeg在iOS的使用-iFrameExtractor源碼解析滨溉,文章。
Periscope-VideoViewController.swift- 簡潔實用的視頻快進长赞、倒帶控制視圖類庫晦攒。
AudioKit.swift- 音頻合成、加工及分析平臺(支持 iOS得哆、OS X脯颜、tvOS)框架庫。無論其易用性柳恐,還是功能性及專業(yè)性伐脖。
MusicPlayert- MusicPlayert本地音樂播放+音樂信息顯示+在線歌詞搜索顯示(千千靜聽服務(wù)器)热幔。
MusicPlayert- MusicPlayert音樂播放器,用reveal可以查看層次關(guān)系讼庇,主要實現(xiàn)了歌詞的同步顯示绎巨。
音樂播放器- 音樂播放器:顯示歌詞。
TBPlayer- 視頻變下變播蠕啄,把播放器播放過的數(shù)據(jù)流緩存到本地场勤,支持拖動。采用avplayer歼跟。實現(xiàn)說明
WMPlayer- WMPlayer視頻播放器和媳,AVPlayer的封裝,繼承UIView哈街,想怎么玩就怎么玩留瞳。支持播放mp4、m3u8骚秦、3gp她倘、mov,網(wǎng)絡(luò)和本地視頻同時支持作箍。全屏和小屏播放同時支持硬梁。 cell中播放視頻,全屏小屏切換自如胞得。
IWatch- 一個視頻日報類的app 播放器用到了AVFoudation荧止。
SkfSwiftCammer- 一個相機demo,在oc里面調(diào)用了swift阶剑。
ZFPlayer- 基于AVPlayer跃巡,支持橫屏、豎屏(全屏播放還可鎖定屏幕方向)个扰,上下滑動調(diào)節(jié)音量瓷炮、屏幕亮度葱色,左右滑動調(diào)節(jié)播放進度递宅。
BMPlayer.swift- 基于 AVPlayer 使用 Swift 封裝的視頻播放器,方便快速集成,支持橫屏苍狰、豎屏办龄,上下滑動調(diào)節(jié)音量、屏幕亮度淋昭,左右滑動調(diào)節(jié)播放進度俐填。
響應(yīng)式框架
ReactiveCocoa- ReactiveCocoa 受函數(shù)響應(yīng)式編程激發(fā)。不同于使用可變的變量替換和就地修改翔忽,RAC提供Signals來捕獲當(dāng)前值和將來值(使用介紹)英融,不錯的例子,入門好教程:
ReactiveCocoa入門教程:第一部分盏檐。
Reactive Cocoa 3.0 在 MVVM 中的應(yīng)用,小碼哥:快速讓你上手ReactiveCocoa之基礎(chǔ)篇。
LoginWithReactiveCocoa- ReactiveCocoa - 登錄交互效果的實現(xiàn)驶悟。
RxSwift- RxSwift:函數(shù)響應(yīng)式編程框架胡野。
RxPermission.swift- 通過綁定 RxSwift 實現(xiàn)的 RxPermission。
Permission.swift- 統(tǒng)一的 API 請求 iOS 本地設(shè)備及資源權(quán)限類庫痕鳍。
ReactiveAnimation- ReactiveCocoa 推出了一個叫 ReactiveAnimation 的子項目硫豆,直接用完全用 Swift 來實現(xiàn)了。
BeeFramework- 與ReactiveCocoa類似笼呆,BeeFramework用戶指南 v1.0熊响。
Objective-Chain- Objective-Chain是一個面向?qū)ο蟮捻憫?yīng)式框架,作者表示該框架吸收了 ReactiveCocoa 的思想诗赌,并且想做得更面向?qū)ο笠恍?br>
Swiftest- BDD 全稱 Behavior Driven Development汗茄,行為驅(qū)動開發(fā)。各種 DD 數(shù)不勝數(shù)铭若,孰優(yōu)孰劣爭論不休剔难,其實歸根結(jié)底還是要根據(jù)使用場景進行選擇。
SwiftNotificationCenter- 一個面向協(xié)議的類型安全奥喻、線程安全偶宫、內(nèi)存安全的通知中心。
版本新API的Demo
appleSample- iOS 蘋果官方Demo合集环鲤,官方demo.
iOS7-Sampler- 整合了iOS7.0的一些十分有用的特性纯趋,比如:Dynamic Behaviors、碰撞檢測冷离、語音合成吵冒、視圖切換、圖像濾鏡西剥、三維地圖痹栖、Sprite Kit(動畫精靈)、Motion Effect(Parallax)瞭空、附近藍牙或者wifi搜索連接揪阿、AirDrop、運動物體追蹤(iPhone 5S以上咆畏,需要M7處理器)等等南捂。對于日常的應(yīng)用開發(fā)十分實用。
iOS8-Sampler- 日本的shuさん制作的 iOS8 參考代碼集旧找。01.Audio Effects 溺健;02.New Image Filters;03.Custom Filters钮蛛;04.Metal Basic鞭缭;05.Metal Uniform Streaming剖膳;06.SceneKit;07.HealthKit岭辣;08.TouchID潮秘;09.Visual Effects;10.WebKit易结;11.UIAlertController枕荞;12.User Notification;13.Pedometer搞动;14.AVKit躏精;15.Histogram;16.Code Generator鹦肿;17.New Fonts矗烛;18.Popover;19.Accordion Fold Transition
iOS-9-Sampler- 通過實例介紹了iOS 9 SDK中重要新特性的使用箩溃。
MTSwift-Learning- 通過一些簡單項目實戰(zhàn)演練開始學(xué)習(xí) Swift 瞭吃。
iOS8-day-by-day- swift。
iOS9-day-by-day- swfit
iOS9 Day-by-Day :: Day 2 :: UI Testing涣旨。
iOS 9 分屏多任務(wù)- iOS 9 分屏多任務(wù):Slide Over & Split View快速入門(中文版)歪架。
uistackview-sample.swift- iOS 9 引進了 UIStackViews,提供 auto-layout 特性霹陡。如果你開發(fā)過 Android 應(yīng)用和蚪,會發(fā)現(xiàn)它和 LinearLayouts 概念上很類似,它是增強版烹棉。你可以手動創(chuàng)建攒霹,也可以使用 IB 自動創(chuàng)建,本文用的是代碼實現(xiàn)浆洗。
Search-APIs- iOS 9 學(xué)習(xí)系列: SearchAPIs催束。教程
代碼安全與密碼
ios-class-guard- 一個用于混淆iOS的類名、方法名以及變量名的開源庫--有人反映編譯出來的app運行不了伏社。
《Protecting iOS Applications》:文章系統(tǒng)地介紹了如何保護iOS程序的代碼安全抠刺,防止反匯編分析。
fishhook- fishhook是Facebook開源的一個可以hook系統(tǒng)方法的工具洛口。
GesturePassword- 一個iOS手勢密碼功能實現(xiàn)矫付,iPad/iPhone 都可以用凯沪,沒有使用圖片第焰,里面可以通過view自己添加。keychain做的數(shù)據(jù)持久化妨马,利用蘋果官方KeychainItemWrapper類挺举。操作部分都在controller了杀赢。刪除直接用一下clear。
JMPasswordView- 簡單實用的手勢密碼湘纵,效果可自行調(diào)控脂崔。
仿密碼鎖-九宮格- 仿密碼鎖-九宮格,主要是使用UIButton 手勢事件 UIBezierPath畫圖梧喷,解鎖失敗彈出“密碼錯誤”砌左。
CoreLock- 本框架是高仿支付寶,并集成了所有功能铺敌,并非一個簡單的解鎖界面展示汇歹。個人制作用時1周多,打造解鎖終結(jié)者框架偿凭。
LikeAlipayLockCodeView- 高仿支付寶手勢解鎖(超級版)产弹。
Smile-Lock.swfit- 一個類似于iOS的解鎖界面。
PCGestureUnlock- 目前最全面最高仿支付寶的手勢解鎖弯囊,而且提供方法進行參數(shù)修改痰哨,能解決項目開發(fā)中所有手勢解鎖的開發(fā)。
ICPayPassWordDemo- CPayPassWordDemo匾嘱,一個模仿支付寶支付密碼輸入對話框小demo斤斧。
RSAESCryptor- 加密 RSA+AES Encryption/Decryption library for iOS. This library uses 2048-bit RSA and 256-bit key with 128-bit block size AES for encryption/decryption。
TouchID- 用法簡單的TouchID驗證框架:兩行代碼搞定霎烙。
OAuthSwift- OAuthSwift國外主流網(wǎng)站OAuth授權(quán)類庫折欠。
CryptoSwift- swift加密庫, 支持md5,sha1,sha224,sha256...。
測試及調(diào)試
HeapInspector- HeapInspector是一個用于檢測應(yīng)用中的內(nèi)存泄漏的開源調(diào)試工具吼过。
Crashlytics- Crashlytics 崩潰報告 崩潰日志使用說明锐秦。
UIViewController-Swizzled- 把你進入的每一個controller的類名打出來,如果看一些特別復(fù)雜的項目的時候直接運行demo就可以知道執(zhí)行次序了。
snoop-it- snoop-it比UIViewController-Swizzled好用盗忱,代碼托管在google上酱床。
Versions- 版本比較小工具。
MobileWebPageTest- MobileWebPageTest是用來測試移動網(wǎng)頁性能的軟件趟佃,它可以對頁面的加載和渲染過程進行截屏扇谣,協(xié)助開發(fā)者分析出頁面性能瓶頸。
KKLog- 一個日志管理系統(tǒng)闲昭。
CleanroomLogger- 相當(dāng)于 CocoaLumberjack 或 Log4j 的 Swift 版本罐寨,功能上甚至更強大。另外序矩,源代碼中已經(jīng)內(nèi)含了完整的 API 文檔鸯绿,使用非常方便。
Buildasaur- 自動測試框架 Buildasaur。
使用Quick框架和Nimble來測試ViewControler- Quick是一個用于創(chuàng)建BDD測試的框架瓶蝴。配合Nimbl毒返,可以為你創(chuàng)建更符合預(yù)期目標(biāo)的測試。
fastlane- 一套iOS開發(fā)和持續(xù)集成的命令行工具fastlane舷手,可以用來快速搭建CI甚至自動提交的開發(fā)環(huán)境拧簸。這套工具中包括了上傳ipa文件,自動截取多語言截屏男窟,生成推送證書盆赤,管理產(chǎn)品證書等一系列實用工具。
KIF- 是一個開源的用戶界面UI測試框架. 使用 KIF, 并利用 iOS中的輔助功能 API, 你將能夠編寫模擬用戶輸入歉眷,諸如點擊弟劲,觸摸和文本輸入,自動化的UI測試.
Quick- 用于Swift中的單元測試(也可用于Objective-C)姥芥,與Xcode整合在一起兔乞。如果你是Objective-C的粉絲,我建議用Specta代替這個凉唐,但是對Swift使用者來說,Quick是最佳選擇台囱。
Sleipnir- Swift的測試框架淡溯。
kiwi-bdd- TDD或BDD,objective-C語言的測試框架簿训,最流行的BDD測試框架了咱娶,Kiwi最受歡迎(根據(jù)github上的star數(shù)來推斷,行為描述和期望寫起來也比較易懂强品,至少我是這么認(rèn)為的)
iOS開發(fā)中的測試框架膘侮。specta- TDD或BDD,objective-c語言的測試框架的榛,用的人多琼了。
cedar- TDD或BDD,objective-c語言的測試框架夫晌,用的人少雕薪。
ViewMonitor- 能夠幫助 iOS 開發(fā)者們精確的測量視圖, 可直接在調(diào)試應(yīng)用中查看具體某個視圖的坐標(biāo), 寬高等參數(shù)。
MMPlaceHolder- 一行代碼顯示UIView的位置及相關(guān)參數(shù)晓淀。
XXPlaceHolder.swift- MMPlaceHolder的swift版本所袁。
KMCGeigerCounter- KMCGeigerCounter通過復(fù)雜和簡單的視圖演示了類似蓋革計數(shù)器的幀速計算功能。掉幀通常是可見的凶掰,但是很難區(qū)分55fps和60fps之間的不同燥爷,而KMCGeigerCounter可以讓你觀測到掉落5幀的情況蜈亩。
SwiftyBeaver- 一個完善的日志工具,支持彩色輸出局劲、輸出內(nèi)容到文件勺拣、重要性分級奶赠、多輸出目標(biāo)鱼填。工具執(zhí)行在后臺,不影響性能毅戈,可以極大提高開發(fā)效率苹丸。
swiftlog- 為Swift 應(yīng)用提供快捷添加日志信息的方法,Swift 包管理支持(SPM)苇经、 使用驚艷的 Rainbow 包輸出彩色日志赘理、支持寫入文件。
使用 swiftlog
Log.swift- 靈活扇单、易用商模、可定制輸出格式和主題風(fēng)格的日志類(Swift),支持控制臺彩色輸出。
Cuckoo.swift- Cuckoo.swift一款用法更接近于傳統(tǒng)單元測試 Mock 框架庫(區(qū)別之處在于需要用腳本預(yù)先生成 Mock 類)蜘澜。
XCGLogger.swift- XCGLogger.swift功能完整的日志管理類庫施流。
MSLeakHunter- 自動檢測 UIViewController 和 UIView 對象的內(nèi)存泄露。
MLeaksFinder 的使用參照CocoaLumberjack- 是一個快速鄙信、簡單瞪醋,但很強大的日志框架。
CocoaLumberjack- 是一個快速装诡、簡單银受,但很強大的日志框架。
ipapy- iOS項目自動打包腳本鸦采,并且上傳到fir.im宾巍,然后發(fā)送郵件給測試人員。
fbretaincycledetector- Facebook出品,通過Runtime監(jiān)測循環(huán)引用渔伯。
FBMemoryProfiler- Facebook出品,內(nèi)存檢測庫蜀漆。
FBMemoryProfiler 基礎(chǔ)教程。
FBAllocationTracker- Facebook出品,跟蹤oc對象的分配情況咱旱。
xctool- Facebook出的自動化打包工具确丢,它規(guī)范了輸出的log日志,而且一些錯誤信息也更為清晰一些吐限。
Peek.swift- 更友好鲜侥、手勢方式檢查界面內(nèi)組件布局信息(相當(dāng)于瀏覽器元素檢查功能),界面調(diào)試?yán)鳌?/p>
動態(tài)更新
waxPatch- 大眾點評的屠毅敏同學(xué)在基于wax的基礎(chǔ)上寫了waxPatch诸典,這個工具的主要原理是通過lua來針對objc的方法進行替換描函,由于lua本身是解釋型語言,可以通過動態(tài)下載得到,因此具備了一定的動態(tài)部署能力舀寓。
JSPatch- JSPatch 是一個開源項目(Github鏈接)胆数,只需要在項目里引入極小的引擎文件,就可以使用 JavaScript 調(diào)用任何 Objective-C 的原生接口互墓,替換任意 Objective-C 原生方法必尼。目前主要用于下發(fā) JS 腳本替換原生 Objective-C 代碼,實時修復(fù)線上 bug篡撵。官網(wǎng)判莉。(JSPatchX)[https://github.com/bang590/JSPatchX] JSPatch的XCode 代碼補全插件。
CTJSBridge- JCTJSBridge:a javascript bridge for iOS app to interact with h5 web view育谬。
AppleWatch
Tesla汽車AppleWatch app demo演示- 通過AppleWatch控制特斯拉汽車券盅,同時可以看到汽車的相關(guān)信息,比如剩余電量膛檀、可續(xù)行里程等锰镀,以及解鎖/上鎖車門、調(diào)節(jié)司機和乘客的四區(qū)域空調(diào)溫度咖刃、開啟車輛大燈泳炉、定位汽車等。源碼推薦說明僵缺。
WatchKit-Apps- WatchKit 開源小項目示例集錦胡桃。是不可多得地學(xué)習(xí) WatchKit 的示例式教程(1.如何創(chuàng)建一個簡單的交互式計數(shù)器;2.如何從手表上控制iOS app磕潮;3.如何在WatchKit app和iOS app之間共享數(shù)據(jù)翠胰;4.如何創(chuàng)建一個擁有不同背景色的數(shù)字時鐘;5.展示不同的UI層自脯;6.如何創(chuàng)建支持滑動手勢的應(yīng)用程序之景。)。
KYVoiceCurve- 類似Apple Watch中語音的聲音曲線動畫膏潮。
IGInterfaceDataTable- IGInterfaceDataTable是WKInterfaceTable對象的一個類別锻狗,可以讓開發(fā)者更簡單地配置多維數(shù)據(jù)。該項目使用類似UITableViewDataSource的數(shù)據(jù)源模式配置Apple Watch表格焕参,而不是將數(shù)據(jù)結(jié)構(gòu)扁平化成為數(shù)組轻纪。
Apple Watch開發(fā)教程資料匯總- Apple Watch開發(fā)教程資料匯總。
Stargate- 通過 iPhone 橋接實現(xiàn) Mac 與 Watch 的即時通訊叠纷。Stargate 通過封裝兩個優(yōu)秀的基礎(chǔ)類庫 MMWormhole 和 PeerKit 實現(xiàn)高效的通訊應(yīng)用刻帚。--swift
soon- 一款倒計時 WatchKit 示例應(yīng)用。作者從架構(gòu)的角度涩嚣,思考如何設(shè)計一款完整崇众、通訊高效且性能又好的 WatchKit 擴展應(yīng)用掂僵。該示例學(xué)習(xí)性非常強。--swift
watchOS-2-Sampler- 基于 watchOS 2 若干新特性顷歌,寫了相應(yīng)的示例代碼供大家學(xué)習(xí)锰蓬、參考。HMWatch- HMWatch是個有待完善的watchOS 2.0 HomeKit 應(yīng)用示例眯漩。
CocoaMultipeer- CocoaMultipeer這個開源框架支持OS X, iOS和watchOS設(shè)備間的點對點通信芹扭,解決watchOS和Mac之間通信的方案還是很有用的。
HighstreetWatchApp- 是電商平臺Highstreet針對App Watch的一款應(yīng)用坤塞,該demo中加載的是虛擬數(shù)據(jù)冯勉。
NKWatchChart- NKWatchChart是一個基于PNChart專門為Apple Watch 開發(fā)的圖表庫,目前支持 line, bar, pie, circle 和 radar 等 圖表形式澈蚌。
BeijingAirWatch- 國人的開源項目代碼 摹芙!WatchOS 2.0 Complication of Real-time Air Quality for Major Chinese Cities 蘋果表盤實時刷新北上廣沈蓉空氣質(zhì)量。