Ich möchte überprüfen, ob ein Headset ein Mikrofon hat oder nicht. Momentan verwende ich diesen Broadcast-Empfänger-Code, aber ich bin mir nicht sicher, ob es korrekt ist oder nicht.Android - So erkennen Sie, ob ein Headset ein Mikrofon hat
public class HeadSetMicrophoneStateReceiver extends BroadcastReceiver {
private String pluggedState = null;
@Override
public void onReceive(Context context, Intent intent) {
if (intent.getAction().equals(Intent.ACTION_HEADSET_PLUG)) {
int state = intent.getIntExtra("microphone", -1);
switch (state) {
case 0:
//Headset does not have a Microphone
pluggedState = "0";
break;
case 1:
//Headset have a Microphone
pluggedState = "1";
break;
default:
pluggedState = "I have no idea what the headset state is";
}
EventBus.getDefault().post(new HeadSetMicrophoneEvent(pluggedState));
}
}
}
Bitte helfen Sie mir.
Ist diese Prüfung für das Mikrofon des Telefons oder für das Mikrofon des Headsets? – Vicky
@Vicky das ist etwas, was schwierig ist, wenn Mikrofon nicht verfügbar ist, wird es durch Fehler und return false sonst zurück –
OK, aber ist es für das Mikrofon des Telefons oder für das Mikrofon des Headsets? – Vicky