[英]android change device screen resolution pragmatically
我想在我的 android 應用程序中出於特殊目的更改設備分辨率和密度。 我發現使用adb
有一個命令可以這樣做。 像這樣
adb shell wm size 1270x720
and then
adb shell wm density 200
而且我還聽說可以在應用程序中運行adb
命令,但似乎不起作用。
cmd1 = "wm size 1270x720"
cmd2 = "wm density 200"
Runtime.getRuntime().exec(cmd 1/2).waitFor()
經過數小時的反復試驗,我終於弄明白了。 我使用 error errorStream
而不是inputStream
,因為命令遇到錯誤,它們的輸入是空的。
val process = Runtime.getRuntime().exec(command)
val bufferedReader = BufferedReader(
InputStreamReader(process.errorStream)
)
// Grab the results
val log = StringBuilder()
var line: String?
line = bufferedReader.readLine()
while (line != null) {
log.append(line + "\n")
line = bufferedReader.readLine()
}
Log.i("ADB_COMMAND", "command : $command $log")
在那之后修復就很明顯了。 我缺少WRITE_SECURE_SETTINGS
權限。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.