Ich versuche stumm das Telefon Lautstärke kontinuierlich im Hintergrund mit meiner Anwendung.Wie man die Lautstärke des Telefons in Android stumm schaltet?
für den Zweck habe ich erstellt eine Service, der die Lautstärke stumm geschaltet, aber die logcat zeigen Ausnahme. Bitte helfen Sie mir, es herauszufinden.
public class MyService extends Service implements RecognitionListener {
protected AudioManager mAudioManager;
protected SpeechRecognizer mSpeechRecognizer;
protected Intent mSpeechRecognizerIntent;
private final int MY_PERMISSIONS_RECORD_AUDIO = 1;
String LOG_TAG="---------->";
SpeechRecognizer speech;
Intent recognizerIntent;
int maxVolume = 15;
Context context;
static final int MSG_RECOGNIZER_START_LISTENING = 1;
static final int MSG_RECOGNIZER_CANCEL = 2;
@Override
public void onCreate() {
Toast.makeText(this, "SErivce Runnng", Toast.LENGTH_SHORT).show();
Log.d("-------->","SErvice is Runnign");
speech = SpeechRecognizer.createSpeechRecognizer(this);
speech.setRecognitionListener(this);
recognizerIntent = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH);
recognizerIntent.putExtra(RecognizerIntent.EXTRA_LANGUAGE, Locale.getDefault());
recognizerIntent.putExtra(RecognizerIntent.EXTRA_CALLING_PACKAGE, this.getPackageName());
recognizerIntent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_MODEL, RecognizerIntent.LANGUAGE_MODEL_FREE_FORM);
recognizerIntent.putExtra(RecognizerIntent.EXTRA_MAX_RESULTS, 1);
Log.e("------------>","Running here");
AudioManager audioManager=(AudioManager)context.getSystemService(context.AUDIO_SERVICE);
audioManager.setRingerMode(AudioManager.RINGER_MODE_VIBRATE);
Toast.makeText(context, "Set on Vibration", Toast.LENGTH_SHORT).show();
Log.e("------------>","VIbration Set");
}
Dies ist die logcat ist
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.Object android.content.Context.getSystemService(java.lang.String)' on a null object reference
Mögliche Duplikate von [Was ist eine NullPointerException, und wie kann ich es beheben?] (Https://StackOverflow.com/questions/218384/what-is-a-nullpointerexception-and-how-do-i-fix -it) –
Ihr Problem ist, dass Sie# 39; t initialisiert 'Kontext'. 'getSystemService' ist nicht statisch und benötigt eine Referenz eines' Context'. Da 'Service' 'Context's sind, müssen Sie keinen definieren, also entfernen Sie einfach die Zeile, die Sie definiert haben, und' context.' aus 'context.getSystemService' –