- swift 3.0
- xcode 9.2
- cocoapods
- iOS 10.0及以上
如果你的模擬器出現(xiàn)了莫名其妙的問題,比如單擊操作需雙擊,點(diǎn)擊穿透,push頁面卡住等缤弦,此問題為mac mini某些處理器不兼容某系處理器所致,可以嘗試執(zhí)行以下命令解決(最后的參數(shù)1可換為2嘗試):
defaults write com.apple.CoreSimulator.IndigoFramebufferServices FramebufferEmulationHint 1
整體結(jié)構(gòu)
- View & Controller --- xib來對每個頁面進(jìn)行 autolayout 布局
- Network --- moya作為網(wǎng)絡(luò)請求組件進(jìn)行network request
- API 定義
- API Provider 網(wǎng)絡(luò)請求實(shí)現(xiàn)
- Request/Response Collection
- ObjectMapper 定義返回數(shù)據(jù)與變量map
- Model --- 定義可復(fù)用的數(shù)據(jù)結(jié)構(gòu)
- Manager --- 單例模式彻磁,處理每個網(wǎng)絡(luò)請求的邏輯碍沐,返回所需格式
- MockData --- Mock json格式的數(shù)據(jù),用作模擬網(wǎng)絡(luò)請求數(shù)據(jù)衷蜓,便于開發(fā)
- Common --- 公共組件累提、工具方法、公共常量磁浇、擴(kuò)展等
- Localizable.string(en/zh) --- I18N國際化
- Assets.xcassets --- 靜態(tài)圖片資源
- AppDelegate --- 重要的app代理斋陪,包括入口頁面設(shè)置,app各個生命周期事件設(shè)置等
除此之外:
- 若要實(shí)現(xiàn)app企業(yè)分發(fā)或者上架App Store扯夭,需要蘋果賬號付費(fèi)之后在蘋果開發(fā)者網(wǎng)站后臺創(chuàng)建相應(yīng)的證書文件鳍贾,并在項(xiàng)目xcode如下界面選擇此賬號。
- 很多App需要用到蘋果的官方推送notification service交洗,此時需要開發(fā)者自己搭建服務(wù)器進(jìn)行推送,大致流程為:
- 應(yīng)用安裝啟動后自動生成一個 device token 橡淑,此token為識別設(shè)備的唯一ID(但每次安裝會變)
- 當(dāng)需要推送時构拳,開發(fā)者的服務(wù)器利用蘋果官方SDK 向蘋果推送服務(wù)器發(fā)送請求,請求中包括 device token、推送內(nèi)容以及推送未讀數(shù)量
- 蘋果服務(wù)器收到請求后即按照請求參數(shù)向指定device推送指定內(nèi)容
具體實(shí)踐可參考此文章置森,若打不開需要掛梯子斗埂。
前端開發(fā),無外乎兩個方面:頁面布局(元素+事件)凫海、網(wǎng)絡(luò)請求(Restful+Json)