Currently, I'm learning Android development and while learning I have come across several things like passing 'this' context, ActivityCompat, and ContextCompat. What is ActivityCompat and why, how, and where we should use it? I have also tried to read the documentation for it but as I am new to the android I'm not able to understand the way it was written in the documentation.
Also what is context parameter in android and what is it work and how to use it. As i often see that whenever context is asked in a method 'this' keyword is passed to it. Could you please explain it in easy to understand language?