新聞中心
GitHub 上有哪些完整的 iOS-App 源碼值得參考
ProducthuntOSX
贛州ssl適用于網(wǎng)站、小程序/APP、API接口等需要進(jìn)行數(shù)據(jù)傳輸應(yīng)用場景,ssl證書未來市場廣闊!成為創(chuàng)新互聯(lián)公司的ssl證書銷售渠道,可以享受市場價格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:18982081108(備注:SSL證書合作)期待與您的合作!
Mac 上開源的 Product Hunt OSX 客戶端軟件
GanHuoCode
干貨集中營的第三方iOS客戶端
ESTMusicPlayer
一款基于 DOUAudioStreamer 開發(fā)的一款優(yōu)雅簡潔的音樂播放器.
beautifulApp
用Swift做的一個高仿最美應(yīng)用
Geofancy
The Geofancy iOS app. Helping you to get the best out of your automated home, geofencing, iBeacons at your hand.
CocoaChinaPlus
CocoaChina+是一款開源的第三方CocoaChina移動端。整個App都用Swift2.0編寫(除部分第三方OC代碼外,比如JPush和友盟)。
Dunk
Dribbble客戶端
ganchai
干柴(客戶端、服務(wù)端)
phphub-ios
PHPHub iOS客戶端
高仿糯米
高仿糯米
知乎日報
用swift2.0實現(xiàn)的知乎日報iOS客戶端
HackerNewsReader
Hacker News iOS客戶端
以下是我整理的iOS開源App的一部分,其中不乏有許多不錯的項目,后續(xù)更多都會整理在:iOS開源項目 - MobDevGroup上
iBBS-Swift
一款用Swift寫的BBS客戶端
SmallDay
用Swift 實現(xiàn)的高仿小日子
Swift-Radio-Pro
Professional Radio Station App, created w/ Swift 2.0
zulip-ios
Dropbox收購公司內(nèi)部社交服務(wù)商Zulip,然后全部開源,這是iOS App
DesignerNewsApp
Build a Swift App as a designer
firefox-ios
Firefox for iOS
iphone-app
開源中國的iPhone客戶端源碼
Git@OSC
Git@OSC iPhone 客戶端,方便用戶查看Git@OSC的項目以及簡單的操作issue等
Coding
Coding官方客戶端 GitHub地址
Coding iPad版
Coding官方客戶端
iOSSF
SegmentFault官方App
ioctocat
GitHub第三方客戶端
iTunesPicker
類似AppStore的一個應(yīng)用
Doppio
尋找最近的星巴克
swiftmi-app
swift迷 - 專業(yè)的Apple swift開發(fā)中文社區(qū) app版本 采用Swift實現(xiàn)
Cheddar
一個日程管理的App
BeeFancy
仿Fancy官方APP的WIREFRAME,基于BeeFramework
Anypic
類似于Instagram的一款A(yù)pp
SXNews
模仿網(wǎng)易新聞做的精仿網(wǎng)易新聞
iReddit
Reddit iPhone客戶端
readdit
Reddit iPad客戶端
豆瓣相冊
Slowslab iOS應(yīng)用 豆瓣相冊 精選集 開源項目
ChatSecure-iOS
Objective-C寫的XMPP聊天應(yīng)用
NotificationChat
Objective-C寫的完整的聊天應(yīng)用
Swift-ZhihuDaily
用Swift實現(xiàn)的仿知乎日報應(yīng)用
FakeZhihuDaily
仿知乎日報iOS客戶端
edhita
用Swift實現(xiàn)的iOS平臺開源文本編輯器。
ruby-china-for-ios
RubyChina官方客戶端
Meizi
豆瓣妹子圖iOS客戶端
HackerNews
用Swift寫的Hacker News 閱讀 iOS App
SwiftHN
另外一個用Swift寫的Hacker News 閱讀App
News-YC
Hacker News閱讀類iOS App
twidere
twitter 第三方客戶端
2048
用SpriteKit實現(xiàn)的2048游戲
PlainReader
一款 iOS(iPhone + iPad) 新聞類客戶端,內(nèi)容抓取自
swift-2048
用Swift實現(xiàn)的2048游戲
iOS-2048
用Objective-C實現(xiàn)的2048游戲
FlappySwift
用swift實現(xiàn)的flappy bird游戲
ECMobile_iOS
基于ECShop的手機商城客戶端
kxmovie
用ffmpeg寫的iOS視頻播放器
wikipedia-ios
維基百科官方App, 已上架
Sol
漂亮的扁平風(fēng)格的天氣App
Project-RainMan
用Swift寫的天氣類App
SwiftWeather
用Swift寫的天氣類App
v2ex
v2ex第三方iOS客戶端
V2EXClient
Swift實現(xiàn)的V2EX iOS客戶端
VPNOn
VPN連接管理,支持Apple Watch,已上架
Monkey
GitHub第三方iOS客戶端
JokeClient-Swift
基于swift,用糗事百科的API簡單做了一個糗百客戶端,可以瀏覽各種段子,瀏覽搞笑圖片,查看精彩評論等.
Watch
Dribbble第三方客戶端
MyOne-iOS
用OC寫的《一個》 iOS 客戶端
BaiduFM-Swift
百度FM swift語言實現(xiàn)
WNXHuntForCity
高仿城覓2.0 by-objective-c
Tomate
圓盤式計時器
eigen
The Art World in Your Pocket or Your Trendy Tech Company's Tote, Artsy's iOS app.
WWDC
WWDC app for OS X
怎么試運行iOS軟件的源代碼
分析一款ios應(yīng)用的源代碼方法如下:
1、首先提取整個應(yīng)用文件的二進(jìn)制代碼,建立for循環(huán)將機器所有字符串進(jìn)行排列組合并標(biāo)記后編譯。
2、再建立for將應(yīng)用文件二進(jìn)制代碼同所有的字符串排列組合編譯成的二進(jìn)制文件進(jìn)行對比。
3、最后通過標(biāo)記就能找到應(yīng)用的源代碼。
iOS開發(fā)怎么把官方源碼下載到本地能用xcode打開呀???
您好,很高興為您答疑,iOS11升級到iOS12沒有什么好處,建議您不要去更新一般的蘋果手機不要去升iOS系統(tǒng),除非迫不得已。升高系統(tǒng)會使手機變的卡頓和用電快
Discuz iOS應(yīng)用開發(fā) (bigApp iOS源碼分析 - 應(yīng)用配置獲取流程)
iOS應(yīng)用如何獲取BigApp插件里定義的配置?
在LoadingVC中請求數(shù)據(jù)
各個參數(shù)的詳細(xì)意義可能需要結(jié)合具體的功能再深入了解下。
這個首頁信息的內(nèi)容是需要自定義的,否則界面出來就是這個效果。
Tab的文字,圖標(biāo)也是在這邊加載的,可以在BigApp配置頁面修改。
相應(yīng)的配置修改 (Todo)
工時:
iOS 李明杰 MJRefresh源碼解析
MJRefresh 是著名開發(fā)者及培訓(xùn)講師李明杰老師的作品,到現(xiàn)在在github已經(jīng)有10000多顆star,真真是極好用的iOS下拉刷新(也支持上拉加載更)控件。本文主要素材來源有 正在學(xué)hybrid開發(fā)的iOS開發(fā)者 J_Knight 的文章和 github 上李明杰老師的用法介紹(主要是本文下部分)。
該框架的結(jié)構(gòu)設(shè)計得很清晰,使用一個基類MJRefreshComponent來做一些基本的設(shè)定,然后通過繼承的方式,讓MJRefreshHeader和MJRefreshFooter分別具備下拉刷新和上拉加載的功能。從繼承機構(gòu)來看可以分為三層,具體可以從下面的圖里看出來:
其中一條繼承鏈?zhǔn)沁@樣的
開發(fā)者一般使用場景是這樣的:
作者 在類目 UIScrollView+MJRefresh 中運用運行時關(guān)聯(lián)屬性函數(shù) objc_setAssociatedObject 和 objc_getAssociatedObject 對 UIScrollView 視圖控件添加了 mj_header 、 mj_footer 等屬性.
MJRefreshNormalHeader 是最下層的子類, headerWithRefreshingTarget 和 headerWithRefreshingBlock 是最上層基類 MJRefreshComponent 暴露出的靜態(tài)快捷構(gòu)造方法。把對象的創(chuàng)建下放到子類,此處明顯用到了工廠方法。編譯時類型 mj_header is classof MJRefreshHeader ,運行時類型 MJRefreshNormalHeader 是其子類,此處是典型的多態(tài)特性的應(yīng)用。
即面向接口編碼,而非面向?qū)崿F(xiàn)編碼。作者從最上層基類 MJRefreshComponent 即暴露接口
具體實現(xiàn):
具體實現(xiàn),首先來看一下該控件的基類:MJRefreshComponent:
這個類作為該控件基類,涵蓋了基類所具備的成份:狀態(tài),回調(diào)block等,大致分成下面這5種職能:
監(jiān)聽的聲明:offset、size、state
對于監(jiān)聽的處理:
從上面等結(jié)構(gòu)圖可以看出,緊接著這個基類,下面分為codeMJRefreshHeader/code和codeMJRefreshFooter/code,這里順著codeMJRefreshHeader/code這個分支向下展開:
codeMJRefreshHeader/code繼承于codeMJRefreshComponent/code,它做了這幾件事:
初始化有兩種方法:動作-目標(biāo)/block塊函數(shù) 做回調(diào)
通過重寫codeprepare/code方法來設(shè)置header的高度:
通過重寫placeSubviews方法來重新調(diào)整y值:
這里提供一張圖來體現(xiàn)三個狀態(tài)的不同:
這個類是codeMJRefreshHeader/code類的子類,它做了兩件事:
給一張圖,讓大家直觀感受一下這兩個控件:
這個類通過覆蓋父類三個方法來實現(xiàn)上述兩個實現(xiàn):
在這里,將每一個狀態(tài)對應(yīng)的提示文字放入一個字典里面,codekey/code是狀態(tài)的codeNSNumber/code形式
這里主要是對codelastUpdatedTimeLabel/code和codestateLabel/code進(jìn)行布局。要注意codelastUpdatedTimeLabel/code隱藏的情況。
在這里,根據(jù)傳入的codestate/code不同,在codestateLabel/code和codelastUpdatedTimeLabel/code里切換相應(yīng)的文字。
codeMJRefreshNormalHeader /code繼承于 codeMJRefreshStateHeader/code,它主要做了兩件事:
給一張圖來直觀感受一下這兩個view:
同codeMJRefreshStateHeader/code一樣,也是重寫了父類的三個方法:
到此為止,我們已經(jīng)從codeMJRefreshComponent/code到codeMJRefreshNormalHeader/code的實現(xiàn)過程看了一遍??梢钥闯?,作者將codeprepare/code,codeplaceSubviews/code以及 setState: 方法作為基類的方法,讓下面的子類去一層一層實現(xiàn)。
而每一層的子類,根據(jù)自身的職責(zé),分別按照自己的方式來實現(xiàn)這三個方法:
這樣做的好處是,如果想要增加某種類型的 header ,只要在某一層上做文章即可。例如該框架里的 MJRefreshGifHeader ,它和 MJRefreshNormalHeader 屬于同一級,都是繼承于 MJRefreshStateHeader 。因為二者都具有相同形式的 stateLabel 和 lastUpdatedTimeLabel ,唯一不同的就是左側(cè)的部分:
還是提供一張圖來直觀感受一下:
下面我們來看實現(xiàn):
它提供了兩個接口,是用來設(shè)置不同狀態(tài)下使用的圖片數(shù)組的:
和MJRefreshNormalHeader一樣,它也重寫了基類提供的三個方法來實現(xiàn)顯示gif圖片的職能。
iOS開發(fā)-需要了解的Shell腳本語法
Shell 是一個用 C 語言編寫的程序,它是用戶使用 Linux 的橋梁。Shell 既是一種命令語言,又是一種程序設(shè)計語言。Shell 腳本(shell script),是一種為 shell 編寫的腳本程序。在iOS開發(fā)中,我們通常編寫一些自動化的腳本文件,來提高我們的生產(chǎn)效率,其本質(zhì)就是通過Shell腳本對一些 xcodebuild , xcode-select , xcpretty , xcrun 等指令的封裝。本篇文章,我們就針對 Shell 腳本的語法,做一些羅列,以輔助我們?nèi)ネ瓿梢恍┳詣踊庋b。
執(zhí)行腳本
.sh 文件為 Shell 腳本文件格式,通過 sh 指令執(zhí)行腳本文件
執(zhí)行結(jié)果:
1.通過 echo 輸出變量時,需要使用 $ 或者 ${} 修飾
2. (重點)定義變量時,等號之間不能有空格,不然會誤認(rèn)為變量為一個指令
3.可以直接修改 name 變量的值,即當(dāng)前 name 默認(rèn)為 readwrite 權(quán)限
4.我們給 _var 用 readonly 修飾后,再修改值會拋出異常
執(zhí)行結(jié)果:
執(zhí)行結(jié)果:
執(zhí)行結(jié)果:
執(zhí)行結(jié)果:
$@ 和 $* 都是輸出所有參數(shù),前者是 "$1" "$2" "$3" "$4" ,后者是 "$1 $2 $3 $4"
執(zhí)行結(jié)果:
注意:條件表達(dá)式要放在方括號之間,并且要有空格,例如: [$a==$b] 是錯誤的,必須寫成 [ $a == $b ] 。
關(guān)于文件檢測運算符,這里還是都羅列一下吧,比較重要:
執(zhí)行結(jié)果:
執(zhí)行結(jié)果:
執(zhí)行結(jié)果:
執(zhí)行結(jié)果:
2.有參數(shù)
執(zhí)行結(jié)果:
注意: $10 不能獲取第十個參數(shù),獲取第十個參數(shù)需要 ${10} .
使用 man 查詢 指令文檔
比如我們想查看 xcodebuild 指令下都有哪些操作,直接在終端執(zhí)行:
當(dāng)我們不清楚某一個指令下的操作時,就可以通過 man 查詢,然后輔助我們來編寫 Shell 指令。
在iOS下,了解下這些 Shell 語法就足夠了,已經(jīng)可以幫助我們完成大部分的 Shell腳本 的編寫或者閱讀別人的 Shell 源碼。不需要記憶,簡單看下就可以。
當(dāng)前名稱:ios開發(fā)源碼,ios 開發(fā)版
地址分享:http://fisionsoft.com.cn/article/dsdpgph.html