my phone has no compass, can I get a compass-like direction (angle) without a physical compass (e.g. using 2 GPS points for moving pobject ? ) or any other method ?
You can use Location.getBearing to get bearing from location object obtained using LocationManager.
Also you can calculate it manually using Location.bearingTo method.
Android SDK using precise method to operate with locations. The method considers that the earth isn't flat.