原创 安卓6.0關於懸浮窗導致"檢測到屏幕疊加層"的開發端解決方案
安卓6.0以後當彈出權限授權框時,考慮到安全問題,如果屏幕上存在懸浮窗,會出現”檢測到屏幕疊加層”的提示,導致不能正常授予權限。 最簡單的解決方案就是手動關閉懸浮窗了,不過這樣的用戶體驗當然是很糟糕的,今天要介紹的方法是在彈出授權框時自動
原创 通過ssh反向隧道及nginx反向代理實現外網控制內網nodemcu芯片
基本思路:通過ssh反向隧道實現外網服務器端口到內網中繼服務器端口的轉發,通過配置內網中級服務器nginx反向代理,將外網發過來的請求轉發到目標服務器上。最後實現通過訪問外網ip轉到訪問內網的目標服務器。 (一)ssh反向隧道將外網服務
原创 閱讀Activity源碼筆記
Activity的啓動過程大概看了一下老羅的分析,真的是太複雜了。最後是由ActivityThread,通過ClassLoader獲取到要啓動的Activity,通過Instrumentation的callActivityOnCrea
原创 閱讀Service源代碼筆記
啓動Service有兩種方法:startService()和bindService()。區別在於startService會長期運行,bindService會隨着調用它的組件的銷燬而銷燬。 startService很簡單,主要是每次
原创 閱讀Handler源碼筆記
學習android大半年了,今天才去閱讀Handler源代碼真是慚愧啊! 安卓有一道經典的面試題就是問Handler運行機制原理。包括和Looper,Thread,MessageQueue和Message之間的關係。之前不知道爲什
原创 關於Drawable資源被用在多個地方顯示圖片時,改變其中一個實例的狀態會同時作用到其他實例的解決方法
在做項目的過程中發現了一個很奇怪的現象,相同的代碼在兩個應用中產生了不同的效果。 代碼具體內容是使用應用中的同一個Drawable資源創建了幾個不同的ImageView實例,改變其中一個ImageView的背景透明度。 img1.setB
原创 android獲取控件測量尺寸的方法
監聽控件的全局layout事件 View.getViewTreeObserver.addOnGlobalLayoutListener(new OnGlobaLayoutListener(){ public void onGloba
原创 andriod提高開發效率的第三方類庫和框架
(一) DI框架 1. butterknife 適用於activity中的view控件 ,fragment中的view控件,以及其它adapter中的view控件的綁定,特點比較靈活,適用地方多。 使用方法:compile 'c
原创 bindService用法
特點: 1、會跟隨Activity的銷燬而銷燬 2、可以通過service暴露的接口,調用service中的方法 用法: Activity中 1、實現ServiceConnection接口 2、在Activity中調用blindSer
原创 Android在Service中全局監聽輸入法的三種可實現方式
在Service中全局監聽輸入法意思就是可以在任何界面都可以監聽輸入法,不侷限於自己的APP。 方法一:根據切換輸入法會在通知欄顯示通知實現 優點:簡單高效 缺點:手機必須安裝兩個以上輸入法 通常語言爲中文的情況下切換輸入法的通知欄標
原创 閱讀Fragment源碼筆記
Fragment具有自己完整的生命週期(當然和所關聯的Activity是同步的)。相比Activity更加輕量級,但同時具有同樣的功能,也能夠將界面劃分成不同的模塊或者說是碎片,更加易於管理和維護。 Fragment生命週期onA
原创 floatball懸浮球總結
floatball懸浮球總結 懸浮窗的實現 ActionBar和ViewPager實現的Tab滑動頁面 ListView列表條目動態刷新 獲取圖片瀏覽器返回的圖片數據 自定義ActionBar菜單 一、懸浮窗的實現 主要內容是將f
原创 Java序列化中transient修飾符的作用
使用網絡傳輸對象時需要將對象進行序列化,但在某些情況下,需要序列化的對象持有其他對象的引用,出於安全考慮,我們不希望某些對象被序列化,此時就可以使用transient修飾符 標註不被反序列化對象。
原创 android中使用隱藏類的方法
在某些特殊應用中需要使用隱藏類中的功能,總結一下隱藏類的使用方法。 發佈的SDK版本中android.jar包中不包含隱藏類的class文件,所以沒辦法直接使用隱藏類。 使用隱藏類方法: (一)提取隱藏類的class文件 (1)從編譯的
原创 Monkey Music Player知識要點總結
要點概括 1、文件管理器,AlertDialog 2、Service應用,Notification通知欄,防止Service被殺,點擊通知欄返回後臺程序,(默認會創建新的Acticity) 3、Brodc