BatteryCrystalがマナーモード時にも充電完了したら音が鳴るので、マナーモード時は鳴らないようにしてほしい!というリクエストをいただきました。私は勝手に「マナーモード時はOSが勝手に判断してくれるだろう」と思ってたのですが、そうではなかったようです(^^;)たしかに、マナーモードでも非常時には鳴らすようにとかあるので、違うんですねー…。というわけで実装してリリースしときました!BatteryCrystalはバージョン1.0.4になりました。
で、そのときにマナーモードを取得する方法を調べたので書いておきます。
AudioManager audioManager = (AudioManager) getSystemService(AUDIO_SERVICE); int mode = audioManager.getRingerMode(); switch (mode) { case AudioManager.RINGER_MODE_SILENT: case AudioManager.RINGER_MODE_VIBRATE: // マナーモードなので何もしない break; default: // ノーマルモードなので音を鳴らす mSoundPool.play(mSounds[0], 1.0f, 1.0f, 1, 0, 1.0f); break; }
以上でーす!