Si vous avez le code source des frameworks, vous pouvez modifier la durée de la dim dans PowerManagerService :
private static final int SCREEN_DIM_DURATION = 7 * 1000;
private static final float MAXIMUM_SCREEN_DIM_RATIO = 0.2f;
private int getScreenDimDurationLocked(int screenOffTimeout) {
return Math.min(SCREEN_DIM_DURATION,
(int)(screenOffTimeout * MAXIMUM_SCREEN_DIM_RATIO));
}
La valeur de retour de getScreenDimDurationLocked() est celle que vous voulez, vous pouvez la modifier.
Le lien ci-dessous est un post pour résoudre ce problème, j'ai écrit en chinois :
Blog CSDN : Modifier la durée de la dim d'Android dans les frameworks
J'espère que cela vous sera utile.