The reason is, since DisplayManager in SDK is retrieved from Context.getSystemService, I am not sure if the object returns by Context.getSystemService is different with a different Context object.

So here I didn't make it as singleton for safety since the input 'context' might be different. But it is fine with me if the above question is identified.

From current implementation, it has no much difference if using singleton, since the impl backend depends on the system behavior.