本文主要介紹android移動終端的滑動效能測試方法,核心原理是通過 自動滑動+fps值 計算來評估待測介面的滑動效能情況。
fps值一般用來在遊戲執行等動畫表現力的評測上,一般fps數值越大,則反映系統處理動畫的效果越好。但是在滑動介面的情況下,超過40左右人眼是很難區分出來是否有卡頓現象,所以需要獲取真實的數值並且記錄起來。
通過去找android的底層方法,發現su***ceflinger這個類可以提供動畫的繪製幀率資料。
通過adb命令:adb shell dumpsys su***ceflinger --latency
,會出現如下的資料buffer
其中第二列我大概判斷是unix的時間戳值,這裡的每行資料即為當前實時的每幀生成的時間,這個命令生成的資料buffer大概有120+行,所以大概是2s左右的乙個資料段。
其中我還發現有如下幾個命令生成不一樣的資料:
dumpsys su***ceflinger --latency
獲取預設的幀資料(128行幀生成時間戳的資料,取其中數值最高的1列作為計算的值)
dumpsys su***ceflinger --latency-clear
清除buffer區
dumpsys su***ceflinger --list
當前介面的view列表
dumpsys su***ceflinger --latency
指定view的幀資料
dumpsys su***ceflinger --latency
指定包名的幀資料
dumpsys su***ceflinger --latency /
指定activity的幀資料
獲取buffer後,再通過下面的處理
public void do_exec(final string cmd) ");
// must match :length>10,is number
if (tt.length > 1 && tt[1].length() >= 10 && mfunction.isnumeric(tt[1]))
}computefps();
writeexcelother();
writeexcelfinal();
if (p != null)
if (in != null)
} catch (ioexception e)
}});
thread.start();
}
private void computefps() else
} }
最終將fps值寫入到excel**中
// write excel other
private void writeexcelother()
這塊的內容比較多,因為獲取fps值還不夠,我們需要每次測試固定滑動手法,以及需要自動化填充資料來保證測試的環境,所以自動化執行滑動操作時必須的。
這塊準備另起一篇文章進行介紹。待續
Android 移動終端camera 防偷 拍設定
目前市面上的所有移動終端幾乎都有camera 應用,但android html rel nofollow android 原生系統在靜音模式下拍照是沒有聲音的,大部分國家的終端都有法規限制,如防止偷 拍 不管什麼模式下拍照都應該發出快門音,針對此問題只要修改android html rel nofo...
android 檢測右滑的WebView
import import android.content.context import android.util.attributeset import android.view.motionevent import android.view.velocitytracker import andr...
android 檢測右滑的WebView
今天產品出新花樣非得要右滑。檢測到右滑手勢後事件不做處理放在activity中做對應的處理即可了。import android.content.context import android.util.attributeset import android.view.motionevent impor...