I get this question quite a lot... unfortunately the short answer is no.
However, there is hope (see below), just not from vibration energy harvesting.
Good Vibrations Needed for Good Energy Harvesting
The energy potential from vibrations is directly tied to the mass that is being vibrated and the frequency (how many times per second) with which the mass is moving. Generally the higher the mass and the higher the frequency the more energy there is to harvest from. Harvesting vibrations with most harvesting technology such as piezoelectrics is best suited for consistent high frequency vibrations, like those emanating from a piece of machinery as it is operating. See my other post on ideal vibration energy harvesting applications.
The human body is active sometimes and other times completely dormant. Also, some of us are carrying a little extra dampening material if you know what I mean. Not much there to harvest from. You could possibly squeeze out some more juice by having a very large piezoelectric element with a big mass on it to get more strain into and thus power out of the device from these low frequency events. But who wants to carry around a brick of piezoelectric material with a small phone attached to it. Oh yeah and it would make the phone cost an amazing amount of money.
The Math Powering the iPhone
An iPhone has around 1900 mA-hr at 1.2V, that works out to roughly 8200 Joules of energy. A typical piezoelectric vibration energy harvester can output in IDEAL circumstances (ideal being high frequency machine vibrations) 10 mW of power. So to fully charge an iPhone in these IDEAL conditions you would need to harvest energy for 9.5 days. You might be saying, "ok that is not great but still not horrible." Here is the rub, vibration harvesting from human motion is not nearly ideal and you won't get anywhere near 10 mW of harvested power out of a reasonably sized vibration energy harvester, be it electromagnetic or piezoelectric.
The High School Science Project to Prove it to You
Some people have tried to embed the piezoelectric elements into a shoe or other object that will bend and deflect during human motion. It's not a bad idea, but it still won't work too well unless you have a very large amount of piezoelectric material. To get good power you need to be straining the piezo material at as high of a frequency as possible, Usain Bolt could not run fast enough to make this type of approach work. A very nice high school student did her science project on this exact subject if you want to check it out.
Some Good News - There is Hope!
Other forms of energy harvesting are much more appealing for charging phones. Embedded solar cells should be able to charge a phone in about 3 hours using a 15% efficient solar cell. Doesn't do us much good if the phone is in our pocket, but still a decent option if you are lounging around outdoors on a sunny day. There are a host of aftermarket solar phone charging products on the market, but none of the major phones have designed this capability in yet. Thermal energy harvesting from thermoelectric generators (TEG) provide similar low power output to piezo's or eletromagnetic harvester, on the order of low mW's, but at least their harvesting mode is matched nicely to the human body which is constantly generating heat. Also, since the phone is often in our pockets there is ample time to trickle charge the battery. Lastly, there is RF harvesting which would work nicely but again the power levels are very low. Check out www.powercastco.com if you are interested in that.
There is hope! As electronics become lower power and as the efficiency of solar (check out this small 44% solar cell), thermal and RF harvesters improve I'm hopeful that someday we won't be slaves to recharging our phones. Till then, keep plugging!