Is it possible to calculate weight of person with sensors found in today's smartphone? Is it possible to calculate the weight of a person by only
using his smartphone, some action he must perform (jump, rotate etc.) and
some data like his height or age.
Current smartphones have the following sensors/instruments:
G-Sensor
Digital compass
Proximity sensor
Ambient light sensor
GPS
In conjunction with the data those devices would provide could we somehow
get the approx. weight of a person?
I was thinking of like asking the person to jump and then calculate the downward
velocity but that is more indicative of the persons physical strength then weight...
 A: Attach a rope to a suitable part of the person's anatomy (*)
Spin them around in a circle
Use the accelerometers to measure the anglular velocity and hence the outward force, use the inclinometers to measure the angle of the rope to the vertical. 
Simple force diagram gives you the person's mass.


*

*If the reader is in a country with too many lawyers - I didn't mean this!

A: Have the person attach the phone to his belly using duct tape.  Have the person jump up and down once, use the phone's accelerometer to measure the amplitude and decay rate of resulting belly oscillations.  Then do a regression to estimate size of spare tire, combine with height and age to get weight estimate.  I would be surprised if there's not already an app that does this.
A: If you want to get the weight from an app there are very few things that you can do. As already mentioned any kind of acceleration experiment will hardly work without a lot of extra equipment and quite a bit of user "input". There might be a way around that though.
Just let the user input his or her height and let them take a few picture of their full body from different angles. With this information it is relatively easy to compute a 3d model and an accuracy of +-5 kg should be possible. Maybe with additional data like body fat percentage, age, sex, etc. this can be made more precise.
A different approach would use the touchscreen. A normal smartphone with a touchscreen can sense pressure to some degree. This is usually done in connecting with a special pen to draw things and vary the line width according to the applied pressure. As far as I know there is no touchscreen which can sense pressures up to the level that you are interested in and the phone case has to support the total weight but it is technically possible. 
A: Use pencil as a pivot, and some stiff object as a lever on which you can lay your phone flat. 
Put the pencil and the leaver on the floor so that pencil is in geometrical middle of the leaver.
The weight of the phone is an input. Phone on one end and the person jumps (knees straight, no bending to eradicate acceleration caused by additional push down with your muscles) onto the other end of the leaver. 
Tiny jump of an inch or 2 in order to launch the phone upwards on the other end of the pivot. Also since the jump is with 'locked' knees it has to be small.
The whole situation is described by the following equation:
m * G = mp * (a + loss) where:
 m = mass of a person, G = 9.8 m/s^2, mp = mass of the phone, a = acceleration measured by phone, loss is mainly due to flexibility and plasticity of the leaver
then:
m = mp * (a + loss) / G
G could be approximated based on height above sea level (taken from GPS).
loss would have to be established experimentally for some common leavers like books, rulers, hard back notebooks...
