有没有其他人在三星Galaxy S上体验过这个?
当我使用以下内容打开扬声器时,它可以正常工作:
audioManager.setSpeakerphoneOn(true);
但是,当我尝试相反的方式将其关闭时:
audioManager.setSpeakerphoneOn(false);
扬声器保持开启状态,通过设备播放音频,而不是设备上的耳机。
以上是Nexus One和HTC Hero的作品,前几天刚刚获得了三星Galaxy并且它不起作用,是否有其他人遇到过这个问题,也许知道它为什么会发生,如果有解决方法?
答案 0 :(得分:4)
以下是我要做的工作:
if (isGalaxyS()) {
audioManager.setMode(AudioManager.MODE_IN_CALL);
audioManager.setMode(AudioManager.MODE_NORMAL);
audioManager.setSpeakerphoneOn(flag);
}
似乎这种来回以某种方式重置了音频通道。为了完整性,这里是isGalaxyS()(注意我只在Epic上测试过这个!):
public static boolean isGalaxyS() {
String model = Build.MODEL;
return model.equalsIgnoreCase("GT-I9000") || // base model
model.equalsIgnoreCase("SPH-D700") || // Epic (Sprint)
model.equalsIgnoreCase("SGH-I897") || // Captivate (AT&T)
model.equalsIgnoreCase("SGH-T959") || // Vibrant (T-Mobile)
model.equalsIgnoreCase("SCH-I500") || // Fascinate (Verizon)
model.equalsIgnoreCase("SCH-I400"); // Continuum (T-Mobile)
}