Почему вы создаете новые объекты Properties, перечитываете и переписываете файл props для каждой операции над свойствами?Если нет реальной причины для этого, просто прочитайте их один раз и запишите их при необходимости (заботясь о onPause / onResume), и сделайте это в потоке, то есть:
final Handler handler = new Handler();
[...]
Runnable writeProps = new Runnable() {
@Override
public void run() {
// do your work here
[...]
// run this if you want to notify something to the UI thread
// handler.post(new Runnable() {public void run() { notifyUI(); }});
}
};
Thread thread = new Thread(writeProps, "writeProps");
thread.start();
[...]