|
1.項(xiàng)目結(jié)構(gòu) 現(xiàn)在的MVP模式越來越流行。就默認(rèn)采用了。 如果項(xiàng)目比較小的話:
如果項(xiàng)目比較大,上面的方式一定會(huì)造成presenter和view里近百個(gè)文件??聪寡巯盗小M扑]下列方式:
2.配置主題 對(duì)于不遵守Material Design的項(xiàng)目無視這一步。 1.先在color.xml中寫好需要的顏色:
注意color.xml是配色表。應(yīng)該是描述顏色而不是對(duì)字體顏色,背景顏色等的定義。這樣能防止相近的顏色重復(fù)定義。而導(dǎo)致界面顏色不統(tǒng)一。 2.在style.xml里定義主題:
在res目錄下,創(chuàng)建一個(gè)values-v21目錄,再創(chuàng)建一個(gè)style.xml:
然后在AndroidManifest.xml文件中修改application的theme屬性為上面定義的AppTheme.即可實(shí)現(xiàn)沉浸式狀態(tài)欄。 然后關(guān)于Theme與Toolbar的詳細(xì)設(shè)置參考我另兩篇博客:
3.依賴庫與SDK 必選的庫: gradle-retrolambda——Android的lambda表達(dá)式插件 fresco——Android最屌圖片加載庫 material-dialogs ——Material Dialog向下兼容庫 material-ripple——Ripple向下兼容庫 fastjson——最快JSON解析 butterknife——View注解庫和配套插件android-butterknife-zelezny ActiveAndroid——數(shù)據(jù)庫注解庫。 RxAndroid——Rx函數(shù)響應(yīng)式編程中文文檔 retrofit,okhttp,sqlbrite,okio——Square家的精品多啊 compile 'com.android.support:design:23.0.1'——谷歌Material Design控件庫 下面安利幾個(gè)自己寫的庫,如果有什么建議歡迎交流: Utils——Android各種小功能集合 RollViewPager——自動(dòng)輪播使用方便的ViewPager EasyRecyclerView——支持下拉上拉刷新等功能全面的RecyclerView SwipeBackHelper——Activity滑動(dòng)關(guān)閉支持庫,能達(dá)到微信效果 嘗試了很多,這幾個(gè)是現(xiàn)在常用的。 融云——即時(shí)通訊 友盟——數(shù)據(jù)統(tǒng)計(jì),推送,意見反饋,自動(dòng)更新,第三方分享及登錄,社區(qū) 七?!拼鎯?chǔ) Mob——短信驗(yàn)證 Bmob——做后臺(tái)不求人 依賴這一大堆庫和SDK以后。建議在合適的時(shí)機(jī)初始化他們,而不是全堆在Application的onCreate()里面。這樣會(huì)導(dǎo)致啟動(dòng)時(shí)間過長(zhǎng)。啟動(dòng)后也會(huì)較卡。雖然是不會(huì)影響功能正常使用。 4.配置Gradle 某些SDK運(yùn)行時(shí)需要檢查簽名是否正確。所以在debug模式時(shí)也必須用正式KEY簽名。而把簽名放進(jìn)版本控制不是明智的做法。所以推薦下面的做法: 在app的gradle加入下面代碼
在app的gradle文件同級(jí)目錄新建signing.properties文件,里面填入你的key的相應(yīng)信息
將signing.properties添加進(jìn)忽略目錄。 其他人pull下來代碼后。自己新建signing.properties填入相應(yīng)信息后即可編譯成功。 5.制定開發(fā)規(guī)范 為了避免合作開發(fā)寫的代碼風(fēng)格迥異。或做出了多套開發(fā)模式。下面是個(gè)例子。畢竟是為了高效開發(fā)而制定的。適合自己項(xiàng)目的才是最好。 所有Activity繼承BaseActivity 所有Fragment繼承BaseFragment 所有Presenter繼承BasePresenter 這樣利于生命周期管理。也可以方便的全局修改。 命名,例 AccountFragment UserDetailActivity layout命名,例 activity_collection fragment_account item_person include_toolbar view_progress 不過對(duì)于龐大項(xiàng)目的開發(fā)。近百個(gè)activity開頭的layout列表還是會(huì)眼瞎。所以那種情況會(huì)在前面加上模塊名。 id命名,例 btn_send tv_name list_persons et_password 然后用butterknife的插件生成變量會(huì)自動(dòng)將下劃線變成駝峰命名 變量命名:以m開頭。例mAdapter使用時(shí)按一個(gè)m全都出來了 方法命名:與其寫好名字不如寫好注釋。= =。 TextView使用官方標(biāo)準(zhǔn)字體
Button使用Material Design標(biāo)準(zhǔn)樣式
定好網(wǎng)絡(luò)請(qǐng)求寫法。文件存儲(chǔ)方式與位置。寫好項(xiàng)目所使用的類庫框架用法。 |
|
|