0

私は、近接センサーを使用するプロジェクトで作業しており、近接センサーが覆われているときにプログラムが電話をミュートし、センサーが覆われていないときに通常の状態に戻す必要があります。センサーが覆われているときのコードを管理できましたが、センサーが覆われていないときの値がわかりません。センサーが覆われていないときにミュートを解除するコードが必要です。

@Override
public void onSensorChanged(SensorEvent event) {
     audio.setRingerMode(AudioManager.RINGER_MODE_SILENT);

}
4

2 に答える 2

0
public void onSensorChanged(SensorEvent event) {
   // TODO Auto-generated method stub

   if(event.sensor.getType()==Sensor.TYPE_PROXIMITY){

      if(event.values[0]<5){ audio.setRingerMode(AudioManager.RINGER_MODE_youwant);}else{ audio.setRingerMode(AudioManager.RINGER_MODE_SILENT);}
   }
  }
于 2013-04-05T05:58:31.900 に答える
0

ミュート/ミュート解除のコードは次のとおりです

AudioManager   mAudioManager = (AudioManager) this.getSystemService(Context.AUDIO_SERVICE);
                int current_volume =mAudioManager.getStreamVolume(AudioManager.STREAM_MUSIC);
                //If you want to player is mute ,then set_volume variable is zero.Otherwise you may supply some value.
                int set_volume=0;
                mAudioManager.setStreamVolume(AudioManager.STREAM_MUSIC,set_volume, 0); 
于 2013-04-05T05:59:27.940 に答える