el tema es que cuando cambias la orientacion, se llama nuevamente al onCreate(). la actividad se destruye completamente. esto tiene que ver porque algunas veces definimos un nuevo layout y el setcontentview se tiene que llamar nuevamente.
cuando entra una llamada o lo que sea, la activity se pone en pausa para que la actividad de la llamada este en primer plano.
te recomiendo leer sobre el ciclo de vida de las actividades [1]
no se si es triste pero si molesta mucho. es algo propio del SO.
igualmente por más que lo diga google no confiaria en esos metodos y pondria todo lo que pueda en variables estaticas en otra clase
saludos!