The area is surrounded by dead or damaged blood cells. It might take awhile for your body to 'clean' out the damaged cells... Iron and good blood flow can speed up the blood cleaning process. Iron helps repair red blood cells and good blood flow from hot/cold stimulates blood flow... Cold reduces inflammation and hot expands blood blood capillaries.
I remember one time it hit a exercise equipment in the gym with my leg... The bruising lasted for about a year... Still have it there... If I followed my advice, I will probably get it healed faster but meh