use more synchronized keyword to make db operations thread safe
use DialogFragment instead of Dialog for MovePositionDialog to avoid window leak
do not lock orientation and consider when activity is recreated (not yet completed)
use AlarmManager instead of Timer for auto play