Commit graph

43 commits

Author SHA1 Message Date
GaidamakUA
dd80992edd Fix #1550 What's app location 2015-11-10 20:00:34 +02:00
GaidamakUA
1cb5afcb9a GeoPointParserUtil indentation fix 2015-08-21 18:33:25 +03:00
GaidamakUA
326faa8e2b Removed hardcoded values 2015-07-27 23:20:47 +03:00
GaidamakUA
81228dba45 Fixing issue #1486. Incorrect parsing of double parentheses. Now double parentheses are simply removed. 2015-07-27 23:20:30 +03:00
Victor Shcherb
e3ef7c1329 Fix gmaps geo 2015-06-06 17:19:07 +02:00
Hans-Christoph Steiner
87896f852b fix Google Maps URL parsing for all known URLS
This fixes the FIXME URLs, and adds a new URL with the query name in the
fragment.
2015-03-31 22:43:17 -04:00
Hans-Christoph Steiner
dac0cf725b support parsing all Google Maps URLs
This adds support for hosts like:
* www.google.com.tr
* www.google.co.uk

and many more...
2015-03-31 22:38:46 -04:00
Victor Shcherb
15450a8d87 Update waypoints 2015-03-26 22:16:04 +01:00
Hans-Christoph Steiner
859595267e add more kinds of Google URLs for testing
This includes some valid Google Maps links that cause problems with the new
`parseGoogleMapsPath()` method.
2015-02-03 00:29:43 +01:00
Hans-Christoph Steiner
34ecdafc5d GeoParsedPoint normalize query string format as plain, not URL-encoded
There were parts of this code that were sticking in a URL-encoded query
string into GeoParsedPoint, and other parts that were putting in a regular
non-URL-encoded String.  This meant that URLs with an & in the query string
encoded as %26 were not being properly parsed, since & is used to split up
the query string.  That also makes it impossible to output a properly
encoded URI from getGeoUriString().
2015-02-03 00:28:45 +01:00
Hans-Christoph Steiner
124d48cd6e add various unparsable short links as tests 2015-02-02 22:53:05 +01:00
Hans-Christoph Steiner
7cb58ec540 also parse maps.apple.com links, the query string includes lat/long/zoom/etc
https://developer.apple.com/library/ios/featuredarticles/iPhoneURLScheme_Reference/MapLinks/MapLinks.html
2015-02-02 22:53:05 +01:00
Hans-Christoph Steiner
1c4ad908da handle all Google country-specific domains, i.e. google.at, google.ru, etc.
https://en.wikipedia.org/wiki/List_of_Google_domains
2015-02-02 22:53:05 +01:00
Hans-Christoph Steiner
59c34b350a improve Yandex link parsing
* also handle maps.yandex.com URLs
* properly handle unparsable short links (i.e. don't crash or return results)
* include text= as Label
2015-02-02 22:53:05 +01:00
Hans-Christoph Steiner
897d6ba387 only output coords from Yandex URL if the full ll= string matches
This just makes sure that there is a full lat/lon match before outputing.
2015-02-02 22:53:04 +01:00
Hans-Christoph Steiner
90c1b8a8e0 only parse query string if it is used
Not all location URLs have useful information in the query string, so only
parse it if it is used in the section for a given hostname.

Also, rename queryMap to params for consistency.
2015-02-02 22:53:04 +01:00
Hans-Christoph Steiner
4e5fa43f98 claim location URLs from QQ Map by Tencent
closes https://dev.guardianproject.info/issues/4394
2015-02-02 22:53:04 +01:00
Hans-Christoph Steiner
9b77f6fa90 claim location URLs from Nokia HERE
closes https://dev.guardianproject.info/issues/4399
2015-02-02 22:53:04 +01:00
Hans-Christoph Steiner
d34d341d65 keep Uri "path" intact during parsing for consistant regexes
By not modifying "path" from what Uri.getPath() returns, it keeps the
pattern matching consistent since the contents of "path" will always be the
same as Uri.getPath(), and what is visible in the URI itself.
2015-02-02 22:53:04 +01:00
Hans-Christoph Steiner
2771da35de GeoPointParserUtil.getQueryParameters() to return Map of all parameters
This parses out all of the parameters in the query string for both http:
and geo: URIs.  This will only work on URIs with valid syntax, so it will
not work on URIs that do odd things like have a query string in the
fragment, like this one:

http://www.amap.com/#!poi!!q=38.174596,114.995033|2|%E5%AE%BE%E9%A6%86&radius=1000
2015-02-02 22:53:04 +01:00
Hans-Christoph Steiner
3d106d00b7 support parsing amap.com URLs
amap.com aka autonavi is a popular mapping service in China.
2015-02-02 22:53:04 +01:00
Alexey Pelykh
75a0c03e40 Fix build 2015-02-02 18:15:28 +02:00
Hans-Christoph Steiner
8155e749bb use Locale.ENGLISH to format numbers for geo: links
Some locales do not use 0-9 as the digits, such as Arabic and sometimes
Chinese.  Using those numerals in a geo: URI probably would not work.
2015-02-02 16:08:30 +01:00
Hans-Christoph Steiner
3db16680b4 GeoParsedPoint.getGeoUriString() to output the data as a geo: URI
Output the data in the GeoParsedPoint as a geo: URI (http://geouri.org)
2015-02-02 16:08:30 +01:00
Hans-Christoph Steiner
58485d8ba9 rename GeoParsedPoint's named point var to "Label" after Google standard
This outlines the named point format of a geo: URI:
https://developer.android.com/guide/components/intents-common.html#Maps
2015-02-02 16:08:30 +01:00
Hans-Christoph Steiner
6f2e0029a5 remove debug message from GeoPointParserUtil.areCloseEnough() 2015-02-02 16:08:30 +01:00
Victor Shcherb
567de5806a Update geo parse utility 2015-02-02 09:25:15 +01:00
Hans-Christoph Steiner
9bb03894a5 generate OpenStreetMap shortlinks using current char set (~ instead of @)
OpenStreetMap has changed the shortlink charset to use ~ instead of @ to be
support services like Twitter where @ has meaning.  OpenStreetMap still will
parse the old format, but only generates new shortlinks using "~".  This
commit changes OsmAnd to have the same behavior.

References:
https://wiki.openstreetmap.org/wiki/Shortlink#Code_for_encoding_.26_decoding
e84b2bd22f/app/assets/javascripts/application.js (L188)

---------------- OsmAnd-java/src/net/osmand/util/MapUtils.java ----------------
2015-01-21 11:25:51 +01:00
Hans-Christoph Steiner
50eed92015 parse lat/lon/zoom from OpenStreetMap shortlinks
This is a nice format of shortlink since it uses a public, offline algorithm
to generate them.  So Osmand can get what it needs from the shortlink
without going online.

https://wiki.openstreetmap.org/wiki/Shortlink
2015-01-21 11:25:51 +01:00
Hans-Christoph Steiner
2537d92a6a update MapUtils.decodeShortLinkString() to also parse zoom
This method is used to parse the custom OpenStreetMap shortlink algorithm
that encodes lat, lon, and zoom.  The previous version,
MapUtils.decodeShortLocString(), only parsed lat, lon from the shortlink.
2015-01-21 11:25:51 +01:00
Hans-Christoph Steiner
147f2adf05 add BaiduMap as a URL pattern (http://map.baidu.com)
This is a mapping service that is popular in China.
2015-01-21 11:00:46 +01:00
Hans-Christoph Steiner
baf25cbb14 include test lat/lon to 5 decimal places since that's the common format
This makes the test more realistic, since most services are using at least
this much accuracy.
2015-01-21 11:00:46 +01:00
Hans-Christoph Steiner
32f7cccd0f rework OpenStreetMap URL parsing to handle current formats
It seems this code is quite out of date, because none of the URL formats
listed in the tests seem to work.  This commit updates the URL formats in
the tests, then makes all of them parse properly.  It also changes the
parsing technique, leveraging java.net.URL's built-in parsing abilities to
assist.  Also, I plan on adding a lot more URL formats, so the current code
structure made it very difficult to add to.  So each service will be split
out into its own section, starting here.
2015-01-21 11:00:46 +01:00
Hans-Christoph Steiner
7729aa7350 remove scheme arg from GeoPointParserUtil.parse(), java.net.URI provides it
Since the first step in parse() is to create a URI instance, the scheme
should come from URI.getScheme() instead of an arg.
2015-01-21 11:00:46 +01:00
Alexey Pelykh
6627a4d2b5 Merge pull request #1028 from Bars107/master
Bugfix for direction drawable and test for buggy geo intent.
2014-12-29 18:41:45 +02:00
Alexey Pelykh
335a629bf1 Fix indent 2014-12-29 17:41:01 +02:00
Alexey Pelykh
9678ca155c New GEO URI parser 2014-12-29 17:37:28 +02:00
Denis
819a61216e Added test for buggy geo intent 2014-12-29 12:56:52 +02:00
Zahnstocher
ae8141c5d8 Fix c:geo intent 2014-09-27 00:24:07 +02:00
rilaby
d916bb0cd6 changed the patterns to ctick to one for lat, lon; added support for
integer lat, lon; added new test cases;
2014-09-10 10:18:52 +03:00
rilaby
892d07a56d GeoPointParserUtils bug fixed 2014-09-08 10:25:43 +03:00
rilaby
8d7d817c0a search by geo urls reworked 2014-09-04 09:47:08 +03:00
rilaby
3a9c6c37f4 GeoPointParserUtil.java added to osmAnd-java 2014-08-31 20:25:01 +03:00