An activity provides a screen for users to interact with an Android application. Activities are organized into a stack and have a lifecycle of states like resumed and paused. To create an activity, you subclass the Activity class and implement callback methods corresponding to lifecycle states like onCreate and onPause. Activities must be declared in the app manifest and can be started with an intent.