原创 Kotlin 實戰翻譯 —— 仿微信圖片選擇開源庫ImagePicker

2017.10.27補充 在用Kotlin寫項目的時候由於不能使用生成成員變量的快捷鍵,導致我寫findViewById浪費了好多時間,後來才發現Kotlin對Android有更好的支持,可以完全不用寫findViewById,連

原创 Mac 配置可動態切換的JDK

命令行輸入:vi .bash_profile 進入編輯模式,輸入以下內容: # 設置 JDK 7 export JAVA_7_HOME=`/usr/libexec/java_home -v 1.7` # 設置 JDK 8

原创 android-stuido設置 配置

設置主題窗口大小動畫效果 修改menu或者toolBar 禁用自動檢查更新 配置快捷鍵 編輯器 顯示行號顯示方法分隔線 代碼摺疊 代碼智能提示 自動導包 創建個人代碼樣式配置 修改代碼字體 修改控制檯字體 Logcat字體

原创 Http Status Code(狀態碼)

HTTP狀態碼(HTTP Status Code)是用以表示網頁服務器HTTP響應狀態的3位數字代碼。它由 RFC 2616 規範定義的,並得到RFC 2518、RFC 2817、RFC 2295、RFC 2774、RFC 491

原创 Https證書校驗不當引起的安全問題

1. 使用Webview進行HTTPs通信 Android系統內置了一些可信機構辦法的證書,可用於作HTTPs證書校驗。實際上,使用Webview組件進行HTTPs通信,其證書驗證環節也是系統默認會去做的。若發現證書不合法,Web

原创 android面試題

2017.5補充: 線程和進程的區別 進程是資源分配的最小單位,線程是cpu調度的最小單位。 進程是具有一定獨立功能的程序關於某個數據集合上的一次運行活動,進程是系統進行資源分配和調度的一個獨立單位。線程是進程的一個實體,是CP

原创 Listview優化總結

Listview是andorid中最常用的控件之一,但要用好這個控件並不是那麼容易。不注意優化的使用經常出現頁面卡頓,OOM等問題的出現。在此本人將自己的拙見整理彙總,歸納listview的優化措施。 1.複用convertVi

原创 android 仿IOS彈出框

由於公司禁掉了上傳功能,無法使用github等,將自己的代碼分享出去。 但是自己做了一個仿IOS的彈出框感覺非常好用,想分享出來,因此就直接把相關代碼貼出來,有興趣的可以直接拷貝使用,遇到使用問題也可以留言。 做之前在網上也看

原创 android 實用知識點

此篇文章爲記錄我android開發工作中使用一些小功能或小技巧,相信總會有你需要的。不定時更新。。。。 動態改變EditText的輸入內容 mIdentificationEt.addTextChangedListener(new

原创 崩潰日誌 全局crash捕獲

注:知識來源於《android開發藝術探索》 android應用不可以避免的會發生crash,也稱之爲崩潰,無論你的程序寫的多麼完美,也無法完全避免crash的發生,可能是由於android系統底層的bug,也可能是由於不充分的機

原创 APP瘦身之webp實踐

APP的功能越來越多,APP的體積也隨之增長。這會給用戶的升級帶來困擾,影響用戶體驗,因此app的瘦身就顯得尤其重要了。app瘦身的方法有很多,隨便一搜便能找到很多方案,例如開啓混淆,開啓shrinkResources,去除大型的

原创 解決ViewPager與父ViewGrop的事件衝突

在做公司項目的時候,遇到這樣一個需求:activity最下層是一個地圖控件,可以從下方劃出一個layout佔據下半個屏幕,也可以下滑收起狀態(佔1/5屏幕),該layout用於文字顯示一條路線,可以左右滑動,切換不同路線(類似畫廊

原创 一個關於java初始化的問題

先來看這道題目吧,執行main方法會輸出的是什麼? public class FieldTest { private int a = 1; private boolean b = true; public

原创 Mac編譯android源碼

原本我只是一個開發app應用的android開發工程師,無奈被趕鴨子上架,公司要求我編譯android源碼,轉戰系統層的開發。於是上網研究如何編譯,資料還是挺多的,看着也不是很難,馬上自己上手,結果發現問題還是很多。 首先當然是跟

原创 Mac 安裝mysql問題

如果你是Mac,那記得是要在官網下載DMG Archive的安裝包。另外,需要注意,MySQL安裝成功之後會彈出提示框,給出了root用戶的臨時密碼,這個密碼一定要記住。 彈窗的內容如下: 2017-06-27T05:38:39.