iOS開發(fā):20個(gè)幫你簡(jiǎn)化移動(dòng)app開發(fā)流程的工具
一、原型和設(shè)計(jì)
有了一個(gè)很好的創(chuàng)意后,你要做的不是立刻編程,而是設(shè)計(jì)UI和創(chuàng)建原型,這樣你才能知道app如何運(yùn)行,根據(jù)用戶體驗(yàn)需要做哪些調(diào)整。
AppCooker ($39.99) 不僅是一個(gè)創(chuàng)建原型的優(yōu)秀工具,它提供的許多功能還可以幫助你將程序發(fā)布到App store中。它集成了Dropbox,Box.net和 photo roll,你可以直接將圖標(biāo)和其它UI資源導(dǎo)入到原型設(shè)計(jì)工具中。你可以利用漸變和填充等功能來創(chuàng)建簡(jiǎn)單的形狀,并且可以訪問幾乎所有蘋果默 認(rèn)提供的UI控件。
如果你不準(zhǔn)備深入圖形設(shè)計(jì),可以使用App Cooker將圖片資源合理的放在一起,以創(chuàng)建一個(gè)粗糙的、統(tǒng)一的原型。AppCooker還有一個(gè)很容易使用的動(dòng)態(tài)鏈接功能,通過該功能,你可以把各種畫面連接起來(在UX設(shè)計(jì)階段中畫面的各種連接方法)。
Pop就是這樣一款應(yīng)用。有了它之后,做出一款產(chǎn)品原型只需要五個(gè)工具:Pop、iPhone、紙、筆和橡皮擦。讓你輕松做出可在iPhone上演示的應(yīng)用原型。
畫圖:在紙上畫出完整構(gòu)架圖,最常規(guī)的幾個(gè)頁面、按鈕、主流程跑通就好。
拍照:用POP拍下這些草圖,應(yīng)用會(huì)自動(dòng)調(diào)整亮度和對(duì)比度使其清晰可見,存到POP app內(nèi)部,
編輯:將拍下的照片按你理想中的順序放置,利用鏈接點(diǎn)描摹出各個(gè)板塊之間的邏輯關(guān)系,點(diǎn)擊Play就可以演示整個(gè)應(yīng)用了。
Make app icon是一個(gè)可以幫你快速生成app圖標(biāo)的web工具。Make app icon可以幫你生成蘋果指導(dǎo)方針?biāo)f的各種分辨率icon,包括retina設(shè)備和非retina設(shè)備在內(nèi)。另外,還可以制作Android平臺(tái)的多個(gè)icon。
雖然看起來是個(gè)很簡(jiǎn)單的工具,但可以幫你節(jié)省不少時(shí)間,使用起來也比較方便。你在Make app icon網(wǎng)頁添加你將要用來做icon的圖片,然后留下 你的郵箱地址,系統(tǒng)最終會(huì)以zip文件形式發(fā)送給你,支持PNG、JPG以及PSD等不同格式文件。(發(fā)送時(shí)間會(huì)有點(diǎn)長(zhǎng)...)
你也會(huì)意識(shí)到之前你在閱讀各個(gè)icon大小說明和調(diào)整每個(gè)icon方面浪費(fèi)了多少時(shí)間。
Fluid UI 是一款用于移動(dòng)開發(fā)的Web原型設(shè)計(jì)工具,可以幫助設(shè)計(jì)師高效地完成產(chǎn)品原型設(shè)計(jì)。優(yōu)點(diǎn):無設(shè)備限制,無平臺(tái)限制(Windows、Mac以及Linux 系統(tǒng)),支持Chrome和Safari瀏覽器(Chrome瀏覽器上的app也可離線使用)。采取拖拽的操作方式,不需要程序員來寫代碼。另 外,F(xiàn)luid UI資源庫非常豐富,有針對(duì)iOS、Android以及Windows 8的資源。如果你覺得庫存資源不能滿足你的需求,你也可以自行添加。
對(duì)于喜歡快速開發(fā)的小團(tuán)隊(duì)來說,F(xiàn)luid UI高保真模擬用戶體驗(yàn)和操作非常適合。開發(fā)人員甚至在創(chuàng)建原型后還可以進(jìn)行觸摸測(cè)試,分享移動(dòng)用戶體驗(yàn)。另 外,開發(fā)人員還可以在Fluid UI上進(jìn)行迭代開發(fā)!Fluid UI提供免費(fèi)版本和付費(fèi)版本:免費(fèi)版支持1個(gè)項(xiàng)目,其余根據(jù)支持項(xiàng)目數(shù)目不同進(jìn)行收 費(fèi),比如29美元/月支持3個(gè)項(xiàng)目,49美元/月支持10個(gè)項(xiàng)目,129美元/月支持10個(gè)以上項(xiàng)目。
Sketch 是一款Mac上的app,是一款優(yōu)秀的Vector/Pixel混合型開發(fā)工具,可以幫你創(chuàng)建retina圖像。這款app可以當(dāng)做是Photoshop 和Fireworks的替代品,包含大量開發(fā)者友好型功能,比如“export to css”和 “export for retinaoptions”。Get Sketch (售價(jià)$49,15天免費(fèi)試用)。
歡迎各位繼續(xù)補(bǔ)充,下頁為您介紹開發(fā)相關(guān)簡(jiǎn)化工具
#p#
二、開發(fā)
一旦你有了初步的UI和設(shè)計(jì)元素,你就要開始編碼了,下邊一些工具或許可以幫到你。
SourceTree是一個(gè)免費(fèi)的Mac軟件,主要用于Git和Mercurial版本控制。根據(jù)我的經(jīng)驗(yàn),大多數(shù)的iOS開發(fā)者都使用Git,另外還有一小部分人在使用Mercurial和SVN。
SourceTree 可以幫助你進(jìn)行源代碼控制計(jì)劃,跟傳統(tǒng)的復(fù)雜的命令行版本控制軟件相比,SourceTree是一款獨(dú)一無二的GUI工具。對(duì)于新手Git用戶來 說,SourceTree使用起來簡(jiǎn)單且高效,對(duì)于經(jīng)驗(yàn)豐富的app開發(fā)人員來說,SourceTree有著非常強(qiáng)大的功能。
另外,SourceTree還有一些很棒的功能,比如incoming和outgoing變更,以及直觀的分支管理功能。SourceTree可以讓你在操作終端上節(jié)省非常多的時(shí)間。
做Web開發(fā)的人都聽過HTML5 boilerplate,此次我們介紹的是iOS Boilerplate。你可以借助iOS Boilerplate 省掉很多項(xiàng)目的初始編碼工作。iOS Boilerplate 不是一個(gè)框架,是一個(gè) iOS 應(yīng)用程序的基礎(chǔ)模板,但又包含一些相同的固件和一些廣泛使 用的第三方類庫,這樣你就不用費(fèi)力氣再造車輪。
另外,你可以對(duì)Boilerplate進(jìn)行修改和擴(kuò)展,以滿足你的需求,不管是個(gè)人app還是商業(yè)類app。
有時(shí)候,把a(bǔ)pp展現(xiàn)在大屏幕上會(huì)比較有用,也或許你想展示一個(gè)修復(fù)了bug的屏幕截圖,但你又不想進(jìn)入全屏的視頻編輯模式,那么AirServer就是一個(gè)很好的選擇。
AirServer 是一個(gè)非常簡(jiǎn)單的Mac和PC應(yīng)用,它的作用是把你的iPhone 或者iPad的屏幕搬到電腦上。AirServer能夠通過本地網(wǎng)絡(luò)將音頻、照片、視 頻以及支持 AirPlay 功能的第三方App,從 iOS 設(shè)備無線傳送到 Mac 電腦的屏幕上,把Mac變成一個(gè)AirPlay終端。
安裝AirServer軟件后,iPhone或者iPad上會(huì)顯示可用于AirPlay的設(shè)備列表,選擇你的電腦,你的iPhone屏幕就會(huì)立即呈現(xiàn)在電腦上,就像Apple TV與電視的關(guān)系一樣。這對(duì)團(tuán)體demo非常有用,適合大的開發(fā)團(tuán)隊(duì)進(jìn)行app相關(guān)測(cè)試。
Easy APNS 是一個(gè)用來管理蘋果推送通知的PHP腳本。如果你對(duì)蘋果推送通知后端部分比較感興趣,而恰巧你有熟悉PHP,那么Easy APNS是你工具箱中必須的工 具。Easy APNS完全開源,并且設(shè)置非常簡(jiǎn)單。通過使用免費(fèi)的、開源的PHP腳本,Easy APNS為開發(fā)者提供了一種很直觀的可以用來控制整個(gè) 推送通知后端部分的方式。
Slash是iOS的一個(gè)開源庫,它為NSAttributedStrings的樣式添加了擴(kuò)展標(biāo)記語言,類似于HTML,但是你可以定義每個(gè)標(biāo)簽的意義,這使它非常具有可擴(kuò)展性。
在 iOS6中顯示屬性字符串非常簡(jiǎn)單,但是以編程的方式創(chuàng)建他們就不容易了。假如在不使用界面生成器的情況下,你要在app中使用帶屬性字符串,你就需要調(diào) 整NSRanges和字體屬性。在Slash的幫助下,你可以簡(jiǎn)單地在iOS開發(fā)中使用屬性字符串,并且生成的代碼更為干凈和整潔。
歡迎各位繼續(xù)補(bǔ)充,下頁為您介紹服務(wù)器端服務(wù)相關(guān)簡(jiǎn)化工具
#p#
三、服務(wù)器端的服務(wù)
在過去幾年,我們見證了針對(duì)移動(dòng)開發(fā)者的服務(wù)器端業(yè)務(wù)的快速增長(zhǎng),這些服務(wù)宣稱可以解決類似于存儲(chǔ)、內(nèi)容交付以及實(shí)時(shí)功能等。較高可靠性和工具集可以幫助開發(fā)者有效降低開發(fā)時(shí)間,可能是時(shí)候考慮在你的下個(gè)app中使用服務(wù)器服務(wù)。以下是有關(guān)于該項(xiàng)服務(wù)的幾個(gè)簡(jiǎn)短介紹:
Firebase 是一家位于舊金山的后端服務(wù)提供商,主要關(guān)注后端數(shù)據(jù)實(shí)時(shí)處理,適用于對(duì)數(shù)據(jù)實(shí)時(shí)性要求很高的app,如網(wǎng)頁游戲、協(xié)作工具等。借助Firebase的服 務(wù),你可以為用戶打造獨(dú)一無二的體驗(yàn),尤其適合那些多人玩家的app?,F(xiàn)在Firebase 為多個(gè)應(yīng)用提供數(shù)據(jù)庫服務(wù),包 括 Scratchpad.io、Twitch 以及 Klout等。
Firebas 的服務(wù)使用起來非常簡(jiǎn)單,只需引用一行JS代碼,即可配置好Web App 所需的數(shù)據(jù)庫存儲(chǔ)服務(wù)。簡(jiǎn)化了編碼工作,使用戶可以專注問題本身,節(jié)省了開發(fā)時(shí)間。另外,使用Firebase服務(wù),開發(fā)者無需購置服務(wù)器即可實(shí)現(xiàn)app實(shí)時(shí)數(shù)據(jù)更新,用戶無需刷新頁面就能獲得新數(shù)據(jù)。Firebase已經(jīng)發(fā)布了 全新的iOS SDK,同樣可以幫助iOS開發(fā)者解決一定的數(shù)據(jù)存儲(chǔ)問題。
關(guān)于推送通知,除了蘋果的APNS之外,我們還有很多其他的選擇,Urban Airship就是其中之一。Urban Airship是移動(dòng)開發(fā)領(lǐng)域最老的、最可信的推送服務(wù)提供商之一,公司是位于俄勒岡州波特蘭地區(qū)。他們不僅僅做普通的推送通知,他們還發(fā)明了“Rich Push”,可以推送更豐富的內(nèi) 容,例如html、音頻、視頻等。
2009年,Urban Airship就開始為iOS開發(fā)者提供推送服務(wù),開發(fā)者可以很簡(jiǎn)單地把它整合進(jìn)自己的app。一直以來,Urban Airship鞏 固核心業(yè)務(wù)的同時(shí)也進(jìn)行了創(chuàng)新,目前推送內(nèi)容涉及geofencing、location targeting、location history以及 passbook creation。Urban Airship的位置感知功能可以在合適的時(shí)間給你的手機(jī)用戶發(fā)送正確的信息。
Kinvey 宣稱可以幫開發(fā)者走出創(chuàng)建和維護(hù)移動(dòng)后端的困境。Kinvey是一項(xiàng)跨平臺(tái)的服務(wù),有著多項(xiàng)功能,比如用戶管理、業(yè)務(wù)邏輯、數(shù)據(jù)存儲(chǔ)、推送通知、跨CDN 大量文件存儲(chǔ)、分析、自動(dòng)化版本管理以及其他功能。不管是個(gè)人開發(fā)者還是企業(yè)級(jí)開發(fā)者,Kinvey都是一個(gè)強(qiáng)大的平臺(tái)。
Parse是一個(gè)功能豐富的后端支持平臺(tái),它可以幫助開發(fā)者處理數(shù)據(jù)存儲(chǔ)和擴(kuò)展,降低iOS或andoird應(yīng)用開發(fā)難度,從而讓開發(fā)者把時(shí)間和精力用在打造優(yōu)質(zhì)用戶體驗(yàn)上。
Parse還具有社交和通知推送功能。此外,如果你想在app中添加電子商務(wù)系統(tǒng),Parse與Stripe合作開發(fā)的開源app可以給你展示它是如何做到了這一點(diǎn)。Parse具有自己的特色、文檔以及教程,并且在該領(lǐng)域不斷進(jìn)行著創(chuàng)新。
StackMob 同樣是一家提供移動(dòng)應(yīng)用后端服務(wù)解決方案的公司,該公司開發(fā)的基于云計(jì)算的系統(tǒng),可以簡(jiǎn)化移動(dòng)應(yīng)用的開發(fā)和部署,他們的目標(biāo)是通過一個(gè)接口滿足移動(dòng)應(yīng)用開 發(fā)者的所有需求。如果你是在做一個(gè)團(tuán)體項(xiàng)目,那么StackMob的協(xié)調(diào)工具可以大大降低開發(fā)者、設(shè)計(jì)師以及客戶端之間的協(xié)同開發(fā)難度。
StackMob還為app開發(fā)者提供了app分析、S3集成、Facebook/Twitter集成、廣告以及地理位置等服務(wù)。StackMob支持iOS、Android以及HTML5平臺(tái)。
歡迎各位繼續(xù)補(bǔ)充,下頁為您繼續(xù)介紹測(cè)試與營(yíng)銷相關(guān)簡(jiǎn)化工具
#p#
四、測(cè)試和營(yíng)銷
測(cè)試是app開發(fā)過程中非常重要的一步,在app在上架應(yīng)用商店之前,開發(fā)者要確保自己的app能夠流暢地運(yùn)行,可以節(jié)省大量時(shí)間,也可降低客服人員的工作量。市場(chǎng)可用于測(cè)試、獲得用戶反饋和app崩潰報(bào)告的服務(wù)非常多,以下提供幾種共參考:
TestFlight 是很多開發(fā)者都使用過的測(cè)試服務(wù),包括反饋、實(shí)時(shí)崩潰提醒以及應(yīng)用內(nèi)可以引起特定評(píng)分的用戶反饋提示。任何一項(xiàng)服務(wù)都會(huì)有瑕疵,TestFlight也不 例外,它在管理測(cè)試用戶提供的文件方面有點(diǎn)缺陷。前不久TestFlight推出了處于封閉測(cè)試中的新的移動(dòng)分析服務(wù) FlightPath,F(xiàn)lightPath似乎要取代自家的TestFlight Live分析服務(wù)。TestFlight Live于2012年推 出。TestFlight 現(xiàn)在已經(jīng)支持 Android 平臺(tái)app測(cè)試。
Pieceable Viewer 是一款產(chǎn)能讓人在瀏覽器里直接運(yùn)行iOS App的產(chǎn)品,可以讓開發(fā)者更為簡(jiǎn)單直觀地展示和測(cè)試自己的app,實(shí)際上就是一項(xiàng)把a(bǔ)pp搬到網(wǎng)頁上的服務(wù)。 開發(fā)者可以在網(wǎng)頁上查看、測(cè)試自己的app,而不必非得把a(bǔ)pp裝在設(shè)備上才能實(shí)現(xiàn)。另外可以很方便地收集用戶信息反饋,用戶也不必非得有一款蘋果手機(jī)才 能接觸到這款app。
CEO Fred Potter曾說:“它是在網(wǎng)絡(luò)上分享iPhone app最簡(jiǎn)單的辦法,Pieceable Viewer是使用Flash來模擬應(yīng)用程序的功能,而不對(duì)開發(fā)者所編寫的代碼進(jìn)行校正。”
Smore 是一個(gè)在線快速制作電子宣傳單的web app,不僅僅支持圖片和文本,還支持視頻多媒體內(nèi)容。使用Smore為你的app制作電子宣傳單只需要你向 AppStore提交應(yīng)用時(shí)所需的截圖、描述等。Smore提供多個(gè)可選主題,如果你對(duì)系統(tǒng)生成的電子宣傳單不滿意,你也可以自行編輯。此外,smore 還提供流量分析服務(wù),你可以清楚地知道用戶如何發(fā)現(xiàn)你的app。
Tokens簡(jiǎn)化了iTunes Connect生成和分發(fā)免費(fèi)促銷碼的過程,不管是發(fā)布新app還是更新app版本。此外,Tokens還可以跟蹤你的促銷碼分發(fā)對(duì)象,以及他們是否兌換了促銷碼,這可以幫助你優(yōu)化數(shù)量有限(50)的促銷碼,避免浪費(fèi)。
Countly 為開發(fā)者提供了實(shí)時(shí)的、開源移動(dòng)分析平臺(tái),通過可視化的方式將收集自手機(jī)用戶的數(shù)據(jù)展現(xiàn)出來,從而給開發(fā)者可行的建議。開發(fā)者可以輕易地將Countly 服務(wù)器端代碼部署在自己的服務(wù)器上,并將開發(fā)工具包整合進(jìn)自己的app中。目前,Countly分析系統(tǒng)有iOS 和 Android兩種版本的開發(fā)包。 如果你熟悉的Google Analytics和Flurry,那么Countly也可提供相同的功能。