I was thinking more that you just need to take the first touch, and make that the centre of the controller. So you detect a touch, and while the touch is active, the movement might be just the difference between that first touch position and the current position. So the player just drops their thumb and moves around, then lifts their thumb when they stop moving, and when they start moving again, it's based on the new first touch position.
So not strictly a swipe (which I know are painful to detect), more like a dynamic thumbstick. I have a really old RPG that's almost ready for release, except the controls aren't great... if people are used to virtual sticks then they'll maybe be ok - but personally I'd rather try the dynamic thumbstick approach for my own sanity. Maybe my thumbs are getting fat
Of course, no matter how nice you get the movement and rotation controls, firing always throws a spanner in the works... please everyone share ideas for how to implement firing when you are already moving and rotating with your thumbs - nothing I can think of is too practical. In my RPG, I can at least forget about looking up and down, so straffing controls have firing as well, but it's a worrying problem for a real FPS game. Unfortunately there are a lot of cheap Android phones and devices out there that have horrible accelerometers in them, not ideal for accelerometer camera rotation. I guess that might be the best option though, left side dynamic thumbstick for moving, tilt controls to aim or rotate camera, and fixed buttons for firing, weapon selection, reloading etc etc.