Add geo targeting implementation

This CL adds support for geo targeting, including determining whether a
point is inside a simple polygon and circle.

For the judgment of the point in the polygon, the algorithm implemented
here simply considers the spherical polygon as a 2d plane polygon, which
may be not precisely. However, according to the test of real geographical
coordinates data i.e state/city/stree boundary data, this error is less than
10 meters that within 160 meters requires by the spec.

Bug: 123096618
Test: atest GeoUtils
Change-Id: I51e1fad3b48c1a58fa0510f97d9f5f9335779c30
(cherry picked from commit 7fbc74b66b58dd57deedb7336c5c1e2f0f9e2064)
1 file changed