如何在使用带有API 23的adb的Android设备/模拟器的系统级禁用动画?

时间:2017-03-28 04:46:42

标签: android adb

根据阅读情况,值window_animation_scaletransition_animation_scaleanimator_duration_scale需要设置为0

以下适用于API 22但不适用于API 23:

adb shell settings put global window_animation_scale 0.0

即使以下命令也不适用于API 23

adb shell content update --uri content://settings/system --bind value:s:0.0 --where 'name="window_animation_scale"'

我们希望禁用动画以防止仅出现片状视觉测试失败。 我们不希望在应用程序中引入此逻辑,因此希望在系统级而不是应用程序中应用它。

4 个答案:

答案 0 :(得分:6)

您可以执行以下adb命令来禁用动画:

id

另外,您可以查看此repo

构建项目并下载生成的.apk文件,并按照该项目中提到的说明禁用动画,之后您应该顺利进行。您也可以从许多其他来源下载相同的.apk文件(go google!)。

获得.apk文件后,发出以下命令:

adb shell settings put global window_animation_scale 0
adb shell settings put global transition_animation_scale 0
adb shell settings put global animator_duration_scale 0

答案 1 :(得分:2)

Mark W应该接受答案 为方便起见,您也可以将其保存为shell脚本,即:

#!/bin/sh
adb shell settings put global window_animation_scale 0.0
adb shell settings put global transition_animation_scale 0.0
adb shell settings put global animator_duration_scale 0.0

然后在终端呼叫

sh path/to/file.sh

或者更进一步,在bash配置文件中保存别名快捷方式:)

答案 2 :(得分:0)

adb shell设置命令足够好。只需要进行干净重启才能使这些设置生效。

解决方案的关键是在更改设置后进行干净重启。 sudo reboot是你必须避免和接受的 $ANDROID_HOME/platform-tools/adb shell “su 0 am start -a android.intent.action.REBOOT”

我也在同一个问题上写过blog

答案 3 :(得分:-1)

检查此Bash脚本

 adb shell update global set value='0.0' where name='window_animation_scale'
 adb shell update global set value='0.0' where name='transition_animation_scale'
 adb shell update global set value='0.0' where name='animator_duration_scale'

希望有所帮助