조건에 하나라도 만족하면, 진동 모드로 변경해야 하는데,
다음 DB검색하면서 조건에 만족하지 않을테니..
현재 구조로서는 99% 진동 모드로 변경 안되겠네요..
array list로 만들 필요가 없는데 사족 코드인듯 하고요..
아래코드와 같이 수정해 주시는게 좋을 듯 합니다.
private void alramEvent(){
DBHelper dbHelper = new DBHelper(this);
SQLiteDatabase db = dbHelper.getWritableDatabase();
Cursor cursor2 = db.rawQuery("select * from latlonData", null);
boolean isVibrateMode = false;
while (cursor2.moveToNext()){
int curId = cursor2.getInt(0);
double curLatitude = cursor2.getDouble(1);
double curLongitude = cursor2.getDouble(2);
if( latitude - 0.00015 <= curLatitude && curLatitude <= latitude + 0.00015 &&
longitude - 0.0005 <= curLongitude && curLongitude <= longitude + 0.0005){
isVibrateMode = true;
break;
}
}
AudioManager am = (AudioManager)getSystemService(Context.AUDIO_SERVICE);
if(isVibrateMode) {
am.setRingerMode(AudioManager.RINGER_MODE_VIBRATE);
} else {
am.setRingerMode(AudioManager.RINGER_MODE_NORMAL);
}
}