If the game crashes, is OnDestroy called?

Is OnDestroy () or something else called when the device is powered off, or the game crashes?

Or is not it called anything?

A crash is, by definition, when something unexpected occurs during the execution of software code - a buffer overflow, illegal opcode etc. Since the situation causing the crash was not predicted, the outcome itself is equally not predictable.

So, no, you cannot rely on any particular behaviour occurring after a crash.

when device closes OnApplicaationQuit() or OnDisable() is called…