SurfaceView自定義相機黑屏、模糊記錄

最近在做自定義相機,印象比較深刻的是遇到兩個問題,一個是在華爲的平板的上適配,預覽出來的效果特別模糊,還卡幀;另一個是在Android 5.0-7.0的機子上跑就是黑屏(8.0和9.0沒問題),以下問題都是針對你已經實現了相機預覽有些機子的特殊情況

一、華爲板上的模糊問題

網上很多介紹說預覽尺寸沒設置好,但我的問題是別的平板上預覽完全沒毛病,而且尺寸我也是按平板的寬度去適配的,但是在華爲的平板的就是超模糊和卡幀,查找了網上說的各種情況,審覈自己的配置完全不知道什麼原因,在我調試的要放棄的時候註釋了一段關於頁面的全屏設置的參數,結果奇蹟的可以了

//項目全屏設置的方式
getWindow().addFlags(View.SYSTEM_UI_FLAG_FULLSCREEN);
getWindow().addFlags(View.SYSTEM_UI_FLAG_HIDE_NAVIGATION);
getWindow().addFlags(View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION);
getWindow().addFlags(View.SYSTEM_UI_FLAG_LAYOUT_STABLE);
getWindow().setNavigationBarColor(Color.TRANSPARENT);
getWindow().setStatusBarColor(Color.TRANSPARENT);

又經過一個個的調式,最後找出SYSTEM_UI_FLAG_FULLSCREEN這個配置導致的,具體原因不懂爲什麼這個設置會導致模糊,希望有跟我一樣相機配置的沒毛病就是模糊卡幀的朋友試試看有沒有效果

getWindow().addFlags(View.SYSTEM_UI_FLAG_FULLSCREEN);

二、Android5.0預覽黑屏

又是花費一個早上找原因,各種註釋,最後原因又是全屏配置中的一個配置SYSTEM_UI_FLAG_HIDE_NAVIGATION導致,心塞到極致

getWindow().addFlags(View.SYSTEM_UI_FLAG_HIDE_NAVIGATION);

三、針對相機配置沒設置好黑屏,模糊

相機配置不正確的模糊:(提供思路,有空寫個demo)
模糊:
1:相機的預覽大小配置好了嗎
2:相機的對焦有配置嗎
黑屏:
1:權限配置了嗎
2:預覽尺寸配置錯誤(隨手一寫的尺寸可能沒有適配的項)

總結如果你有像我一樣相機配置沒毛病,但是還是出現模糊,黑屏,看下是否全屏的配置是不是跟我一樣導致的

以上有空寫個相機預覽的demo

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章