Android修改情景模式的默认值

2,情景模式中的其他设定参考到

mediatek/frameworks/base/media/audio/java/com/mediatek/audioprofile/AudioProfileManager.java

中的getDefaultState()

public static AudioProfileState getDefaultState(String profileKey) {

if (null == sDEFAULTSTATES) {

IDefaultProfileStatesGetter defaultProfileStatesGetter =

MediatekClassFactory.createInstance(IDefaultProfileStatesGetter.class);

if (defaultProfileStatesGetter != null) {

sDEFAULTSTATES = defaultProfileStatesGetter.getDefaultProfileStates();

}

if (null == sDEFAULTSTATES) {

sDEFAULTSTATES = new HashMap<Integer, AudioProfileState>(PREDEFINED_PROFILES_COUNT);

/** Default values of ringer volume for different audio profiles. */

final int DEFAULT_RINGER_VOLUME_GENERAL = 8;

final int DEFAULT_RINGER_VOLUME_SILENT = 0;

final int DEFAULT_RINGER_VOLUME_MEETING = 0;

final int DEFAULT_RINGER_VOLUME_OUTDOOR = 15;

/** Default values of notification volume for different audio profiles. */

final int DEFAULT_NOTIFICATION_VOLUME_GENERAL = 8;

final int DEFAULT_NOTIFICATION_VOLUME_SILENT = 0;

final int DEFAULT_NOTIFICATION_VOLUME_MEETING = 0;

final int DEFAULT_NOTIFICATION_VOLUME_OUTDOOR = 15;

/** Default values of alarm volume for different audio profiles. */

final int DEFAULT_ALARM_VOLUME_GENERAL = 8;

final int DEFAULT_ALARM_VOLUME_SILENT = 0;

final int DEFAULT_ALARM_VOLUME_MEETING = 0;

final int DEFAULT_ALARM_VOLUME_OUTDOOR = 15;

/** Default values of vibration for different audio profiles. */

final boolean DEFAULT_VIBRATION_GENERAL = false;

final boolean DEFAULT_VIBRATION_SILENT = false;

final boolean DEFAULT_VIBRATION_MEETING = true;

final boolean DEFAULT_VIBRATION_OUTDOOR = true;

/**

  • Default values that indicate whether the audible DTMF tone should be

  • played by the dialer when dialing.

*/

final boolean DEFAULT_DTMFTONE_GENERAL = false;

final boolean DEFAULT_DTMFTONE_SILENT = false;

final boolean DEFAULT_DTMFTONE_MEETING = false;

final boolean DEFAULT_DTMFTONE_OUTDOOR = true;

/**

  • Default values of sound effect(Key clicks, lid open/close…) for

  • different audio profiles.

*/

final boolean DEFAULT_SOUNDEFFECT_GENERAL = false;

final boolean DEFAULT_SOUNDEFFECT_SILENT = false;

final boolean DEFAULT_SOUNDEFFECT_MEETING = false;

final boolean DEFAULT_SOUNDEFFECT_OUTDOOR = false;

/** Default values that indicate whether the lock screen sound are enabled. */

final boolean DEFAULT_LOCK_SCREEN_GENERAL = false;

final boolean DEFAULT_LOCK_SCREEN_SILENT = false;

final boolean DEFAULT_LOCK_SCREEN_MEETING = false;

final boolean DEFAULT_LOCK_SCREEN_OUTDOOR = true;

/** Default values that indicate whether the haptic feedback are enabled. */

final boolean DEFAULT_HAPTIC_FEEDBACK_GENERAL = false;

final boolean DEFAULT_HAPTIC_FEEDBACK_SILENT = false;

final boolean DEFAULT_HAPTIC_FEEDBACK_MEETING = false;

final boolean DEFAULT_HAPTIC_FEEDBACK_OUTDOOR = true;

… …

1)上图中红色框标所示表示是否有IDefaultProfileStatesGetter接口的实现,若没有,则默认设置在getDeafultSte中绿色框中配置,其中DEFAULT_RINGER_VOLUME_GENERAL=4,表General Profile的默认的铃声音量,以此类推,其他的默认值也是如此命名;

2)若能在MediatekClassFactory.java或者MediatekOPClassFactory.java中搜到IDefaultProfileStatesGetter的实现类,如TDD项目对应的IDefaultProfileStatesGetter的实现类是DefaultProfileStatesGetterOP01.java,则情景模式的默认值要修改alps/mediate/operator/op01/frameworks/java/com/mediate/op/audioprofileDefaultProfileStatesGetterOP01.java的getDefaultPofileStates():

3,在AudioManager.java

DEFAULT_STREAM_VOLUME [] 数组中请把对应的stream type 音量值修改一致。比如把来电铃声从默认4调到6

4, // STREAM_RING

改为

6, // STREAM_RING

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值