A FULL client on a mobile device seems unlikely for now for a few reasons.
1 communication costs. bitcoin is steadily sending and receiving data updates. It seems the mobile companies around here are going for higher data costs and fewer unlimited data plans (or none).
2 memory costs. the Satoshi bitcoin takes over 600 mb to run. Perhaps bitcoinj based client would be better, but how much better?
3 storage costs. Full block chain is currently 340mb, block chain index is another 150mb. wallet is variable size depending on activity. (I have one wallet over 1 gb.) Phones memory card or usb drive support make this go away but that leaves out a lot of phones.
4 battery life. with the constant communications related to point 1.
Of course all these are subject to change. in as little as 6 months it could all be a different story
Nope, will always be the same.
A mobile phone is an application optimized for lightweight use with limited connectiity - otherwise you end up having a lot more batteries to carry. If things use less power, they get smaller / cheaper / thinner / less weighty.
We need a two tiered protocol where a leightweight client connects to master notes and queries tx status there and then sends signed transfer orders to them. Even with the full client on a laptop, it takes too long to get it running once you turn it on (needs to connect, download chain from a possibly bad bandwidth conneciton) before you can see what is going on.
Te client situation is one major showstopper at the moment. Basically Bitcoin is as bad to handle as gold - not something like cash. Noone accepts it, you can not easily split it and carry it around because noone has the infrastructure to handle it.