I agree with @Imisssleep2 that you have to let her know early on what the consequences are if she doesn't do what she's told in a timely manner. I've reread your first post and I suspect part of the problem is that you're not explaining things clearly/at the correct time and therefore confusing her.
Tell her to get dressed and cheerfully explain the plan "Dd, time to get dressed and ready, as soon as you're ready we're going to the beach and going to have ice cream!" I agree with all those who've said to turn getting dressed into a fun game.
I know some posters have suggested just dressing her yourself but I gather that isn't an option for you if she's as strongwilled as you say and kicks/hits you.
If she gets dressed praise her, if you're using a system such as the star chart let her put a star on the chart.
If she refuses/ignores your instruction to get dressed I would suggest you give her a clear warning in a calm manner, "Dd if you're not dressed with shoes on in the next x minutes we'll have to cancel the plan, no ice cream or day at the beach".
Set a timer that she can watch and stay with her to help/remind her. Even if she still refuses/ignores you remain calm, don't let her know you might be feeling stressed or frustrated.
If the timer goes off and she still isn't dressed then calmly say "dd that's too bad, you didn't want to get ready before the timer went off so that means we're not going to the beach and getting ice cream today."
By saying all this you're kindly but firmly letting her know that her refusal to do as she was told has consequences, she will also see that you mean what you say and that you are being a calm, confident adult in her life that won't be pushed around and get stressed and give in to her demands/naughty behaviour.
Hopefully you will only have to cancel plans a few times before she gets the message that if she refuses to do as she's told then she misses out.
In the meantime be prepared to do something else together instead like take the dog for a walk/go to the shop/do something at home if you have to tell her the original plan is cancelled.
It can be more challenging when you have a headstrong child, especially if she kicks and screams, has full blown tantrums but it is manageable. Have a clear plan of action e.g. if you want her to do something and you know she's likely to kick off then know in advance how you're going to react, what the consequences will be if she doesn't do as she's told, if she's ignoring you make sure to give her a warning (in a kind voice, no threats or anger!) of what the consequence will be so she has the opportunity to avoid it.
Make sure that whatever she loses out on is in the near future, since 4 year olds can't understand time as we do it's no use saying something at the beginning of the week like "if you dont do x now I won't allow to do y next weekend".
Lots and lots of praise when she does what's asked.
Planning ahead will help you feel more in control as I sense you feel out of your depth and are likely reacting in the moment. She is then picking up on your stress which makes the whole situation worse. Being so little she's only just learning to regulate her emotions and picking up on her parent's stress will just make her anxious.
There have been some horrible posts on this thread but a lot of helpful advice too which I hope you will read through and take onboard. I hope you find a solution that works