PMSL
I once read this
You need to integrate acceleration to get the velocity.
v(t)=∫tt=0a.dt
There are a number of ways of doing this numerically.
I assume that you get these readings regularly with a spacing of δt, for example δt=100ms or something like that.
About the simplest way to do it is
v(t)=v(0)+∑a×δt
Where v(t) is the velocity at time t. but there are more sophisticated ways of doing it.
The problem is complicated by velocity being three dimensional - so you need to integrate in each of the three dimensions x, y and z separated. It depends how the phone gives you the information about the acceleration, but if you get ax, ay and azat regular intervals then you can do the following.
vx += ax * dt;
vy += ay * dt;
vz += az * dt;
If you get accleration as a raw number and angle then you will have to convert from I guess polar coordinates to xyz components to be able to add them up.
Total speed, |v| is, of course, given by |v|=√vx+vy+vz.