先奉上鏈接地址:iKiss?(一款用于測(cè)試HTTP/HTTPS服務(wù)器接口的工具)
好久沒更新簡(jiǎn)書內(nèi)容了,排除個(gè)人松懈的因素之外(當(dāng)然,這點(diǎn)我是不會(huì)輕易承認(rèn)的??),主要是公司最近一個(gè)月連續(xù)上馬兩個(gè)項(xiàng)目,除了讓人無法拒絕又蛋疼不已需求和欲壑難填的產(chǎn)品人員經(jīng)常揮斥方遒也是造成掉(延)血(期)傷(更)害(新)的罪魁.好了,不多牢騷,這次來分享一下在開發(fā)Mac OSX APP中的技術(shù)和非技術(shù)的體會(huì),為了不耽誤大家的寶貴時(shí)間,先列個(gè)題目大綱,然后各位挑重點(diǎn)就好了.
技術(shù)方面:
1. Mac OSX下的沙盒限制
2. AFNetworking的自簽名HTTPS證書設(shè)置
3.NSPasteboard 系統(tǒng)剪切板的使用注意
非技術(shù)方面
1.獲取AppIcon的常用途徑
2.如何進(jìn)行App 測(cè)試
3. 推廣App的問題
技術(shù)正題:
1. Mac OSX 下的沙盒限制
Mac OSX的沙盒是從iOS中借鑒過來的,但又有所不同,而且,OSX下,一款應(yīng)用是否啟用沙盒是可選的,選擇的唯一標(biāo)準(zhǔn)就是將來你的這個(gè)App是否需要上架Mac OSX App store , 在用Xcode打包上傳時(shí),會(huì)提示你進(jìn)行選擇,具體的操作入下圖:
選擇App Sandbox后,設(shè)置為ON,系統(tǒng)會(huì)在項(xiàng)目的工程目錄中生成一個(gè) 項(xiàng)目名.entitlements文件
完成這個(gè)沙盒設(shè)置后,你的App訪問的所有資源都將受到限制,這里與iOS不同的是,默認(rèn)情況下iOS是不需要在這里設(shè)置網(wǎng)絡(luò)權(quán)限的,但OSX下,如果你需要進(jìn)網(wǎng)絡(luò)訪問(例如你試用AFN進(jìn)行網(wǎng)絡(luò)請(qǐng)求),請(qǐng)記得勾選網(wǎng)絡(luò)設(shè)置:
具體選client還是server要根據(jù)你的App功能來確定了,這個(gè)就不多說了.
如果你設(shè)置后依然無法正常訪問網(wǎng)絡(luò),可能還需要在Info.plist設(shè)置一下ATS:
當(dāng)然,沙盒不僅僅限制網(wǎng)絡(luò)通信,如果你要對(duì)本地文件系統(tǒng)進(jìn)行訪問,也需要在沙盒里進(jìn)行設(shè)置,否則將無法進(jìn)行訪問對(duì)應(yīng)的資源:
2 . AFNetworking的自簽名HTTPS證書
這個(gè)網(wǎng)絡(luò)上講的很多,就不啰嗦了,直接上代碼:(注意點(diǎn)是要將服務(wù)器給的證書轉(zhuǎn)為cer格式)
通常自定義HTTPS簽名證書時(shí),服務(wù)器端往往會(huì)生成兩個(gè)文件(server.crt,client.crt),要注意,客戶端需使用的是服務(wù)器端的server.crt轉(zhuǎn)換后的cer文件
3. NSPasteboard 系統(tǒng)剪切板使用注意
在iKiss的開發(fā)中,用到了將系統(tǒng)剪切板中的內(nèi)容復(fù)制到對(duì)應(yīng)的文本框中,這樣可以節(jié)省用戶輸入麻煩操作,點(diǎn)一下粘貼按鈕就完成了.
這里的注意點(diǎn)是,系統(tǒng)的剪切板中的內(nèi)容可能是不同的數(shù)據(jù)類型(圖片,文件,字符串等),因此在獲取剪切板內(nèi)容是,需要進(jìn)行一下過濾,如果當(dāng)前剪切板中的內(nèi)容不是我們需要,那么就忽略,防止造成數(shù)據(jù)獲取錯(cuò)誤,蘋果提供了常用的類型常量供我們進(jìn)行判別時(shí)使用:
簡(jiǎn)單示例代碼如下:
非技術(shù)話題:
1. 獲取AppIcon的常用途徑
這里主要是針對(duì)個(gè)人開發(fā)來說(如果是公司團(tuán)隊(duì),直接找UI就可以了),就我個(gè)人的情況說,比較推薦的是阿里圖庫iconfont,我個(gè)人的上架應(yīng)用XCRegex?和?JProperty?以及現(xiàn)在的iKiss?基本都是從這里找到的(如果圖片侵權(quán)還望作者告知).
iKiss還在測(cè)試階段,后期也功能穩(wěn)定也考慮上架Mac OSX App Store,現(xiàn)在是免費(fèi)內(nèi)測(cè)哦,希望大家多提問題.
另外,如果你精通PS或者熟悉Sketch,那自己動(dòng)手定制也是非常不錯(cuò)的體驗(yàn).
關(guān)于AppIcon方面基本都是八仙過海,挑喜歡的就好了.
2.如果進(jìn)行App 測(cè)試
一個(gè)App的測(cè)試階段還是比較重要的,但對(duì)于個(gè)人開發(fā)的作品,沒有公司專業(yè)的測(cè)試團(tuán)隊(duì)支持怎么辦?怎么辦?怎么辦?
一句話: 發(fā)動(dòng)群眾?
讓群眾知道的途徑: 1.朋友圈 2.技術(shù)群.3.平臺(tái)發(fā)文(微博啊,簡(jiǎn)書啊以及其他你常去的平臺(tái)或論壇)
因?yàn)锳pp還沒上架,所以你的提供測(cè)試鏈接可用HockeyApp生成.
3. 推廣App的問題
普通來說,技術(shù)開發(fā)一定就宅或者內(nèi)向,但從運(yùn)營(yíng)的角度看問題,技術(shù)人員還是有很大的短板的,關(guān)于這方面我也常常困惑,感覺在各個(gè)朋友圈或者技術(shù)群里推的話,跟生活中到處貼小廣告差不多,我又比較愛惜羽翼,只好在自己的技術(shù)文章里打打廣告,慢慢積累吧.
如果你有好的建議,請(qǐng)留言或評(píng)論,讓更多有這方面幫助的朋友也可以看到~