vCard sent to my Android shows up as text
I found some encoding issues when dealing with vCards, but generally, I was able to open any vCard file with the native contact manager application, have you tried to open the file with your computer?

The vCard is a text format file, so the image is encoded in Base64 (characters) if you open any vCard with a notepad, you will be able to see the contact picture encoded with characters.

This is a sample vCard:

BEGIN:VCARD
VERSION:2.1
N:Anders;Maria
FN:Maria Anders
ORG:Alfreds Futterkiste
TEL;TYPE=WORK:030-0074321
NOTE:Very Funny!
END:VCARD


So... To give you an answer, Android should handle vCards natively, without any special configuration. I'm running Android 4.x as well, and it works as expected.

In my opinion, the issue is about how iPhone encodes the vCard.

You can try downloading this vCard file: I's been tested on many Android devices