Compare commits

..

1 commit
master ... r1.6

Author SHA1 Message Date
vshcherb
f261ae8469 Fix exception of selecting sightseeing layer 2013-11-24 18:18:01 +01:00
7086 changed files with 194145 additions and 942477 deletions

View file

@ -1,16 +0,0 @@
---
name: "❓ Support request"
about: Questions and requests for support
---
🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑
Please do not file questions or support requests on the GitHub issues tracker.
In case you aren't sure whether to open an issue or not, please send your request to support@osmand.net.
You can get your questions answered using the [Google group](https://groups.google.com/forum/#!forum/osmand) or chat in real-time via our Telegram instances: [English](https://t.me/OsmAndMaps), [German](https://t.me/deosmand), [French](https://t.me/frosmand), [Ukrainian](https://t.me/uaosmand), [Italian](https://t.me/itosmand), [Russian](https://t.me/ruosmand).
Thank you!
🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑

View file

@ -1,18 +0,0 @@
---
name: "\U0001F41E Bug report"
about: Report a bug in OsmAnd
---
### Description
### How to reproduce?
### Your Environment
OsmAnd Version:
Android/iOS version:
Device model:
**Maps used (online or offline):**
If you have an issue related to offline maps, tell us the exact name of the map file where the issue occurs and its edition date.

View file

@ -1,72 +0,0 @@
---
name: "\U0001F6A9 Routing report"
about: Report a routing issue in OsmAnd
---
<!--🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅
Oh hi there! 😄
To expedite issue processing please search open and closed issues before submitting a new one.
Existing issues often contain information about workarounds, resolution, or progress updates.
GitHub is our main development tool for our developers. There are hundreds of requests a month and there are relatively few developers.
So by opening an issue, please know that your issue will be sent out to all developers and acknowledge that it could be closed without explanation or with just a brief message.
Comments on the closed issues are also sent to all developers, so you will definitely will be heard.
However, there is no guarantee that a developer will pick up the issue to work on it.
Please be sure to read our [FAQ](https://osmand.net/help-online) before creating an issue here.
The best way to get help about an OsmAnd issue is to create a valid and detailed issue.
Please give us the following information so that we can try to **reproduce** your issue:
🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅-->
# 🐞 routing report
### Routing engine
<!-- Which routing provider was used? (please tick the proper box [x]) -->
- [ ] OsmAnd's in-app offline routing
- [ ] Any online routing provider (YOURS, OpenRouteService, OSRM, etc.)
### Routing Profile
<!-- What routing profile is chosen in the OsmAnd app? (car, bike, pedestrian, fastest or shortest, etc.) -->
### Start and end points
<!-- Please specify (as exactly as possible) the start and endpoint of your route by telling us the city and street name so that we can find it via the in-app address search easily.
Also, a permalink from [openstreetmap.org](https://www.openstreetmap.org/) can be helpful. -->
### Actual and expected routes
<!-- Tell us your expected routing and how OsmAnd routes, or add screenshots here. -->
### Is this a regression?
<!-- Did this behavior use to work in the previous version? -->
<!-- ✍️--> Yes, the previous version in which this bug was not present was: ....
## 🌍 Your Environment
**OsmAnd Version:**
<pre><code>
<!-- paste version below -->
<!-- ✍️-->
</code></pre>
**Device and Android/iOS version:**
**Maps used (online or offline):**
<!-- Please tick the correct box [x] (or both) -->
- [ ] Offline maps offered within the OsmAnd app for download.
<!-- If you have an issue related to offline maps, tell us the exact name of the map file where the issue occurs and its edition date. -->
- [ ] Online (tile / raster) maps <!-- Please name it -->
**Anything else relevant?**

View file

@ -1,34 +0,0 @@
---
name: "\U0001F680 Feature request"
about: Suggest a feature for OsmAnd
---
<!--🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅
Oh hi there! 😄
To expedite issue processing please search open and closed issues before submitting a new one.
Existing issues often contain information about workarounds, resolution, or progress updates.
GitHub is our main development tool for our developers. There are hundreds of requests a month and there are relatively few developers.
So by opening an issue, please know that your issue will be sent out to all developers and acknowledge that it could be closed without explanation or with just a brief message.
Comments on the closed issues are also sent to all developers, so you definitely will be heard.
However, there is no guarantee that a developer will pick up the issue to work on it.
Please be sure to read our [FAQ](https://osmand.net/help-online) before creating an issue here.
🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅🔅-->
# 🚀 feature request
### Description
<!-- ✍️ A clear and concise description of the feature... -->
### Describe the solution you'd like
<!-- ✍️--> If you have a solution in mind, please describe it.
### Describe alternatives you've considered
<!-- ✍️--> Have you considered any alternative solutions or workarounds?

View file

@ -1,4 +0,0 @@
contact_links:
- name: Outdated FAQ
url: https://groups.google.com/forum/#!forum/osmand
about: Fix wrong or outdated FAQ on the forum instead

View file

@ -1,10 +0,0 @@
name: "Validate Gradle Wrapper"
on: [push, pull_request]
jobs:
validation:
name: "Validation"
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: gradle/wrapper-validation-action@v1

29
.gitignore vendored
View file

@ -1,7 +1,4 @@
*.render.xml
*.render_template.xml
poi_types.xml
*.map_styles_presets.xml
routing*.xml
rendering_types.xml
countries.reginfo
@ -10,33 +7,7 @@ h_*.png
g_*.png
mm_*.png
mx_*.png
OsmAndCore_wrapper.jar
OsmAndCore_*.aar
*.class
*.iml
.settings
.idea
**/.project
**/.classpath
out/
# Huawei
agconnect-services.json
OsmAndHms.jks
# Android Studio
/.idea
*.iml
# Gradle
.gradle
/local.properties
# MacOSX
.DS_Store
# Windows
Thumbs.db
# Output files
build

4
AUTHORS Normal file
View file

@ -0,0 +1,4 @@
OsmAnd Copyright 2010-2013
Victor Shcherb - all parts of the project, originator
Alexey Pelykh - rendering and core parts
Hardy Mueller - main parts of the project, mostly rendering, UI interaction design

4
AUTHORS.MIT Normal file
View file

@ -0,0 +1,4 @@
Authors of patches and pull requests:
Hardy Mueller
Robin `ypid` Schneider

View file

@ -1,7 +0,0 @@
### Credits to all major contributors / developers:
Major contributors / developers listed here https://github.com/osmandapp/osmandapp.github.io/blob/master/website/help/about.html#L8
### Other Pull requests
Copyright © All authors of translations and pull requests can be found in the commit history:
- Translations are under special “contributor” name weblate
- Pull requests have two committers: first is original contributor, and second is project maintainer

10
CREDITS.md Normal file
View file

@ -0,0 +1,10 @@
### Credits to all major contributors/developers :
* Victor Shcherb - all parts of the project, originator
* Pavol Zibrita - first contributor and developer of some utilities
* Dusan Kazik - one of the first contributors
* Andre Van Atten - project supporter, active forum participant, one of the first users.
* Dr. Hardy Mueller - map appearance concept and base renderers, international consistency and testing, usability, app scoping, concepts, documentation, wiki, market research.
* Yvecai - main contributor to Contour Lines and Hillshade maps
* Alexey Pelykh - C++ developer, created native library and made application much snappier.
* Max (Zahnstocher) - Java contributor, active forum participant.
* Harry van der Wolf - contributor (contribute to country boundaries + configuration file + address files and else), active forum participant.

139
LICENSE
View file

@ -1,17 +1,6 @@
OsmAnd - Android navigation software based on OSM maps.
Copyright (C) 2010-2013 OsmAnd Authors listed in AUTHORS file
OsmAnd OSM Automated Navigation Directions navigation software based on OpenStreetMap.
Copyright © 20102020 OsmAnd BV (Amstelveen, Netherlands - KvK 62066714, BTW 854627704B01).
The code in this repository is covered by *GPLv3* (for code) and the artwork is covered by [CC-BY-NC-ND 4.0](https://creativecommons.org/licenses/by-nc-nd/4.0/) (for artwork), except for some third-party libraries and resources.
ATTENTION: Please be aware that some artwork uses a proprietary license.
Main AUTHORS (more detailed list in AUTHORS.md):
Victor Shcherb all parts of the project, originator
Alexey Pelykh rendering and core parts
Hardy Mueller main parts of the project, mostly rendering, UI interaction design
Pavol Zibrita first contributor and developer of some utilities
-------------------------- GPLv3 ----------------------------------
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
@ -19,129 +8,13 @@
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
-------------------------------------------------------------------
* Source code in main repositories is covered by GPLv3 (license exceptions below):
- https://github.com/osmandapp/Osmand/tree/master/OsmAnd
- https://github.com/osmandapp/Osmand/tree/master/OsmAnd-java
- https://github.com/osmandapp/OsmAnd-core/tree/legacy_core
- https://github.com/osmandapp/OsmAnd-core
- https://github.com/osmandapp/OsmAnd-misc
- https://github.com/osmandapp/OsmAnd-tools
- https://github.com/osmandapp/OsmAnd-resources
* UI Design and UX work, such as layout and icons, are covered by [CC-BY-NC-ND 4.0](https://creativecommons.org/licenses/by-nc-nd/4.0/)
- https://github.com/osmandapp/Osmand/tree/master/OsmAnd/res and others
Restriction to UI/UX CC-BY-NC-ND:
* Publishing applications using the OsmAnd UI/UX code to Google Play, Amazon Market, or Apple Store must be done with written permission.*
* Map icons are taken from sjjb and some are drawn and distributed under Public Domain (except icons8)
- https://github.com/osmandapp/OsmAnd-resources/tree/master/icons/svg
- some icons are from http://osm-icons.org/wiki/Icons (CC-0 by Markus59, CC BY-SA 2.0)
* Integration with Qt library in (https://github.com/osmandapp/OsmAnd-core) - dynamic linking
- LGPL (https://www.qt.io/terms-conditions/)
* Map icons and their derived primitives are covered by a proprietary license:
- © icons8.com (https://github.com/osmandapp/OsmAnd-resources/tree/master/icons/svg/icons8)
* Generated voice files from TTS files are covered by a proprietary license:
- Voice files (https://github.com/osmandapp/OsmAnd-resources/tree/master/voice)
* Fonts (https://github.com/osmandapp/OsmAnd-resources/tree/master/rendering_styles/fonts)
- Google Fonts (Apache License 2.0)
* Map icons (Mapnik):
- Open-SVG-Map-Icons - Public Domain
* Non-patched source libraries:
- SherlockBar - Apache License - https://github.com/osmandapp/Osmand/tree/master/SherlockBar (https://github.com/JakeWharton/ActionBarSherlock/blob/master/LICENSE.txt)
* Patched libraries:
- Protobuf - New BSD License (patches - https://github.com/osmandapp/Osmand/tree/master/OsmAnd-java/src/main/java/com/google/protobuf, https://github.com/osmandapp/OsmAnd-core/tree/legacy_core/externals/protobuf)
- Jpeg - (https://github.com/osmandapp/OsmAnd-core/tree/legacy_core/externals/jpeg)
- Skia - (https://github.com/osmandapp/OsmAnd-core/tree/legacy_core/externals/skia)
- android-openmap-framework - (https://github.com/osmandapp/Osmand/tree/master/OsmAnd-java/src/main/java/com/jwetherell/openmap/common)
- mapbox-vector-tile - (https://github.com/osmandapp/Osmand/tree/master/OsmAnd-java/src/main/java/com/wdtinc/mapbox_vector_tile)
* 3rd party libraries present in the libs folder (https://github.com/osmandapp/Osmand/tree/master/OsmAnd-java/libs):
- gnu-trove-osmand.jar GNU trove - LGPL
- icu4j-49_1_patched.jar - ICU license (https://home.unicode.org/basic-info/projects/#/icu/icu/trunk/license.html)
* Pull-requests and translations:
- All pull requests are accepted under MIT License (most honorable contributors are mentioned in AUTHORS list).
* Special tools for new rendering (GPLv3)
- https://github.com/osmandapp/OsmAnd-tools
* OSM data
- Extracts - https://github.com/osmandapp/OsmAnd-misc/tree/master/osm-planet/osm-data
* Data files
- Country boundaries - https://github.com/osmandapp/OsmAnd-misc/tree/master/osm-planet/polygons © by Geofabrik - data free to use
* Subway icons
- Moscow: Art Lebedev Studio (http://www.artlebedev.ru/everything/metro/logo/) [Public domain], undefined
- Samara: «Metro-logo» (Altoing) - Own work. Under Public domain Commons licensefrom the site - https://commons.wikimedia.org/wiki/File:Metro-logo.svg#/media/File:Metro-logo.svg
- Budapest: «BKV metro» (Plexipajzs) - hu:Fájl:BKV metro.svg. Under license Public domain Commons licensefrom the site - https://commons.wikimedia.org/wiki/File:BKV_metro.svg#/media/File:BKV_metro.svg
- Saint-Petersburg: «Spb metro logo» (Orange-kun) (vector version) - Vectorised version made with Adobe Illustrator. Under license Public domain Commons licensefrom the site - https://commons.wikimedia.org/wiki/File:Spb_metro_logo.svg#/media/File:Spb_metro_logo.svg
- Germany: «U-Bahn» (3247) - own work. Under Public domain Commons license from the site - https://commons.wikimedia.org/wiki/File:U-Bahn.svg#/media/File:U-Bahn.svg
- Wien: «U-Bahn Wien» (Siegele Roland) - Logo der U-Bahn Wien. Under Public domain Commons license from the site - https://commons.wikimedia.org/wiki/File:U-Bahn_Wien.svg#/media/File:U-Bahn_Wien.svg
- Kazan: «Kazan-metro-Logo» (Россиянин) - own work. Under Public domain Commons license from the site - https://commons.wikimedia.org/wiki/File:Kazan-metro-Logo.svg#/media/File:Kazan-metro-Logo.svg
- Tbilisi: «Metro Tbilisi logo» (Carnby) - own work. Under CC BY-SA 3.0 license from site - https://commons.wikimedia.org/wiki/File:Metro_Tbilisi_logo.svg#/media/File:Metro_Tbilisi_logo.svg
- Minsk: «Minsk metro logo» (Skip405) - own work. Under Public domain Commons license from the site - https://commons.wikimedia.org/wiki/File:Minsk_metro_logo.svg#/media/File:Minsk_metro_logo.svg
- Nizhny Novgorod: «NNMetro» (AlexTref871) - own work. This vector image includes elements borrowed from another image: Coat of arms of Nizhny Novgorod Region.svg.. Under Public domain Commons licensefrom the site - https://commons.wikimedia.org/wiki/File:NNMetro.svg#/media/File:NNMetro.svg
- Novosibirsk: «Logo-Nsk-Metro» (AlexTref871) - own work. Under Public domain Commons license from the site - https://commons.wikimedia.org/wiki/File:Logo-Nsk-Metro.svg#/media/File:Logo-Nsk-Metro.svg
- Yekaterinburg: «Ekt-metro-logo-01» (AlexTref871) - own work. Under CC BY-SA 4.0 license from site - https://commons.wikimedia.org/wiki/File:Ekt-metro-logo-01.svg#/media/File:Ekt-metro-logo-01.svg
- New York: «MTA New York City Subway logo» (Metropolitan Transportation Authority) - http://mta.info/. Under Public domain Commons license from the site - https://commons.wikimedia.org/wiki/File:MTA_New_York_City_Subway_logo.svg#/media/File:MTA_New_York_City_Subway_logo.svg
- Paris: «Metro-M» (Pb 2001) - own work. Under Public domain Commons license from the site - https://commons.wikimedia.org/wiki/File:Metro-M.svg#/media/File:Metro-M.svg
- Madrid: «MetroMadridLogo» (Przemysław Sakrajda) - own work based on (na podstawie) www.metromadrid.es. Under Public domain Commons license from the site - https://commons.wikimedia.org/wiki/File:MetroMadridLogo.svg#/media/File:MetroMadridLogo.svg
- London: «Underground» (Dream out loud) - own work. Under Public domain Commons license from the site - https://commons.wikimedia.org/wiki/File:Underground.svg#/media/File:Underground.svg
- Barcelona: «Logometrobcn» (Javitomad) - own work. Under GFDL license - https://commons.wikimedia.org/wiki/File:Logometrobcn.svg#/media/File:Logometrobcn.svg
- Tokyo: "Tokyo Metro logo (full)" by Imagener - Tokyo Metro Company. Licensed under Public Domain via Commons - https://commons.wikimedia.org/wiki/File:Tokyo_Metro_logo_(full).svg#/media/File:Tokyo_Metro_logo_(full).svg
- Chicago: «Логотип Chicago Transit Authority» - http://brandsoftheworld.com/, http://en.wikipedia.org/wiki/Image:Chicago_Transit_Authority_Logo.svg. Under Fair use license from site- https://ru.wikipedia.org/wiki/%D0%A4%D0%B0%D0%B9%D0%BB:%D0%9B%D0%BE%D0%B3%D0%BE%D1%82%D0%B8%D0%BF_Chicago_Transit_Authority.svg#/media/File:%D0%9B%D0%BE%D0%B3%D0%BE%D1%82%D0%B8%D0%BF_Chicago_Transit_Authority.svg
- Osaka:«Osaka Metro Logo» (Osaka_Municipal_Subway_logo_001.JPG: Tennen-Gasderivative work: () - Hand coded. Own work, based on Osaka_Municipal_Subway_logo_001.JPG. Under Public domain Commons license from the site - https://commons.wikimedia.org/wiki/File:Osaka_Metro_Logo.svg#/media/File:Osaka_Metro_Logo.svg
- Stockholm: «Stockholm metro symbol» svg graphics by (Kildor) - own work. Licensed under Public Domain via Commons from site - https://commons.wikimedia.org/wiki/File:Stockholm_metro_symbol.svg#/media/File:Stockholm_metro_symbol.svg
- Cairo: «Cairo metro logo2012» (Peeperman) - Made with Adobe Illustrator CS6. Licensed under Public Domain via Commons from site - https://commons.wikimedia.org/wiki/File:Cairo_metro_logo2012.svg#/media/File:Cairo_metro_logo2012.svg
- Singapore: "Public Transport System, Singapore (logo)" by Source. Licensed under Fair use via Wikipedia - https://en.wikipedia.org/wiki/File:Public_Transport_System,_Singapore_(logo).svg#/media/File:Public_Transport_System,_Singapore_(logo).svg
- Delhi: «Delhi Metro logo». Under Public domain Commons license from the site - https://commons.wikimedia.org/wiki/File:Delhi_Metro_logo.svg#/media/File:Delhi_Metro_logo.svg
- Praha: «Prag Metro Logo» (wikinight2) - Eigenes Werk (own work), created with inkscape, based on PDF http://www.zdanice.cz/clanky/letak_Haje_.pdf. Licensed under Public Domain via Commons from site - https://commons.wikimedia.org/wiki/File:Prag_Metro_Logo.svg#/media/File:Prag_Metro_Logo.svg
- Tehran: "Tehran Metro Logo" by Tehran Urban and Suburban Railway Organization - http://metro.tehran.ir/. Licensed under Public Domain via Wikipedia - https://en.wikipedia.org/wiki/File:Tehran_Metro_Logo.svg#/media/File:Tehran_Metro_Logo.svg
- Athens: "Logo of the Athens Metro Operating Company (AMEL)" by Marianian - Own work, based on personal observations of publicity and signage.. Licensed under Public Domain via Commons - https://commons.wikimedia.org/wiki/File:Logo_of_the_Athens_Metro_Operating_Company_(AMEL).svg#/media/File:Logo_of_the_Athens_Metro_Operating_Company_(AMEL).svg
- Nagoya: "Nagoya Municipal Subway Logo" by ASDFGHJ - 名古屋市交通局. Licensed under Public Domain via Commons - https://commons.wikimedia.org/wiki/File:Nagoya_Municipal_Subway_Logo.svg#/media/File:Nagoya_Municipal_Subway_Logo.svg
- Catania: "Logo metropolitana di Catania" by Friedrichstrasse - Own work. Licensed under CC BY-SA 3.0 via Commons - https://commons.wikimedia.org/wiki/File:Logo_metropolitana_di_Catania.svg#/media/File:Logo_metropolitana_di_Catania.svg
- Manila: "Lrtalogo" by Cda stitch - Own work. Licensed under Public Domain via Commons - https://commons.wikimedia.org/wiki/File:Lrtalogo.svg#/media/File:Lrtalogo.svg
- Rio de Janeiro: "Metrorioicon" by Metrô Rio - http://www.metrorio.com.br/. Licensed under Public Domain via Commons - https://commons.wikimedia.org/wiki/File:Metrorioicon.png#/media/File:Metrorioicon.png
- Montreal: "Montreal Metro" by STM - http://www.stm.info/en-bref/pictometro.htm. Licensed under Public Domain via Commons - https://commons.wikimedia.org/wiki/File:Montreal_Metro.svg#/media/File:Montreal_Metro.svg
- Toronto: "TTC" by Source. Licensed under Fair use via Wikipedia - https://en.wikipedia.org/wiki/File:TTC.svg#/media/File:TTC.svg
- Bangkok: "MRT (Bangkok) logo" by Bangkok_Metro_logo.png: Paul_012.Original uploader was Paul 012 at en.wikipediaderivative work: Nevetsjc (talk)Revision traced from http://si0.twimg.com/profile_images/975897559/logo.jpg - Bangkok_Metro_logo.png. Licensed under Public Domain via Commons - https://commons.wikimedia.org/wiki/File:MRT_(Bangkok)_logo.svg#/media/File:MRT_(Bangkok)_logo.svg
- Rotterdam: "RET metro logo" by Sebastiaan1997 - Own work. Licensed under CC BY-SA 3.0 via Commons - https://commons.wikimedia.org/wiki/File:RET_metro_logo.svg#/media/File:RET_metro_logo.svg
- Amsterdam: "Amsterdam metro" by Peeperman - Own work. Licensed under Public Domain via Commons - https://commons.wikimedia.org/wiki/File:Amsterdam_metro.svg#/media/File:Amsterdam_metro.svg
- Brussels: "Brussels Metro logo" by Source. Licensed under Fair use via Wikipedia - https://en.wikipedia.org/wiki/File:Brussels_Metro_logo.svg#/media/File:Brussels_Metro_logo.svg
- Lyon: "Métro-M-Lyon" by Otourly - Own work. Licensed under CC BY-SA 3.0 via Wikimedia Commons - https://commons.wikimedia.org/wiki/File:M%C3%A9tro-M-Lyon.svg#/media/File:M%C3%A9tro-M-Lyon.svg
- Washington: "WMATA Metro Logo" by Noclip - Own work. Licensed under Public Domain via Commons - https://commons.wikimedia.org/wiki/File:WMATA_Metro_Logo.svg#/media/File:WMATA_Metro_Logo.svg
- Los Angeles: "Lametro" by Los Angeles County Metropolitan Transportation Authority. Original uploader was Cheeselouise at en.wikipedia - Metro materials at http://www.metro.net/riding_metro/pocket_guide_cambodian_printers.pdf. Licensed under Public Domain via Commons - https://commons.wikimedia.org/wiki/File:Lametro.svg#/media/File:Lametro.svg
* Depth maps
- The GEBCO_2020 Grid, www.gebco.net
- U.S. Bureau of Ocean Energy Management (24 may 2017,12m per pixel)
- South_Padre_Island_DEM_4133: Grothe, P.G., L.A. Taylor, B.W. Eakins, K.S. Carignan, D.Z. Friday, and M. Love, 2012. Digital Elevation Models of South Padre Island, Texas: Procedures, Data Sources and Analysis, NOAA National Geophysical Data Center technical report, Boulder, CO, 15 pp.
- Corpus_Christi_DEM_1035: Taylor, L.A., B.W. Eakins, K.S. Carignan, R.R. Warnken, T. Sazonova, and D.C. Schoolcraft, 2008. Digital Elevation Model of Corpus Christi, Texas: Procedures, Data Sources and Analysis, NOAA Technical Memorandum NESDIS NGDC-11, National Geophysical Data Center, Boulder, CO, 19 pp.
- western_gom_crm_v1: National Geophysical Data Center, 2001. U.S. Coastal Relief Model - Western Gulf of Mexico. National Geophysical Data Center, NOAA. doi:10.7289/V5QJ7F79 [access date].
- central_gom_crm_v1: National Geophysical Data Center, 2001. U.S. Coastal Relief Model - Central Gulf of Mexico. National Geophysical Data Center, NOAA. doi:10.7289/V54Q7RW0 [access date].
- Galveston_DEM_1072: Taylor, L.A., B.W. Eakins, K.S. Carignan, R.R. Warnken, T. Sazonova, and D.C. Schoolcraft, 2008. Digital Elevation Model of Galveston, Texas: Procedures, Data Sources and Analysis, NOAA Technical Memorandum NESDIS NGDC-12, National Geophysical Data Center, Boulder, CO, 20 pp.
- Southern_Louisiana_DEM_3722 1/3 arc-second: Love, M.R., R.J. Caldwell, K.S. Carignan, B.W. Eakins, and L.A. Taylor, 2010. Digital Elevation Models of Southern Louisiana: Procedures, Data Sources and Analysis, NOAA National Geophysical Data Center technical report, Boulder, CO, 40 pp.
- New_Orleans_DEM_1264: Love, M.R., C.J. Amante, L.A. Taylor, and B.W. Eakins, 2011. Digital Elevation Models of New Orleans, Louisiana: Procedures, Data Sources and Analysis, NOAA Technical Memorandum NESDIS NGDC-49, U.S. Dept. of Commerce, Boulder, CO, 46 pp.
- Southern_Louisiana_DEM_4350: Love, M.R., R.J. Caldwell, K.S. Carignan, B.W. Eakins, and L.A. Taylor, 2010. Digital Elevation Models of Southern Louisiana: Procedures, Data Sources and Analysis, NOAA National Geophysical Data Center technical report, Boulder, CO, 40 pp.
- Biloxi_DEM_1009: Taylor, L.A., B.W. Eakins, K.S. Carignan, R.R. Warnken, T. Sazonova, and D.C. Schoolcraft, 2008. Digital Elevation Model of Biloxi, Mississippi: Procedures, Data Sources and Analysis, NOAA Technical Memorandum NESDIS NGDC-9, National Geophysical Data Center, Boulder, CO, 32 pp.
- Mobile_DEM_1255: Amante, C.J., M.R. Love, L.A. Taylor, and B.W. Eakins, 2011. Digital Elevation Models of Mobile, Alabama: Procedures, Data Sources and Analysis, NOAA Technical Memorandum NESDIS NGDC-44, Dept. of Commerce, Boulder, CO, 43 pp.
- Panama_City_DEM_1276: Amante, C.J., M.R. Love, L.A. Taylor, and B.W. Eakins, 2011. Digital Elevation Models of Panama City, Florida: Procedures, Data Sources and Analysis, NOAA Technical Memorandum NESDIS NGDC-50, U.S. Dept. of Commerce, Boulder, CO, 46 pp.
- Great Lakes: National Centers for Environmental Information (NCEI)
All graphical work, including UI design and graphical images,
is distributed under CC-BY-ND, unless it is mentionned with a spcial
license.

10
OsmAnd-api/.gitignore vendored
View file

@ -1,10 +0,0 @@
# Android Studio
*/.idea
*/*.iml
# Gradle
*/.gradle
*/local.properties
# Output files
*/build

View file

@ -1 +0,0 @@
<manifest package="net.osmand.aidlapi" />

View file

@ -1,67 +0,0 @@
apply plugin: 'com.android.library'
apply plugin: 'ivy-publish'
apply plugin: 'com.github.dcendents.android-maven'
android {
compileSdkVersion 28
buildToolsVersion "28.0.3"
defaultConfig {
minSdkVersion 14
targetSdkVersion 26
versionCode 2
versionName "2.0"
}
lintOptions {
abortOnError false
}
sourceSets {
main {
manifest.srcFile "AndroidManifest.xml"
aidl.srcDirs = ["src"]
java.srcDirs = ["src"]
}
}
}
afterEvaluate {
publishing {
repositories {
ivy {
url = System.getenv("OSMAND_BINARIES_IVY_ROOT") ?: "./"
}
}
publications {
release(IvyPublication) {
// Applies the component for the release build variant.
from components.release
organisation = 'net.osmand'
module = 'android-aidl-lib'
revision = 'master-snapshot'
}
debug(IvyPublication) {
// Applies the component for the release build variant.
from components.debug
organisation = 'net.osmand'
module = 'android-aidl-lib'
revision = 'master-snapshot'
}
}
}
}
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support:support-annotations:28.0.0'
}
task sourcesJar(type: Jar) {
classifier = 'sources'
from android.sourceSets.main.java.srcDirs
}
artifacts {
archives sourcesJar
}

View file

@ -1,3 +0,0 @@
<resources>
<string name="app_name">OsmAnd-api</string>
</resources>

View file

@ -1,35 +0,0 @@
package net.osmand.aidlapi;
import android.os.Bundle;
import android.os.Parcel;
import android.os.Parcelable;
public abstract class AidlParams implements Parcelable {
@Override
public final void writeToParcel(Parcel dest, int flags) {
Bundle bundle = new Bundle();
writeToBundle(bundle);
dest.writeBundle(bundle);
}
public final void readFromParcel(Parcel in) {
Bundle bundle = in.readBundle(getClass().getClassLoader());
if (bundle != null) {
readFromBundle(bundle);
}
}
protected void writeToBundle(Bundle bundle) {
}
protected void readFromBundle(Bundle bundle) {
}
@Override
public int describeContents() {
return 0;
}
}

View file

@ -1,59 +0,0 @@
package net.osmand.aidlapi;
import net.osmand.aidlapi.search.SearchResult;
import net.osmand.aidlapi.gpx.AGpxBitmap;
import net.osmand.aidlapi.navigation.ADirectionInfo;
import net.osmand.aidlapi.navigation.OnVoiceNavigationParams;
interface IOsmAndAidlCallback {
/**
* Callback for search requests.
*
* @return resultSet - set of SearchResult
*/
void onSearchComplete(in List<SearchResult> resultSet);
/**
* Callback for {@link IOsmAndAidlInterface} registerForUpdates() method.
*/
void onUpdate();
/**
* Callback for {@link IOsmAndAidlInterface} registerForOsmandInitListener() method.
*/
void onAppInitialized();
/**
* Callback for {@link IOsmAndAidlInterface} getBitmapForGpx() method.
*
* @return bitmap - snapshot image of gpx track on map
*/
void onGpxBitmapCreated(in AGpxBitmap bitmap);
/**
* Callback for {@link IOsmAndAidlInterface} registerForNavigationUpdates() method.
*
* @return directionInfo - update on distance to next turn and turns type.
*/
void updateNavigationInfo(in ADirectionInfo directionInfo);
/**
* Callback for {@link IOsmAndAidlInterface} buttons set with addContextMenuButtons() method.
*
* @param buttonId - id of custom button
* @param pointId - id of point button associated with
* @param layerId - id of layer point and button associated with
*/
void onContextMenuButtonClicked(in int buttonId, String pointId, String layerId);
/**
* Callback for {@link IOsmAndAidlInterface} registerForVoiceRouterMessages() method.
*/
void onVoiceRouterNotify(in OnVoiceNavigationParams params);
/**
* Callback for {@link IOsmAndAidlInterface} registerForKeyEvents() method.
*/
void onKeyEvent(in KeyEvent params);
}

View file

@ -1,907 +0,0 @@
package net.osmand.aidlapi;
import net.osmand.aidlapi.map.ALatLon;
import net.osmand.aidlapi.map.SetMapLocationParams;
import net.osmand.aidlapi.map.SetLocationParams;
import net.osmand.aidlapi.favorite.group.AFavoriteGroup;
import net.osmand.aidlapi.favorite.group.AddFavoriteGroupParams;
import net.osmand.aidlapi.favorite.group.RemoveFavoriteGroupParams;
import net.osmand.aidlapi.favorite.group.UpdateFavoriteGroupParams;
import net.osmand.aidlapi.favorite.AFavorite;
import net.osmand.aidlapi.favorite.AddFavoriteParams;
import net.osmand.aidlapi.favorite.RemoveFavoriteParams;
import net.osmand.aidlapi.favorite.UpdateFavoriteParams;
import net.osmand.aidlapi.mapmarker.AMapMarker;
import net.osmand.aidlapi.mapmarker.AddMapMarkerParams;
import net.osmand.aidlapi.mapmarker.RemoveMapMarkerParams;
import net.osmand.aidlapi.mapmarker.UpdateMapMarkerParams;
import net.osmand.aidlapi.calculateroute.CalculateRouteParams;
import net.osmand.aidlapi.profile.ExportProfileParams;
import net.osmand.aidlapi.gpx.ImportGpxParams;
import net.osmand.aidlapi.gpx.ShowGpxParams;
import net.osmand.aidlapi.gpx.StartGpxRecordingParams;
import net.osmand.aidlapi.gpx.StopGpxRecordingParams;
import net.osmand.aidlapi.gpx.HideGpxParams;
import net.osmand.aidlapi.gpx.ASelectedGpxFile;
import net.osmand.aidlapi.mapwidget.AMapWidget;
import net.osmand.aidlapi.mapwidget.AddMapWidgetParams;
import net.osmand.aidlapi.mapwidget.RemoveMapWidgetParams;
import net.osmand.aidlapi.mapwidget.UpdateMapWidgetParams;
import net.osmand.aidlapi.maplayer.point.AMapPoint;
import net.osmand.aidlapi.maplayer.point.AddMapPointParams;
import net.osmand.aidlapi.maplayer.point.RemoveMapPointParams;
import net.osmand.aidlapi.maplayer.point.UpdateMapPointParams;
import net.osmand.aidlapi.maplayer.AMapLayer;
import net.osmand.aidlapi.maplayer.AddMapLayerParams;
import net.osmand.aidlapi.maplayer.RemoveMapLayerParams;
import net.osmand.aidlapi.maplayer.UpdateMapLayerParams;
import net.osmand.aidlapi.navigation.NavigateParams;
import net.osmand.aidlapi.navigation.NavigateGpxParams;
import net.osmand.aidlapi.note.TakePhotoNoteParams;
import net.osmand.aidlapi.note.StartVideoRecordingParams;
import net.osmand.aidlapi.note.StartAudioRecordingParams;
import net.osmand.aidlapi.note.StopRecordingParams;
import net.osmand.aidlapi.gpx.RemoveGpxParams;
import net.osmand.aidlapi.maplayer.point.ShowMapPointParams;
import net.osmand.aidlapi.navdrawer.SetNavDrawerItemsParams;
import net.osmand.aidlapi.navdrawer.NavDrawerFooterParams;
import net.osmand.aidlapi.navdrawer.NavDrawerHeaderParams;
import net.osmand.aidlapi.navigation.PauseNavigationParams;
import net.osmand.aidlapi.navigation.ResumeNavigationParams;
import net.osmand.aidlapi.navigation.StopNavigationParams;
import net.osmand.aidlapi.navigation.MuteNavigationParams;
import net.osmand.aidlapi.navigation.UnmuteNavigationParams;
import net.osmand.aidlapi.IOsmAndAidlCallback;
import net.osmand.aidlapi.search.SearchResult;
import net.osmand.aidlapi.search.SearchParams;
import net.osmand.aidlapi.navigation.NavigateSearchParams;
import net.osmand.aidlapi.customization.SetWidgetsParams;
import net.osmand.aidlapi.customization.OsmandSettingsParams;
import net.osmand.aidlapi.customization.OsmandSettingsInfoParams;
import net.osmand.aidlapi.customization.CustomizationInfoParams;
import net.osmand.aidlapi.customization.ProfileSettingsParams;
import net.osmand.aidlapi.customization.MapMarginsParams;
import net.osmand.aidlapi.customization.CustomPluginParams;
import net.osmand.aidlapi.customization.SelectProfileParams;
import net.osmand.aidlapi.customization.AProfile;
import net.osmand.aidlapi.gpx.AGpxFile;
import net.osmand.aidlapi.gpx.AGpxFileDetails;
import net.osmand.aidlapi.gpx.CreateGpxBitmapParams;
import net.osmand.aidlapi.tiles.ASqliteDbFile;
import net.osmand.aidlapi.plugins.PluginParams;
import net.osmand.aidlapi.copyfile.CopyFileParams;
import net.osmand.aidlapi.navigation.ANavigationUpdateParams;
import net.osmand.aidlapi.navigation.ANavigationVoiceRouterMessageParams;
import net.osmand.aidlapi.navigation.ABlockedRoad;
import net.osmand.aidlapi.navigation.AddBlockedRoadParams;
import net.osmand.aidlapi.navigation.RemoveBlockedRoadParams;
import net.osmand.aidlapi.contextmenu.ContextMenuButtonsParams;
import net.osmand.aidlapi.contextmenu.UpdateContextMenuButtonsParams;
import net.osmand.aidlapi.contextmenu.RemoveContextMenuButtonsParams;
import net.osmand.aidlapi.mapmarker.RemoveMapMarkersParams;
import net.osmand.aidlapi.quickaction.QuickActionParams;
import net.osmand.aidlapi.quickaction.QuickActionInfoParams;
import net.osmand.aidlapi.lock.SetLockStateParams;
import net.osmand.aidlapi.events.AKeyEventsParams;
import net.osmand.aidlapi.info.AppInfoParams;
import net.osmand.aidlapi.profile.ExportProfileParams;
// NOTE: Add new methods at the end of file!!!
interface IOsmAndAidlInterface {
/**
* Add map marker at given location.
*
* @param lat (double) - latitude.
* @param lon (double) - longitude.
* @param name (String)- name of marker.
*/
boolean addMapMarker(in AddMapMarkerParams params);
/**
* Remove map marker.
*
* If ignoreCoordinates is false the marker is only removed if lat/lon match the currently set values of the marker.
* If ignoreCoordinates is true the marker is removed if the name matches, the values of lat/lon are ignored.
*
* @param lat (double) - latitude.
* @param lon (double) - longitude.
* @param name (String)- name of marker.
* @param ignoreCoordinates (boolean) - flag to determine whether lat/lon shall be ignored
*/
boolean removeMapMarker(in RemoveMapMarkerParams params);
/**
* Update map marker.
*
* If ignoreCoordinates is false the marker gets updated only if latPrev/lonPrev match the currently set values of the marker.
* If ignoreCoordinates is true the marker gets updated if the name matches, the values of latPrev/lonPrev are ignored.
*
* @param latPrev (double) - latitude (current marker).
* @param lonPrev (double) - longitude (current marker).
* @param namePrev (String) - name (current marker).
* @param latNew (double) - latitude (new marker).
* @param lonNew (double) - longitude (new marker).
* @param nameNew (String) - name (new marker).
* @param ignoreCoordinates (boolean) - flag to determine whether latPrev/lonPrev shall be ignored
*/
boolean updateMapMarker(in UpdateMapMarkerParams params);
/**
* Add map widget to the right side of the main screen.
* Note: any specified icon should exist in OsmAnd app resources.
*
* @param id (String) - widget id.
* @param menuIconName (String) - icon name (configure map menu).
* @param menuTitle (String) - widget name (configure map menu).
* @param lightIconName (String) - icon name for the light theme (widget).
* @param darkIconName (String) - icon name for the dark theme (widget).
* @param text (String) - main widget text.
* @param description (String) - sub text, like "km/h".
* @param order (int) - order position in the widgets list.
* @param intentOnClick (String) - onClick intent. Called after click on widget as startActivity(Intent intent).
*/
boolean addMapWidget(in AddMapWidgetParams params);
/**
* Remove map widget.
*
* @param (String) id - widget id.
*/
boolean removeMapWidget(in RemoveMapWidgetParams params);
/**
* Update map widget.
* Note: any specified icon should exist in OsmAnd app resources.
*
* @param id (String) - widget id.
* @param menuIconName (String) - icon name (configure map menu).
* @param menuTitle (String) - widget name (configure map menu).
* @param lightIconName (String) - icon name for the light theme (widget).
* @param darkIconName (String) - icon name for the dark theme (widget).
* @param text (String) - main widget text.
* @param description (String) - sub text, like "km/h".
* @param order (int) - order position in the widgets list.
* @param intentOnClick (String) - onClick intent. Called after click on widget as startActivity(Intent intent).
*/
boolean updateMapWidget(in UpdateMapWidgetParams params);
/**
* Add point to user layer.
*
* @param layerId (String) - layer id. Note: layer should be added first.
* @param pointId (String) - point id.
* @param shortName (String) - short name (single char). Displayed on the map.
* @param fullName (String) - full name. Displayed in the context menu on first row.
* @param typeName (String) - type name. Displayed in context menu on second row.
* @param color (int) - color of circle's background.
* @param location (ALatLon) - location of the point.
* @param details (List<String>)- list of details. Displayed under context menu.
* @param params (Map<String, String>) - optional map of params for point.
*/
boolean addMapPoint(in AddMapPointParams params);
/**
* Remove point.
*
* @param layerId (String) - layer id.
* @param pointId (String) - point id.
*/
boolean removeMapPoint(in RemoveMapPointParams params);
/**
* Update point.
*
* @param layerId (String) - layer id.
* @param pointId (String) - point id.
* @param updateOpenedMenuAndMap (boolean) - flag to enable folowing mode and menu updates for point
* @param shortName (String) - short name (single char). Displayed on the map.
* @param fullName (String) - full name. Displayed in the context menu on first row.
* @param typeName (String) - type name. Displayed in context menu on second row.
* @param color (String) - color of circle's background.
* @param location (ALatLon)- location of the point.
* @param details (List<String>) - list of details. Displayed under context menu.
* @param params (Map<String, String>) - optional map of params for point.
*/
boolean updateMapPoint(in UpdateMapPointParams params);
/**
* Add user layer on the map.
*
* @param id (String) - layer id.
* @param name (String) - layer name.
* @param zOrder (float) - z-order position of layer. Default value is 5.5f
* @param points Map<Sting, AMapPoint> - initial list of points. Nullable.
* @param imagePoints (boolean) - use new style for points on map or not. Also default zoom bounds for new style can be edited.
*/
boolean addMapLayer(in AddMapLayerParams params);
/**
* Remove user layer.
*
* @param id (String) - layer id.
*/
boolean removeMapLayer(in RemoveMapLayerParams params);
/**
* Update user layer.
*
* @param id (String) - layer id.
* @param name (String) - layer name.
* @param zOrder (float) - z-order position of layer. Default value is 5.5f
* @param points Map<Sting, AMapPoint> - list of points. Nullable.
* @param imagePoints (boolean) - use new style for points on map or not. Also default zoom bounds for new style can be edited.
*/
boolean updateMapLayer(in UpdateMapLayerParams params);
/**
* Import GPX file to OsmAnd (from URI or file).
*
* @param gpxUri (Uri) - URI created by FileProvider (preferable method).
* @param file (File) - File which represents GPX track (not recomended, OsmAnd should have rights to access file location).
* @param fileName (String) - Destination file name. May contain dirs.
* @param color (String) - color of gpx. Can be one of: "red", "orange", "lightblue", "blue", "purple",
* "translucent_red", "translucent_orange", "translucent_lightblue",
* "translucent_blue", "translucent_purple"
* @param show (boolean) - show track on the map after import
*/
boolean importGpx(in ImportGpxParams params);
/**
* Show GPX file on map.
*
* @param fileName (String) - file name to show. Must be imported first.
*/
boolean showGpx(in ShowGpxParams params);
/**
* Hide GPX file.
*
* @param fileName (String) - file name to hide.
*/
boolean hideGpx(in HideGpxParams params);
/**
* Get list of active GPX files.
*
* @return list of active gpx files.
*/
boolean getActiveGpx(out List<ASelectedGpxFile> files);
/**
* Set map view to current location.
*
* @param latitude (double) - latitude of new map center.
* @param longitude (double) - longitude of new map center.
* @param zoom (float) - map zoom level. Set 0 to keep zoom unchanged.
* @param animated (boolean) - set true to animate changes.
*/
boolean setMapLocation(in SetMapLocationParams params);
boolean calculateRoute(in CalculateRouteParams params);
/**
* Refresh the map (UI)
*/
boolean refreshMap();
/**
* Add favorite group with given params.
*
* @param name (String) - group name.
* @param color (String) - group color. Can be one of: "red", "orange", "yellow",
* "lightgreen", "green", "lightblue", "blue", "purple", "pink", "brown".
* @param visible (boolean) - group visibility.
*/
boolean addFavoriteGroup(in AddFavoriteGroupParams params);
/**
* Remove favorite group with given name.
*
* @param name (String) - name of favorite group.
*/
boolean removeFavoriteGroup(in RemoveFavoriteGroupParams params);
/**
* Update favorite group with given params.
*
* @param namePrev (String) - group name (current).
* @param colorPrev (String) - group color (current).
* @param visiblePrev (boolean) - group visibility (current).
* @param nameNew (String) - group name (new).
* @param colorNew (String) - group color (new).
* @param visibleNew (boolean) - group visibility (new).
*/
boolean updateFavoriteGroup(in UpdateFavoriteGroupParams params);
/**
* Add favorite at given location with given params.
*
* @param lat (double) - latitude.
* @param lon (double) - longitude.
* @param name (String) - name of favorite item.
* @param description (String) - description of favorite item.
* @param category (String) - category of favorite item.
* @param color (String) - color of favorite item. Can be one of: "red", "orange", "yellow",
* "lightgreen", "green", "lightblue", "blue", "purple", "pink", "brown".
* @param visible (boolean) - should favorite item be visible after creation.
*/
boolean addFavorite(in AddFavoriteParams params);
/**
* Remove favorite at given location with given params.
*
* @param lat (double) - latitude.
* @param lon (double) - longitude.
* @param name (String) - name of favorite item.
* @param category (String) - category of favorite item.
*/
boolean removeFavorite(in RemoveFavoriteParams params);
/**
* Update favorite at given location with given params.
*
* @param latPrev (double) - latitude (current favorite).
* @param lonPrev (double) - longitude (current favorite).
* @param namePrev (String) - name of favorite item (current favorite).
* @param categoryPrev (String) - category of favorite item (current favorite).
* @param latNew (double) - latitude (new favorite).
* @param lonNew (double) - longitude (new favorite).
* @param nameNew (String) - name of favorite item (new favorite).
* @param descriptionNew (String) - description of favorite item (new favorite).
* @param categoryNew (String) - category of favorite item (new favorite). Use only to create a new category,
* not to update an existing one. If you want to update an existing category,
* use the {@link #updateFavoriteGroup(String, String, boolean, String, String, boolean)} method.
* @param colorNew (String) - color of new category. Can be one of: "red", "orange", "yellow",
* "lightgreen", "green", "lightblue", "blue", "purple", "pink", "brown".
* @param visibleNew (boolean) - should new category be visible after creation.
*/
boolean updateFavorite(in UpdateFavoriteParams params);
/**
* Start gpx recording.
*/
boolean startGpxRecording(in StartGpxRecordingParams params);
/**
* Stop gpx recording.
*/
boolean stopGpxRecording(in StopGpxRecordingParams params);
/**
* Take photo note.
*
* @param lat (double) - latutude of photo note.
* @param lon (double) - longitude of photo note.
*/
boolean takePhotoNote(in TakePhotoNoteParams params);
/**
* Start video note recording.
*
* @param lat (double) - latutude of video note point.
* @param lon (double) - longitude of video note point.
*/
boolean startVideoRecording(in StartVideoRecordingParams params);
/**
* Start audio note recording.
*
* @param lat (double) - latutude of audio note point.
* @param lon (double) - longitude of audio note point.
*/
boolean startAudioRecording(in StartAudioRecordingParams params);
/**
* Stop Audio/Video recording.
*/
boolean stopRecording(in StopRecordingParams params);
/**
* Start navigation.
*
* @param startName (String) - name of the start point as it displays in OsmAnd's UI. Nullable.
* @param startLat (double) - latitude of the start point. If 0 - current location is used.
* @param startLon (double) - longitude of the start point. If 0 - current location is used.
* @param destName (String) - name of the start point as it displays in OsmAnd's UI.
* @param destLat (double) - latitude of a destination point.
* @param destLon (double) - longitude of a destination point.
* @param profile (String) - One of: "default", "car", "bicycle", "pedestrian", "aircraft", "boat", "hiking", "motorcycle", "truck". Nullable (default).
* @param force (boolean) - ask to stop current navigation if any. False - ask. True - don't ask.
*/
boolean navigate(in NavigateParams params);
/**
* Start navigation using gpx file. User need to grant Uri permission to OsmAnd.
*
* @param gpxUri (Uri) - URI created by FileProvider.
* @param force (boolean) - ask to stop current navigation if any. False - ask. True - don't ask.
*/
boolean navigateGpx(in NavigateGpxParams params);
/**
* Remove GPX file.
*
* @param fileName (String) - file name to remove;
*/
boolean removeGpx(in RemoveGpxParams params);
/**
* Show AMapPoint on map in OsmAnd.
*
* @param layerId (String) - layer id. Note: layer should be added first.
* @param pointId (String) - point id.
* @param shortName (String) - short name (single char). Displayed on the map.
* @param fullName (String) - full name. Displayed in the context menu on first row.
* @param typeName (String) - type name. Displayed in context menu on second row.
* @param color (int) - color of circle's background.
* @param location (ALatLon) - location of the point.
* @param details List<String> - list of details. Displayed under context menu.
* @param params Map<String, String> - optional map of params for point.
*/
boolean showMapPoint(in ShowMapPointParams params);
/**
* Method for adding up to 3 items to the OsmAnd navigation drawer.
*
* @param appPackage - current application package.
* @param names - list of names for items.
* @param uris - list of uris for intents.
* @param iconNames - list of icon names for items.
* @param flags - list of flags for intents. Use -1 if no flags needed.
*/
boolean setNavDrawerItems(in SetNavDrawerItemsParams params);
/**
* Put navigation on pause.
*/
boolean pauseNavigation(in PauseNavigationParams params);
/**
* Resume navigation if it was paused before.
*/
boolean resumeNavigation(in ResumeNavigationParams params);
/**
* Stop navigation. Removes target / intermediate points and route path from the map.
*/
boolean stopNavigation(in StopNavigationParams params);
/**
* Mute voice guidance. Stays muted until unmute manually or via the api.
*/
boolean muteNavigation(in MuteNavigationParams params);
/**
* Unmute voice guidance.
*/
boolean unmuteNavigation(in UnmuteNavigationParams params);
/**
* Run search for POI / Address.
*
* @param searchQuery (String) - search query string.
* @param searchType (int) - type of search. Values:
* SearchParams.SEARCH_TYPE_ALL - all kind of search
* SearchParams.SEARCH_TYPE_POI - POIs only
* SearchParams.SEARCH_TYPE_ADDRESS - addresses only
*
* @param latitude (double) - latitude of original search location.
* @param longitude (double) - longitude of original search location.
* @param radiusLevel (int) - value from 1 to 7. Default value = 1.
* @param totalLimit (int) - limit of returned search result rows. Default value = -1 (unlimited).
*/
boolean search(in SearchParams params, IOsmAndAidlCallback callback);
/**
* Do search and start navigation.
*
* @param startName (String) - name of the start point as it displays in OsmAnd's UI. Nullable.
* @param startLat (double) - latitude of the start point. If 0 - current location is used.
* @param startLon (double) - longitude of the start point. If 0 - current location is used.
* @param searchQuery (String) - Text of a query for searching a destination point. Sent as URI parameter.
* @param searchLat (double) - original location of search (latitude). Sent as URI parameter.
* @param searchLon (double) - original location of search (longitude). Sent as URI parameter.
* @param profile (String) - one of: "default", "car", "bicycle", "pedestrian", "aircraft", "boat", "hiking", "motorcycle", "truck". Nullable (default).
* @param force (boolean) - ask to stop current navigation if any. False - ask. True - don't ask.
*/
boolean navigateSearch(in NavigateSearchParams params);
/**
* Method to register for periodical callbacks from OsmAnd
*
* @param updateTimeMS (long)- period of time in millisecond after which callback is triggered
* @param callback (IOsmAndCallback)- create and provide instance of {@link IOsmAndAidlCallback} interface
* @return id (long) - id of callback in OsmAnd. Needed to unsubscribe from updates.
*/
long registerForUpdates(in long updateTimeMS, IOsmAndAidlCallback callback);
/**
* Method to unregister from periodical callbacks from OsmAnd
*
* @param callbackId (long)- id of registered callback (provided by OsmAnd
* in {@link OsmAndAidlHelper#registerForUpdates(long, IOsmAndAidlCallback)})
*/
boolean unregisterFromUpdates(in long callbackId);
/**
* Method for adding image to the top of Osmand's NavDrawer.
*
* @param imageUri (String)- image's URI.toString
*
* @deprecated
* Use the {@link #setNavDrawerLogoWithParams(NavDrawerHeaderParams params)} method.
*/
boolean setNavDrawerLogo(in String imageUri);
/**
* Method for selected UI elements (like QuickSearch button) to show.
*
* @param ids (List<String>)- list of menu items keys from {@link OsmAndCustomizationConstants}
*/
boolean setEnabledIds(in List<String> ids);
/**
* Method for selected UI elements (like QuickSearch button) to hide.
*
* @param ids (List<String>)- list of menu items keys from {@link OsmAndCustomizationConstants}
*/
boolean setDisabledIds(in List<String> ids);
/**
* Method to show selected NavDrawer's menu items.
*
* @param patterns (List<String>) - list of menu items names from {@link OsmAndCustomizationConstants}
*/
boolean setEnabledPatterns(in List<String> patterns);
/**
* Method to hide selected NavDrawer's menu items.
*
* @param patterns (List<String>)- list of menu items names from {@link OsmAndCustomizationConstants}
*/
boolean setDisabledPatterns(in List<String> patterns);
/**
* Register OsmAnd widgets for visibility.
*
* @param widgetKey ()- widget id.
* @param appModKeys - list of OsmAnd Application modes widget active with. Could be "null" for all modes.
*/
boolean regWidgetVisibility(in SetWidgetsParams params);
/**
* Register OsmAnd widgets for availability.
*
* @param widgetKey (String) - widget id.
* @param appModKeys (List<String>)- ist of OsmAnd Application modes widget active with. Could be "null" for all modes.
*/
boolean regWidgetAvailability(in SetWidgetsParams params);
/**
* Add custom parameters for OsmAnd settings to associate with client app.
*
* @param sharedPreferencesName (String)- string with name of clint's app for shared preferences key
* @param bundle (Bundle)- bundle with keys from Settings IDs {@link OsmAndCustomizationConstants} and Settings params
*/
boolean customizeOsmandSettings(in OsmandSettingsParams params);
/**
* Method to get list of gpx files currently registered (imported or created) in OsmAnd;
*
* @return list of gpx files
*/
boolean getImportedGpx(out List<AGpxFile> files);
/**
* Method to get list of sqlitedb files registered in OsmAnd;
*
* @return list of sqlitedb files
*/
boolean getSqliteDbFiles(out List<ASqliteDbFile> files);
/**
* Method to get list of currently active sqlitedb files
*
* @return list of sqlitedb files
*/
boolean getActiveSqliteDbFiles(out List<ASqliteDbFile> files);
/**
* Method to show selected sqlitedb file as map overlay.
*
* @param fileName (String) - name of sqlitedb file
*/
boolean showSqliteDbFile(String fileName);
/**
* Method to hide sqlitedb file from map overlay.
*
* @param fileName (String) - name of sqlitedb file
*/
boolean hideSqliteDbFile(String fileName);
/**
* Method for adding image to the top of OsmAnd's NavDrawer with additional params
*
* @param imageUri (String) - image's URI.toString
* @param packageName (String) - client's app package name
* @param intent (String) - intent for additional functionality on image click
*
*/
boolean setNavDrawerLogoWithParams(in NavDrawerHeaderParams params);
/**
* Method for adding functionality to "Powered by Osmand" logo in NavDrawer's footer
* (reset OsmAnd settings to pre-clinet app's state)
*
* @param packageName (String) - package name
* @param intent (String) - intent
* @param appName (String) - client's app name
*/
boolean setNavDrawerFooterWithParams(in NavDrawerFooterParams params);
/**
* Restore default (pre-client) OsmAnd settings and state:
* clears features, widgets and settings customization, NavDraw logo.
*/
boolean restoreOsmand();
/**
* Method to change state of plug-ins in OsmAnd.
*
* @param pluginId (String) - id (name) of plugin.
* @param newState (int) - new state (0 - off, 1 - on).
*/
boolean changePluginState(in PluginParams params);
/**
* Method to register for callback on OsmAnd initialization
* @param callback (IOsmAndAidlCallback) - create and provide instance of {@link IOsmAndAidlCallback} interface
*/
boolean registerForOsmandInitListener(in IOsmAndAidlCallback callback);
/**
* Requests bitmap snap-shot of map with GPX file from provided URI in its center.
* You can set bitmap size, density and GPX lines color, but you need
* to manually download appropriate map in OsmAnd or background will be empty.
* Bitmap will be returned through callback {@link IOsmAndAidlCallback#onGpxBitmapCreated(AGpxBitmap)}
*
* @param gpxUri (Uri/File) - Uri for gpx file
* @param density (float) - image density. Recommended to use default metrics for device's display.
* @param widthPixels (int) - width of bitmap
* @param heightPixels (int) - height of bitmap
* @param color (int) - color in ARGB format
* @param callback (IOsmAndAidlCallback) - instance of callback from OsmAnd.
*/
boolean getBitmapForGpx(in CreateGpxBitmapParams file, IOsmAndAidlCallback callback);
/**
* Method to copy files to OsmAnd part by part. For now supports only sqlitedb format.
* Part size (bytearray) should not exceed 256k.
*
* @param fileName (String) - name of file
* @param filePartData (byte[]) - parts of file, byte[] with size 256k or less.
* @param startTime (long) - timestamp of copying start.
* @param isDone (boolean) - boolean to mark end of copying.
* @return number of last successfully received file part or error(-1).
*/
int copyFile(in CopyFileParams filePart);
/**
* Method to register for updates during navgation. Notifies user about distance to the next turn and its type.
*
* @param subscribeToUpdates (boolean) - subscribe or unsubscribe from updates
* @param callbackId (long) - id of callback, needed to unsubscribe from updates
* @param callback (IOsmAndAidlCallback) - callback to notify user on navigation data change
*/
long registerForNavigationUpdates(in ANavigationUpdateParams params, IOsmAndAidlCallback callback);
/**
* Method to add Context Menu buttons to OsmAnd Context menu.
*
* {@link ContextMenuButtonsParams } is a wrapper class for params:
*
* @param leftButton (AContextMenuButton) - parameters for left context button:
* @param buttonId (String at AContextMenuButton) - id of button in View
* @param leftTextCaption (String at AContextMenuButton) - left-side button text
* @param rightTextCaption (String at AContextMenuButton) - right-side button text
* @param String leftIconName (String at AContextMenuButton) - name of left-side icon
* @param String rightIconName (String at AContextMenuButton) - name of right-side icon
* @param boolean needColorizeIcon (booleanat AContextMenuButton) - flag to apply color to icon
* @param boolean enabled (boolean at AContextMenuButton) - enable button flag
*
* @param rightButton (AContextMenuButton) - parameters for right context button, see <i>leftButton</i> param for details.
* @param id (String) - button id;
* @param appPackage (String) - clinet's app package name
* @param layerId (String) - id of Osmand's map layer
* @param callbackId (long) - {@link IOsmAndAidlCallback} id
* @param pointsIds (List<String>) - list of point Ids to which this rules applies to.
*
* @param callback (IOsmAndAidlCallback) - AIDL callback;
*
* @return long - callback's Id;
*/
long addContextMenuButtons(in ContextMenuButtonsParams params, IOsmAndAidlCallback callback);
/**
* Method to remove Context Menu buttons from OsmAnd Context menu.
*
* {@link RemoveContextMenuButtonsParams} is a wrapper class for params:
*
* @param paramsId (String) - id of {@link ContextMenuButtonsParams} of button you want to remove;
* @param callbackId (long) - id of {@ling IOsmAndAidlCallback} of button you want to remove;
*
*/
boolean removeContextMenuButtons(in RemoveContextMenuButtonsParams params);
/**
* Method to update params on already set custom Context Button.
*
* {@link UpdateContextMenuButtonsParams } is a wrapper class for params:
*
* @param leftButton (AContextMenuButton) - parameters for left context button:
* @param buttonId (String at AContextMenuButton) - id of button in View
* @param leftTextCaption (String at AContextMenuButton) - left-side button text
* @param rightTextCaption (String at AContextMenuButton) - right-side button text
* @param String leftIconName (String at AContextMenuButton) - name of left-side icon
* @param String rightIconName (String at AContextMenuButton) - name of right-side icon
* @param boolean needColorizeIcon (booleanat AContextMenuButton) - flag to apply color to icon
* @param boolean enabled (boolean at AContextMenuButton) - enable button flag
*
* @param rightButton (AContextMenuButton) - parameters for right context button, see <i>leftButton</i> param for details.
* @param id (String) - button id;
* @param appPackage (String) - clinet's app package name
* @param layerId (String) - id of Osmand's map layer
* @param callbackId (long) - {@link IOsmAndAidlCallback} id
* @param pointsIds (List<String>) - list of point Ids to which this rules applies to.
*
*/
boolean updateContextMenuButtons(in UpdateContextMenuButtonsParams params);
/**
* Method to check if there is a customized setting in OsmAnd Settings.
*
* {@link OsmandSettingsInfoParams} is a wrapper class for params:
*
* @param sharedPreferencesName (String at OsmandSettingInfoParams) - key of setting in OsmAnd's preferences.
*
* @return boolean - true if setting is already set in SharedPreferences
*
*/
boolean areOsmandSettingsCustomized(in OsmandSettingsInfoParams params);
/**
* Method to customize parameters of OsmAnd.
*
* @param params (CustomizationInfoParams) - wrapper class for custom settings and ui.
*
* @param settingsParams (OsmandSettingsParams) - wrapper class for OsmAnd shared preferences params.
* See {@link #customizeOsmandSettings(in OsmandSettingsParams params) customizeOsmandSettings}
* method description for details.
* @param navDrawerHeaderParams (NavDrawerHeaderParams) - wrapper class for OsmAnd navdrawer header params.
* See {@link #setNavDrawerLogoWithParams(in NavDrawerHeaderParams params) setNavDrawerLogoWithParams}
* method description for details.
* @param navDrawerFooterParams (NavDrawerFooterParams) - wrapper class for OsmAnd navdrawer footer params.
* See {@link #setNavDrawerFooterWithParams(in NavDrawerFooterParams params) setNavDrawerFooterWithParams}
* method description for details.
* @param visibilityWidgetsParams (ArrayList<SetWidgetsParams>) - wrapper class for OsmAnd widgets visibility.
* See {@link #regWidgetVisibility(in SetWidgetsParams params) regWidgetVisibility}
* method description for details.
* @param availabilityWidgetsParams (ArrayList<SetWidgetsParams>) - wrapper class for OsmAnd widgets availability.
* See {@link #regWidgetAvailability(in SetWidgetsParams params) regWidgetAvailability}
* method description for details.
* @param pluginsParams (ArrayList<PluginParams>) - wrapper class for OsmAnd plugins states params.
* See {@link #changePluginState(in PluginParams params) changePluginState}
* method description for details.
* @param featuresEnabledIds (List<String>) - list of UI elements (like QuickSearch button) to show.
* See {@link #setEnabledIds(in List<String> ids) setEnabledIds}
* @param featuresDisabledIds (List<String>) - list of UI elements (like QuickSearch button) to hide.
* See {@link #setDisabledIds(in List<String> ids) setDisabledIds}
* @param featuresEnabledPatterns (List<String>) - list of NavDrawer menu items to show.
* See {@link #setEnabledPatterns(in List<String> patterns) setEnabledPatterns}
* @param featuresDisabledPatterns (List<String>) - list of NavDrawer menu items to hide.
* See {@link #setDisabledPatterns(in List<String> patterns) setDisabledPatterns}
*
*/
boolean setCustomization(in CustomizationInfoParams params);
/**
* Method to register for Voice Router voice messages during navigation. Notifies user about voice messages.
*
* @params subscribeToUpdates (boolean) - boolean flag to subscribe or unsubscribe from messages
* @params callbackId (long) - id of callback, needed to unsubscribe from messages
* @params callback (IOsmAndAidlCallback) - callback to notify user on voice message
*/
long registerForVoiceRouterMessages(in ANavigationVoiceRouterMessageParams params, IOsmAndAidlCallback callback);
/**
* Removes all active map markers (marks them as passed and moves to history)
* Empty class of params
*/
boolean removeAllActiveMapMarkers(in RemoveMapMarkersParams params);
boolean importProfile(in ProfileSettingsParams params);
boolean executeQuickAction(in QuickActionParams params);
boolean getQuickActionsInfo(out List<QuickActionInfoParams> quickActions);
/**
* Toggle Lock/Unlock screen.
*/
boolean setLockState(in SetLockStateParams params);
/**
* Method to register for key events.
*
* @params subscribeToUpdates (boolean) - boolean flag to subscribe or unsubscribe from key events
* @params callbackId (long) - id of callback, needed to unsubscribe key events
* @params callback (IOsmAndAidlCallback) - callback to notify user on key event
* @params keyEventList (List<Integer>) - list of requested key events
*/
long registerForKeyEvents(in AKeyEventsParams params, IOsmAndAidlCallback callback);
AppInfoParams getAppInfo();
boolean setMapMargins(in MapMarginsParams params);
boolean exportProfile(in ExportProfileParams params);
/**
* Is any fragment open.
*/
boolean isFragmentOpen();
/**
* Is contect menu open.
*/
boolean isMenuOpen();
int getPluginVersion(in CustomPluginParams params);
boolean selectProfile(in SelectProfileParams params);
boolean getProfiles(out List<AProfile> profiles);
boolean getBlockedRoads(out List<ABlockedRoad> blockedRoads);
boolean addRoadBlock(in AddBlockedRoadParams params);
boolean removeRoadBlock(in RemoveBlockedRoadParams params);
boolean setLocation(in SetLocationParams params);
}

View file

@ -1,111 +0,0 @@
package net.osmand.aidlapi;
public interface OsmAndCustomizationConstants {
// Navigation Drawer:
String DRAWER_ITEM_ID_SCHEME = "drawer.action.";
String DRAWER_SWITCH_PROFILE_ID = DRAWER_ITEM_ID_SCHEME + "switch_profile";
String DRAWER_CONFIGURE_PROFILE_ID = DRAWER_ITEM_ID_SCHEME + "configure_profile";
String DRAWER_DASHBOARD_ID = DRAWER_ITEM_ID_SCHEME + "dashboard";
String DRAWER_MAP_MARKERS_ID = DRAWER_ITEM_ID_SCHEME + "map_markers";
String DRAWER_MY_PLACES_ID = DRAWER_ITEM_ID_SCHEME + "my_places";
String DRAWER_SEARCH_ID = DRAWER_ITEM_ID_SCHEME + "search";
String DRAWER_DIRECTIONS_ID = DRAWER_ITEM_ID_SCHEME + "directions";
String DRAWER_TRIP_RECORDING_ID = DRAWER_ITEM_ID_SCHEME + "trip_recording";
String DRAWER_CONFIGURE_MAP_ID = DRAWER_ITEM_ID_SCHEME + "configure_map";
String DRAWER_DOWNLOAD_MAPS_ID = DRAWER_ITEM_ID_SCHEME + "download_maps";
String DRAWER_OSMAND_LIVE_ID = DRAWER_ITEM_ID_SCHEME + "osmand_live";
String DRAWER_TRAVEL_GUIDES_ID = DRAWER_ITEM_ID_SCHEME + "travel_guides";
String DRAWER_MEASURE_DISTANCE_ID = DRAWER_ITEM_ID_SCHEME + "measure_distance";
String DRAWER_CONFIGURE_SCREEN_ID = DRAWER_ITEM_ID_SCHEME + "configure_screen";
String DRAWER_PLUGINS_ID = DRAWER_ITEM_ID_SCHEME + "plugins";
String DRAWER_SETTINGS_ID = DRAWER_ITEM_ID_SCHEME + "settings";
String DRAWER_HELP_ID = DRAWER_ITEM_ID_SCHEME + "help";
String DRAWER_BUILDS_ID = DRAWER_ITEM_ID_SCHEME + "builds";
String DRAWER_DIVIDER_ID = DRAWER_ITEM_ID_SCHEME + "divider";
// Configure Map:
String CONFIGURE_MAP_ITEM_ID_SCHEME = "map.configure.";
String SHOW_ITEMS_ID_SCHEME = CONFIGURE_MAP_ITEM_ID_SCHEME + "show.";
String RENDERING_ITEMS_ID_SCHEME = CONFIGURE_MAP_ITEM_ID_SCHEME + "rendering.";
String CUSTOM_RENDERING_ITEMS_ID_SCHEME = RENDERING_ITEMS_ID_SCHEME + "custom.";
String APP_PROFILES_ID = CONFIGURE_MAP_ITEM_ID_SCHEME + "app_profiles";
String SHOW_CATEGORY_ID = SHOW_ITEMS_ID_SCHEME + "category";
String FAVORITES_ID = SHOW_ITEMS_ID_SCHEME + "favorites";
String POI_OVERLAY_ID = SHOW_ITEMS_ID_SCHEME + "poi_overlay";
String POI_OVERLAY_LABELS_ID = SHOW_ITEMS_ID_SCHEME + "poi_overlay_labels";
String TRANSPORT_ID = SHOW_ITEMS_ID_SCHEME + "transport";
String GPX_FILES_ID = SHOW_ITEMS_ID_SCHEME + "gpx_files";
String WIKIPEDIA_ID = SHOW_ITEMS_ID_SCHEME + "wikipedia";
String MAP_MARKERS_ID = SHOW_ITEMS_ID_SCHEME + "map_markers";
String MAP_SOURCE_ID = SHOW_ITEMS_ID_SCHEME + "map_source";
String RECORDING_LAYER = SHOW_ITEMS_ID_SCHEME + "recording_layer";
String MAPILLARY = SHOW_ITEMS_ID_SCHEME + "mapillary";
String OSM_NOTES = SHOW_ITEMS_ID_SCHEME + "osm_notes";
String OSM_EDITS = SHOW_ITEMS_ID_SCHEME + "osm_edits";
String OVERLAY_MAP = SHOW_ITEMS_ID_SCHEME + "overlay_map";
String UNDERLAY_MAP = SHOW_ITEMS_ID_SCHEME + "underlay_map";
String CONTOUR_LINES = SHOW_ITEMS_ID_SCHEME + "contour_lines";
String TERRAIN = SHOW_ITEMS_ID_SCHEME + "terrain";
String MAP_RENDERING_CATEGORY_ID = RENDERING_ITEMS_ID_SCHEME + "category";
String MAP_STYLE_ID = RENDERING_ITEMS_ID_SCHEME + "map_style";
String MAP_MODE_ID = RENDERING_ITEMS_ID_SCHEME + "map_mode";
String MAP_MAGNIFIER_ID = RENDERING_ITEMS_ID_SCHEME + "map_magnifier";
String ROAD_STYLE_ID = RENDERING_ITEMS_ID_SCHEME + "road_style";
String TEXT_SIZE_ID = RENDERING_ITEMS_ID_SCHEME + "text_size";
String MAP_LANGUAGE_ID = RENDERING_ITEMS_ID_SCHEME + "map_language";
String DETAILS_ID = RENDERING_ITEMS_ID_SCHEME + "details";
String HIDE_ID = RENDERING_ITEMS_ID_SCHEME + "hide";
String ROUTES_ID = RENDERING_ITEMS_ID_SCHEME + "routes";
// Map Controls:
String HUD_BTN_ID_SCHEME = "map.view.";
String LAYERS_HUD_ID = HUD_BTN_ID_SCHEME + "layers";
String COMPASS_HUD_ID = HUD_BTN_ID_SCHEME + "compass";
String QUICK_SEARCH_HUD_ID = HUD_BTN_ID_SCHEME + "quick_search";
String BACK_TO_LOC_HUD_ID = HUD_BTN_ID_SCHEME + "back_to_loc";
String MENU_HUD_ID = HUD_BTN_ID_SCHEME + "menu";
String ROUTE_PLANNING_HUD_ID = HUD_BTN_ID_SCHEME + "route_planning";
String ZOOM_IN_HUD_ID = HUD_BTN_ID_SCHEME + "zoom_id";
String ZOOM_OUT_HUD_ID = HUD_BTN_ID_SCHEME + "zoom_out";
//Map Context Menu Actions:
String MAP_CONTEXT_MENU_ACTIONS = "point.actions.";
String MAP_CONTEXT_MENU_ADD_ID = MAP_CONTEXT_MENU_ACTIONS + "add";
String MAP_CONTEXT_MENU_MARKER_ID = MAP_CONTEXT_MENU_ACTIONS + "marker";
String MAP_CONTEXT_MENU_SHARE_ID = MAP_CONTEXT_MENU_ACTIONS + "share";
String MAP_CONTEXT_MENU_MORE_ID = MAP_CONTEXT_MENU_ACTIONS + "more";
String MAP_CONTEXT_MENU_DIRECTIONS_FROM_ID = MAP_CONTEXT_MENU_ACTIONS + "directions_from";
String MAP_CONTEXT_MENU_SEARCH_NEARBY = MAP_CONTEXT_MENU_ACTIONS + "search_nearby";
String MAP_CONTEXT_MENU_CHANGE_MARKER_POSITION = MAP_CONTEXT_MENU_ACTIONS + "change_m_position";
String MAP_CONTEXT_MENU_MARK_AS_PARKING_LOC = MAP_CONTEXT_MENU_ACTIONS + "mark_as_parking";
String MAP_CONTEXT_MENU_MEASURE_DISTANCE = MAP_CONTEXT_MENU_ACTIONS + "measure_distance";
String MAP_CONTEXT_MENU_AVOID_ROAD = MAP_CONTEXT_MENU_ACTIONS + "avoid_road";
String MAP_CONTEXT_MENU_EDIT_GPX_WP = MAP_CONTEXT_MENU_ACTIONS + "edit_gpx_waypoint";
String MAP_CONTEXT_MENU_ADD_GPX_WAYPOINT = MAP_CONTEXT_MENU_ACTIONS + "add_gpx_waypoint";
String MAP_CONTEXT_MENU_UPDATE_MAP = MAP_CONTEXT_MENU_ACTIONS + "update_map";
String MAP_CONTEXT_MENU_DOWNLOAD_MAP = MAP_CONTEXT_MENU_ACTIONS + "download_map";
String MAP_CONTEXT_MENU_MODIFY_POI = MAP_CONTEXT_MENU_ACTIONS + "modify_poi";
String MAP_CONTEXT_MENU_MODIFY_OSM_CHANGE = MAP_CONTEXT_MENU_ACTIONS + "modify_osm_change";
String MAP_CONTEXT_MENU_CREATE_POI = MAP_CONTEXT_MENU_ACTIONS + "create_poi";
String MAP_CONTEXT_MENU_MODIFY_OSM_NOTE = MAP_CONTEXT_MENU_ACTIONS + "modify_osm_note";
String MAP_CONTEXT_MENU_OPEN_OSM_NOTE = MAP_CONTEXT_MENU_ACTIONS + "open_osm_note";
String MAP_CONTEXT_MENU_AUDIO_NOTE = MAP_CONTEXT_MENU_ACTIONS + "audio_note";
String MAP_CONTEXT_MENU_VIDEO_NOTE = MAP_CONTEXT_MENU_ACTIONS + "video_note";
String MAP_CONTEXT_MENU_PHOTO_NOTE = MAP_CONTEXT_MENU_ACTIONS + "photo_note";
//Plug-in's IDs:
String PLUGIN_OSMAND_MONITOR = "osmand.monitoring";
String PLUGIN_MAPILLARY = "osmand.mapillary";
String PLUGIN_OSMAND_DEV = "osmand.development";
String PLUGIN_AUDIO_VIDEO_NOTES = "osmand.audionotes";
String PLUGIN_NAUTICAL = "nauticalPlugin.plugin";
String PLUGIN_OSMAND_EDITING = "osm.editing";
String PLUGIN_PARKING_POSITION = "osmand.parking.position";
String PLUGIN_RASTER_MAPS = "osmand.rastermaps";
String PLUGIN_SKI_MAPS = "skimaps.plugin";
String PLUGIN_SRTM = "osmand.srtm";
}

View file

@ -1,36 +0,0 @@
package net.osmand.aidlapi;
public interface OsmandAidlConstants {
int OK_RESPONSE = 0;
int MIN_UPDATE_TIME_MS = 1000;
long COPY_FILE_PART_SIZE_LIMIT = 256 * 1024;
long COPY_FILE_MAX_LOCK_TIME_MS = 10000;
int CANNOT_ACCESS_API_ERROR = -5;
int UNKNOWN_API_ERROR = -2;
int MIN_UPDATE_TIME_MS_ERROR = -1;
int COPY_FILE_PARAMS_ERROR = -1001;
int COPY_FILE_PART_SIZE_LIMIT_ERROR = -1002;
int COPY_FILE_WRITE_LOCK_ERROR = -1003;
int COPY_FILE_IO_ERROR = -1004;
int COPY_FILE_UNSUPPORTED_FILE_TYPE_ERROR = -1005;
int TURN_TYPE_C = 1; //"C"; // continue (go straight)
int TURN_TYPE_TL = 2; // turn left
int TURN_TYPE_TSLL = 3; // turn slightly left
int TURN_TYPE_TSHL = 4; // turn sharply left
int TURN_TYPE_TR = 5; // turn right
int TURN_TYPE_TSLR = 6; // turn slightly right
int TURN_TYPE_TSHR = 7; // turn sharply right
int TURN_TYPE_KL = 8; // keep left
int TURN_TYPE_KR = 9; // keep right
int TURN_TYPE_TU = 10; // U-turn
int TURN_TYPE_TRU = 11; // Right U-turn
int TURN_TYPE_OFFR = 12; // Off route
int TURN_TYPE_RNDB = 13; // Roundabout
int TURN_TYPE_RNLB = 14; // Roundabout left
}

View file

@ -1,3 +0,0 @@
package net.osmand.aidlapi.calculateroute;
parcelable CalculateRouteParams;

View file

@ -1,101 +0,0 @@
package net.osmand.aidlapi.calculateroute;
import android.os.Bundle;
import android.os.Parcel;
import net.osmand.aidlapi.AidlParams;
import net.osmand.aidlapi.map.ALatLon;
import java.util.ArrayList;
import java.util.List;
public class CalculateRouteParams extends AidlParams {
private ALatLon startPoint;
private String startPointName;
private ALatLon endPoint;
private String endPointName;
private ArrayList<ALatLon> intermediatePoints = new ArrayList<>();
private ArrayList<String> intermediateNames = new ArrayList<>();
public CalculateRouteParams(ALatLon startPoint, String startPointName,
ALatLon endPoint, String endPointName,
List<ALatLon> intermediatePoints, List<String> intermediateNames) {
if (endPoint == null) {
throw new IllegalArgumentException("endPoint cannot be null");
}
this.startPoint = startPoint;
this.startPointName = startPointName;
this.endPoint = endPoint;
this.endPointName = endPointName;
if (intermediatePoints != null) {
this.intermediatePoints.addAll(intermediatePoints);
}
if (intermediateNames != null) {
this.intermediateNames.addAll(intermediateNames);
}
}
public CalculateRouteParams(Parcel in) {
readFromParcel(in);
}
public static final Creator<CalculateRouteParams> CREATOR = new Creator<CalculateRouteParams>() {
@Override
public CalculateRouteParams createFromParcel(Parcel in) {
return new CalculateRouteParams(in);
}
@Override
public CalculateRouteParams[] newArray(int size) {
return new CalculateRouteParams[size];
}
};
public ALatLon getStartPoint() {
return startPoint;
}
public String getStartPointName() {
return startPointName;
}
public ALatLon getEndPoint() {
return endPoint;
}
public String getEndPointName() {
return endPointName;
}
public List<ALatLon> getIntermediatePoints() {
return intermediatePoints;
}
public List<String> getIntermediateNames() {
return intermediateNames;
}
@Override
public void writeToBundle(Bundle bundle) {
bundle.putParcelable("startPoint", startPoint);
bundle.putString("startPointName", startPointName);
bundle.putParcelable("endPoint", endPoint);
bundle.putString("endPointName", endPointName);
bundle.putParcelableArrayList("intermediatePoints", intermediatePoints);
bundle.putStringArrayList("intermediateNames", intermediateNames);
}
@Override
protected void readFromBundle(Bundle bundle) {
bundle.setClassLoader(ALatLon.class.getClassLoader());
startPoint = bundle.getParcelable("startPoint");
startPointName = bundle.getString("startPointName");
endPoint = bundle.getParcelable("endPoint");
endPointName = bundle.getString("endPointName");
intermediatePoints = bundle.getParcelableArrayList("intermediatePoints");
intermediateNames = bundle.getStringArrayList("intermediateNames");
}
}

View file

@ -1,3 +0,0 @@
package net.osmand.aidlapi.contextmenu;
parcelable AContextMenuButton;

View file

@ -1,95 +0,0 @@
package net.osmand.aidlapi.contextmenu;
import android.os.Bundle;
import android.os.Parcel;
import net.osmand.aidlapi.AidlParams;
public class AContextMenuButton extends AidlParams {
private int buttonId;
private String leftTextCaption;
private String rightTextCaption;
private String leftIconName;
private String rightIconName;
private boolean needColorizeIcon;
private boolean enabled;
public AContextMenuButton(int buttonId, String leftTextCaption, String rightTextCaption, String leftIconName, String rightIconName, boolean needColorizeIcon, boolean enabled) {
this.buttonId = buttonId;
this.leftTextCaption = leftTextCaption;
this.rightTextCaption = rightTextCaption;
this.leftIconName = leftIconName;
this.rightIconName = rightIconName;
this.needColorizeIcon = needColorizeIcon;
this.enabled = enabled;
}
protected AContextMenuButton(Parcel in) {
readFromParcel(in);
}
public static final Creator<AContextMenuButton> CREATOR = new Creator<AContextMenuButton>() {
@Override
public AContextMenuButton createFromParcel(Parcel in) {
return new AContextMenuButton(in);
}
@Override
public AContextMenuButton[] newArray(int size) {
return new AContextMenuButton[size];
}
};
public int getButtonId() {
return buttonId;
}
public String getLeftTextCaption() {
return leftTextCaption;
}
public String getRightTextCaption() {
return rightTextCaption;
}
public String getLeftIconName() {
return leftIconName;
}
public String getRightIconName() {
return rightIconName;
}
public boolean isTintIcon() {
return needColorizeIcon;
}
public boolean isEnabled() {
return enabled;
}
@Override
public void writeToBundle(Bundle bundle) {
bundle.putInt("buttonId", buttonId);
bundle.putString("leftTextCaption", leftTextCaption);
bundle.putString("rightTextCaption", rightTextCaption);
bundle.putString("leftIconName", leftIconName);
bundle.putString("rightIconName", rightIconName);
bundle.putBoolean("needColorizeIcon", needColorizeIcon);
bundle.putBoolean("enabled", enabled);
}
@Override
protected void readFromBundle(Bundle bundle) {
buttonId = bundle.getInt("buttonId");
leftTextCaption = bundle.getString("leftTextCaption");
rightTextCaption = bundle.getString("rightTextCaption");
leftIconName = bundle.getString("leftIconName");
rightIconName = bundle.getString("rightIconName");
needColorizeIcon = bundle.getBoolean("needColorizeIcon");
enabled = bundle.getBoolean("enabled");
}
}

View file

@ -1,3 +0,0 @@
package net.osmand.aidlapi.contextmenu;
parcelable ContextMenuButtonsParams;

View file

@ -1,106 +0,0 @@
package net.osmand.aidlapi.contextmenu;
import android.os.Bundle;
import android.os.Parcel;
import net.osmand.aidlapi.AidlParams;
import java.util.ArrayList;
import java.util.List;
public class ContextMenuButtonsParams extends AidlParams {
private AContextMenuButton leftButton;
private AContextMenuButton rightButton;
private String id;
private String appPackage;
private String layerId;
private long callbackId = -1L;
private ArrayList<String> pointsIds = new ArrayList<>();
public ContextMenuButtonsParams(AContextMenuButton leftButton, AContextMenuButton rightButton, String id, String appPackage, String layerId, long callbackId, List<String> pointsIds) {
this.leftButton = leftButton;
this.rightButton = rightButton;
this.id = id;
this.appPackage = appPackage;
this.layerId = layerId;
this.callbackId = callbackId;
if (pointsIds != null) {
this.pointsIds.addAll(pointsIds);
}
}
public ContextMenuButtonsParams(Parcel in) {
readFromParcel(in);
}
public static final Creator<ContextMenuButtonsParams> CREATOR = new Creator<ContextMenuButtonsParams>() {
@Override
public ContextMenuButtonsParams createFromParcel(Parcel in) {
return new ContextMenuButtonsParams(in);
}
@Override
public ContextMenuButtonsParams[] newArray(int size) {
return new ContextMenuButtonsParams[size];
}
};
public AContextMenuButton getLeftButton() {
return leftButton;
}
public AContextMenuButton getRightButton() {
return rightButton;
}
public String getId() {
return id;
}
public String getAppPackage() {
return appPackage;
}
public String getLayerId() {
return layerId;
}
public long getCallbackId() {
return callbackId;
}
public void setCallbackId(long callbackId) {
this.callbackId = callbackId;
}
public List<String> getPointsIds() {
return pointsIds;
}
@Override
public void writeToBundle(Bundle bundle) {
bundle.putParcelable("leftButton", leftButton);
bundle.putParcelable("rightButton", rightButton);
bundle.putString("id", id);
bundle.putString("appPackage", appPackage);
bundle.putString("layerId", layerId);
bundle.putLong("callbackId", callbackId);
bundle.putStringArrayList("pointsIds", pointsIds);
}
@Override
protected void readFromBundle(Bundle bundle) {
bundle.setClassLoader(AContextMenuButton.class.getClassLoader());
leftButton = bundle.getParcelable("leftButton");
rightButton = bundle.getParcelable("rightButton");
id = bundle.getString("id");
appPackage = bundle.getString("appPackage");
layerId = bundle.getString("layerId");
callbackId = bundle.getLong("callbackId");
pointsIds = bundle.getStringArrayList("pointsIds");
}
}

View file

@ -1,3 +0,0 @@
package net.osmand.aidlapi.contextmenu;
parcelable RemoveContextMenuButtonsParams;

View file

@ -1,53 +0,0 @@
package net.osmand.aidlapi.contextmenu;
import android.os.Bundle;
import android.os.Parcel;
import net.osmand.aidlapi.AidlParams;
public class RemoveContextMenuButtonsParams extends AidlParams {
private String paramsId;
private long callbackId = -1L;
public RemoveContextMenuButtonsParams(String paramsId, long callbackId) {
this.paramsId = paramsId;
this.callbackId = callbackId;
}
public RemoveContextMenuButtonsParams(Parcel in) {
readFromParcel(in);
}
public static final Creator<RemoveContextMenuButtonsParams> CREATOR = new Creator<RemoveContextMenuButtonsParams>() {
@Override
public RemoveContextMenuButtonsParams createFromParcel(Parcel in) {
return new RemoveContextMenuButtonsParams(in);
}
@Override
public RemoveContextMenuButtonsParams[] newArray(int size) {
return new RemoveContextMenuButtonsParams[size];
}
};
public String getParamsId() {
return paramsId;
}
public long getCallbackId() {
return callbackId;
}
@Override
public void writeToBundle(Bundle bundle) {
bundle.putString("paramsId", paramsId);
bundle.putLong("callbackId", callbackId);
}
@Override
protected void readFromBundle(Bundle bundle) {
paramsId = bundle.getString("paramsId");
callbackId = bundle.getLong("callbackId");
}
}

View file

@ -1,3 +0,0 @@
package net.osmand.aidlapi.contextmenu;
parcelable UpdateContextMenuButtonsParams;

View file

@ -1,46 +0,0 @@
package net.osmand.aidlapi.contextmenu;
import android.os.Bundle;
import android.os.Parcel;
import net.osmand.aidlapi.AidlParams;
public class UpdateContextMenuButtonsParams extends AidlParams {
private ContextMenuButtonsParams buttonsParams;
public UpdateContextMenuButtonsParams(ContextMenuButtonsParams widget) {
this.buttonsParams = widget;
}
public UpdateContextMenuButtonsParams(Parcel in) {
readFromParcel(in);
}
public static final Creator<UpdateContextMenuButtonsParams> CREATOR = new Creator<UpdateContextMenuButtonsParams>() {
@Override
public UpdateContextMenuButtonsParams createFromParcel(Parcel in) {
return new UpdateContextMenuButtonsParams(in);
}
@Override
public UpdateContextMenuButtonsParams[] newArray(int size) {
return new UpdateContextMenuButtonsParams[size];
}
};
public ContextMenuButtonsParams getContextMenuButtonsParams() {
return buttonsParams;
}
@Override
public void writeToBundle(Bundle bundle) {
bundle.putParcelable("buttonsParams", buttonsParams);
}
@Override
protected void readFromBundle(Bundle bundle) {
bundle.setClassLoader(ContextMenuButtonsParams.class.getClassLoader());
buttonsParams = bundle.getParcelable("buttonsParams");
}
}

View file

@ -1,3 +0,0 @@
package net.osmand.aidlapi.copyfile;
parcelable CopyFileParams;

View file

@ -1,97 +0,0 @@
package net.osmand.aidlapi.copyfile;
import android.os.Bundle;
import android.os.Parcel;
import androidx.annotation.NonNull;
import net.osmand.aidlapi.AidlParams;
public class CopyFileParams extends AidlParams {
public static final String DESTINATION_DIR_KEY = "destinationDir";
public static final String FILE_NAME_KEY = "fileName";
public static final String FILE_PART_DATA_KEY = "filePartData";
public static final String START_TIME_KEY = "startTime";
public static final String DONE_KEY = "done";
private String destinationDir;
private String fileName;
private byte[] filePartData;
private long startTime;
private boolean done;
public CopyFileParams(@NonNull String destinationDir, @NonNull String fileName, @NonNull byte[] filePartData,
long startTime, boolean done) {
this.destinationDir = destinationDir;
this.fileName = fileName;
this.filePartData = filePartData;
this.startTime = startTime;
this.done = done;
}
protected CopyFileParams(Parcel in) {
readFromParcel(in);
}
public static final Creator<CopyFileParams> CREATOR = new Creator<CopyFileParams>() {
@Override
public CopyFileParams createFromParcel(Parcel in) {
return new CopyFileParams(in);
}
@Override
public CopyFileParams[] newArray(int size) {
return new CopyFileParams[size];
}
};
public String getDestinationDir() {
return destinationDir;
}
public String getFileName() {
return fileName;
}
public byte[] getFilePartData() {
return filePartData;
}
public boolean isDone() {
return done;
}
public long getStartTime() {
return startTime;
}
@Override
public void writeToBundle(Bundle bundle) {
bundle.putString(DESTINATION_DIR_KEY, destinationDir);
bundle.putString(FILE_NAME_KEY, fileName);
bundle.putByteArray(FILE_PART_DATA_KEY, filePartData);
bundle.putLong(START_TIME_KEY, startTime);
bundle.putBoolean(DONE_KEY, done);
}
@Override
protected void readFromBundle(Bundle bundle) {
destinationDir = bundle.getString(DESTINATION_DIR_KEY);
fileName = bundle.getString(FILE_NAME_KEY);
filePartData = bundle.getByteArray(FILE_PART_DATA_KEY);
startTime = bundle.getLong(START_TIME_KEY);
done = bundle.getBoolean(DONE_KEY);
}
@Override
public String toString() {
return "CopyFileParams {" +
" destinationDir=" + destinationDir +
" fileName=" + fileName +
", filePartData size=" + filePartData.length +
", startTime=" + startTime +
", done=" + done +
" }";
}
}

View file

@ -1,3 +0,0 @@
package net.osmand.aidlapi.customization;
parcelable AProfile;

View file

@ -1,129 +0,0 @@
package net.osmand.aidlapi.customization;
import android.os.Bundle;
import android.os.Parcel;
import net.osmand.aidlapi.AidlParams;
public class AProfile extends AidlParams {
public static final String PROFILE_ID_KEY = "profile_id";
public static final String USER_PROFILE_NAME_KEY = "user_profile_name";
public static final String PARENT_KEY = "parent";
public static final String ICON_NAME_KEY = "icon_name";
public static final String ICON_COLOR_KEY = "icon_color";
public static final String ROUTING_PROFILE_KEY = "routing_profile";
public static final String ROUTE_SERVICE_KEY = "route_service";
public static final String LOC_ICON_KEY = "loc_icon";
public static final String NAV_ICON_KEY = "nav_icon";
public static final String ORDER_KEY = "order";
private String appModeKey;
private String userProfileName;
private String parent;
private String iconName;
private String iconColor;
private String routingProfile;
private String routeService;
private String locIcon;
private String navIcon;
private int order = -1;
public AProfile(String appModeKey, String userProfileName, String parent, String iconName, String iconColor,
String routingProfile, String routeService, String locIcon, String navIcon, int order) {
this.appModeKey = appModeKey;
this.userProfileName = userProfileName;
this.parent = parent;
this.iconName = iconName;
this.iconColor = iconColor;
this.routingProfile = routingProfile;
this.routeService = routeService;
this.locIcon = locIcon;
this.navIcon = navIcon;
this.order = order;
}
public AProfile(Parcel in) {
readFromParcel(in);
}
public static final Creator<AProfile> CREATOR = new Creator<AProfile>() {
@Override
public AProfile createFromParcel(Parcel in) {
return new AProfile(in);
}
@Override
public AProfile[] newArray(int size) {
return new AProfile[size];
}
};
public String getStringKey() {
return appModeKey;
}
public String getUserProfileName() {
return userProfileName;
}
public String getParent() {
return parent;
}
public String getIconName() {
return iconName;
}
public String getIconColor() {
return iconColor;
}
public String getRoutingProfile() {
return routingProfile;
}
public String getRouteService() {
return routeService;
}
public String getLocIcon() {
return locIcon;
}
public String getNavIcon() {
return navIcon;
}
public int getOrder() {
return order;
}
@Override
public void writeToBundle(Bundle bundle) {
bundle.putString(PROFILE_ID_KEY, appModeKey);
bundle.putString(USER_PROFILE_NAME_KEY, userProfileName);
bundle.putString(PARENT_KEY, parent);
bundle.putString(ICON_NAME_KEY, iconName);
bundle.putString(ICON_COLOR_KEY, iconColor);
bundle.putString(ROUTING_PROFILE_KEY, routingProfile);
bundle.putString(ROUTE_SERVICE_KEY, routeService);
bundle.putString(LOC_ICON_KEY, locIcon);
bundle.putString(NAV_ICON_KEY, navIcon);
bundle.putInt(ORDER_KEY, order);
}
@Override
protected void readFromBundle(Bundle bundle) {
appModeKey = bundle.getString(PROFILE_ID_KEY);
userProfileName = bundle.getString(USER_PROFILE_NAME_KEY);
parent = bundle.getString(PARENT_KEY);
iconName = bundle.getString(ICON_NAME_KEY);
iconColor = bundle.getString(ICON_COLOR_KEY);
routingProfile = bundle.getString(ROUTING_PROFILE_KEY);
routeService = bundle.getString(ROUTE_SERVICE_KEY);
locIcon = bundle.getString(LOC_ICON_KEY);
navIcon = bundle.getString(NAV_ICON_KEY);
order = bundle.getInt(ORDER_KEY);
}
}

View file

@ -1,3 +0,0 @@
package net.osmand.aidlapi.customization;
parcelable CustomPluginParams;

View file

@ -1,48 +0,0 @@
package net.osmand.aidlapi.customization;
import android.os.Bundle;
import android.os.Parcel;
import net.osmand.aidlapi.AidlParams;
public class CustomPluginParams extends AidlParams {
public static final String PLUGIN_ID_KEY = "plugin_id";
private String pluginId;
public CustomPluginParams(String pluginId) {
this.pluginId = pluginId;
}
public CustomPluginParams(Parcel in) {
readFromParcel(in);
}
public static final Creator<CustomPluginParams> CREATOR = new Creator<CustomPluginParams>() {
@Override
public CustomPluginParams createFromParcel(Parcel in) {
return new CustomPluginParams(in);
}
@Override
public CustomPluginParams[] newArray(int size) {
return new CustomPluginParams[size];
}
};
public String getPluginId() {
return pluginId;
}
@Override
public void writeToBundle(Bundle bundle) {
bundle.putString(PLUGIN_ID_KEY, pluginId);
}
@Override
protected void readFromBundle(Bundle bundle) {
pluginId = bundle.getString(PLUGIN_ID_KEY);
}
}

View file

@ -1,3 +0,0 @@
package net.osmand.aidlapi.customization;
parcelable CustomizationInfoParams;

View file

@ -1,173 +0,0 @@
package net.osmand.aidlapi.customization;
import android.os.Bundle;
import android.os.Parcel;
import net.osmand.aidlapi.AidlParams;
import net.osmand.aidlapi.navdrawer.NavDrawerFooterParams;
import net.osmand.aidlapi.navdrawer.NavDrawerHeaderParams;
import net.osmand.aidlapi.navdrawer.SetNavDrawerItemsParams;
import net.osmand.aidlapi.plugins.PluginParams;
import java.util.ArrayList;
import java.util.List;
public class CustomizationInfoParams extends AidlParams {
private OsmandSettingsParams settingsParams;
private NavDrawerHeaderParams navDrawerHeaderParams;
private NavDrawerFooterParams navDrawerFooterParams;
private SetNavDrawerItemsParams navDrawerItemsParams;
private ArrayList<SetWidgetsParams> visibilityWidgetsParams = new ArrayList<>();
private ArrayList<SetWidgetsParams> availabilityWidgetsParams = new ArrayList<>();
private ArrayList<PluginParams> pluginsParams = new ArrayList<>();
private ArrayList<String> featuresEnabledIds = new ArrayList<>();
private ArrayList<String> featuresDisabledIds = new ArrayList<>();
private ArrayList<String> featuresEnabledPatterns = new ArrayList<>();
private ArrayList<String> featuresDisabledPatterns = new ArrayList<>();
public CustomizationInfoParams(OsmandSettingsParams settingsParams,
NavDrawerHeaderParams navDrawerHeaderParams,
NavDrawerFooterParams navDrawerFooterParams,
SetNavDrawerItemsParams navDrawerItemsParams,
ArrayList<SetWidgetsParams> visibilityWidgetsParams,
ArrayList<SetWidgetsParams> availabilityWidgetsParams,
ArrayList<PluginParams> pluginsParams,
List<String> featuresEnabledIds,
List<String> featuresDisabledIds,
List<String> featuresEnabledPatterns,
List<String> featuresDisabledPatterns) {
this.settingsParams = settingsParams;
this.navDrawerHeaderParams = navDrawerHeaderParams;
this.navDrawerFooterParams = navDrawerFooterParams;
this.navDrawerItemsParams = navDrawerItemsParams;
if (visibilityWidgetsParams != null) {
this.visibilityWidgetsParams.addAll(visibilityWidgetsParams);
}
if (availabilityWidgetsParams != null) {
this.availabilityWidgetsParams.addAll(availabilityWidgetsParams);
}
if (pluginsParams != null) {
this.pluginsParams.addAll(pluginsParams);
}
if (featuresEnabledIds != null) {
this.featuresEnabledIds.addAll(featuresEnabledIds);
}
if (featuresDisabledIds != null) {
this.featuresDisabledIds.addAll(featuresDisabledIds);
}
if (featuresEnabledPatterns != null) {
this.featuresEnabledPatterns.addAll(featuresEnabledPatterns);
}
if (featuresDisabledPatterns != null) {
this.featuresDisabledPatterns.addAll(featuresDisabledPatterns);
}
}
public CustomizationInfoParams(Parcel in) {
readFromParcel(in);
}
public static final Creator<CustomizationInfoParams> CREATOR = new Creator<CustomizationInfoParams>() {
@Override
public CustomizationInfoParams createFromParcel(Parcel in) {
return new CustomizationInfoParams(in);
}
@Override
public CustomizationInfoParams[] newArray(int size) {
return new CustomizationInfoParams[size];
}
};
public OsmandSettingsParams getSettingsParams() {
return settingsParams;
}
public NavDrawerHeaderParams getNavDrawerHeaderParams() {
return navDrawerHeaderParams;
}
public NavDrawerFooterParams getNavDrawerFooterParams() {
return navDrawerFooterParams;
}
public SetNavDrawerItemsParams getNavDrawerItemsParams() {
return navDrawerItemsParams;
}
public ArrayList<SetWidgetsParams> getVisibilityWidgetsParams() {
return visibilityWidgetsParams;
}
public ArrayList<SetWidgetsParams> getAvailabilityWidgetsParams() {
return availabilityWidgetsParams;
}
public ArrayList<PluginParams> getPluginsParams() {
return pluginsParams;
}
public List<String> getFeaturesEnabledIds() {
return featuresEnabledIds;
}
public List<String> getFeaturesDisabledIds() {
return featuresDisabledIds;
}
public List<String> getFeaturesEnabledPatterns() {
return featuresEnabledPatterns;
}
public List<String> getFeaturesDisabledPatterns() {
return featuresDisabledPatterns;
}
@Override
public void writeToBundle(Bundle bundle) {
bundle.putParcelable("settingsParams", settingsParams);
bundle.putParcelable("navDrawerHeaderParams", navDrawerHeaderParams);
bundle.putParcelable("navDrawerFooterParams", navDrawerFooterParams);
bundle.putParcelable("navDrawerItemsParams", navDrawerItemsParams);
bundle.putParcelableArrayList("visibilityWidgetsParams", visibilityWidgetsParams);
bundle.putParcelableArrayList("availabilityWidgetsParams", availabilityWidgetsParams);
bundle.putParcelableArrayList("pluginsParams", pluginsParams);
bundle.putStringArrayList("featuresEnabledIds", featuresEnabledIds);
bundle.putStringArrayList("featuresDisabledIds", featuresDisabledIds);
bundle.putStringArrayList("featuresEnabledPatterns", featuresEnabledPatterns);
bundle.putStringArrayList("featuresDisabledPatterns", featuresDisabledPatterns);
}
@Override
protected void readFromBundle(Bundle bundle) {
bundle.setClassLoader(OsmandSettingsParams.class.getClassLoader());
settingsParams = bundle.getParcelable("settingsParams");
bundle.setClassLoader(NavDrawerHeaderParams.class.getClassLoader());
navDrawerHeaderParams = bundle.getParcelable("navDrawerHeaderParams");
bundle.setClassLoader(NavDrawerFooterParams.class.getClassLoader());
navDrawerFooterParams = bundle.getParcelable("navDrawerFooterParams");
bundle.setClassLoader(SetNavDrawerItemsParams.class.getClassLoader());
navDrawerItemsParams = bundle.getParcelable("navDrawerItemsParams");
bundle.setClassLoader(SetWidgetsParams.class.getClassLoader());
visibilityWidgetsParams = bundle.getParcelableArrayList("visibilityWidgetsParams");
availabilityWidgetsParams = bundle.getParcelableArrayList("availabilityWidgetsParams");
bundle.setClassLoader(PluginParams.class.getClassLoader());
pluginsParams = bundle.getParcelableArrayList("pluginsParams");
featuresEnabledIds = bundle.getStringArrayList("featuresEnabledIds");
featuresDisabledIds = bundle.getStringArrayList("featuresDisabledIds");
featuresEnabledPatterns = bundle.getStringArrayList("featuresEnabledPatterns");
featuresDisabledPatterns = bundle.getStringArrayList("featuresDisabledPatterns");
}
}

View file

@ -1,3 +0,0 @@
package net.osmand.aidlapi.customization;
parcelable MapMarginsParams;

View file

@ -1,90 +0,0 @@
package net.osmand.aidlapi.customization;
import android.os.Bundle;
import android.os.Parcel;
import androidx.annotation.Nullable;
import net.osmand.aidlapi.AidlParams;
import java.util.ArrayList;
import java.util.List;
public class MapMarginsParams extends AidlParams {
public static final String LEFT_MARGIN_KEY = "leftMargin";
public static final String TOP_MARGIN_KEY = "topMargin";
public static final String RIGHT_MARGIN_KEY = "rightMargin";
public static final String BOTTOM_MARGIN_KEY = "bottomMargin";
public static final String APP_MODES_KEYS_KEY = "appModesKeys";
private ArrayList<String> appModesKeys = new ArrayList<>();
private int leftMargin;
private int topMargin;
private int rightMargin;
private int bottomMargin;
public MapMarginsParams(int leftMargin, int topMargin, int rightMargin, int bottomMargin,
@Nullable List<String> appModesKeys) {
if (appModesKeys != null) {
this.appModesKeys.addAll(appModesKeys);
}
this.leftMargin = leftMargin;
this.topMargin = topMargin;
this.rightMargin = rightMargin;
this.bottomMargin = bottomMargin;
}
public MapMarginsParams(Parcel in) {
readFromParcel(in);
}
public static final Creator<MapMarginsParams> CREATOR = new Creator<MapMarginsParams>() {
@Override
public MapMarginsParams createFromParcel(Parcel in) {
return new MapMarginsParams(in);
}
@Override
public MapMarginsParams[] newArray(int size) {
return new MapMarginsParams[size];
}
};
public List<String> getAppModesKeys() {
return appModesKeys;
}
public int getLeftMargin() {
return leftMargin;
}
public int getTopMargin() {
return topMargin;
}
public int getRightMargin() {
return rightMargin;
}
public int getBottomMargin() {
return bottomMargin;
}
@Override
public void writeToBundle(Bundle bundle) {
bundle.putInt(LEFT_MARGIN_KEY, leftMargin);
bundle.putInt(TOP_MARGIN_KEY, topMargin);
bundle.putInt(RIGHT_MARGIN_KEY, rightMargin);
bundle.putInt(BOTTOM_MARGIN_KEY, bottomMargin);
bundle.putStringArrayList(APP_MODES_KEYS_KEY, appModesKeys);
}
@Override
protected void readFromBundle(Bundle bundle) {
leftMargin = bundle.getInt(LEFT_MARGIN_KEY);
topMargin = bundle.getInt(TOP_MARGIN_KEY);
rightMargin = bundle.getInt(RIGHT_MARGIN_KEY);
bottomMargin = bundle.getInt(BOTTOM_MARGIN_KEY);
appModesKeys = bundle.getStringArrayList(APP_MODES_KEYS_KEY);
}
}

View file

@ -1,3 +0,0 @@
package net.osmand.aidlapi.customization;
parcelable OsmandSettingsInfoParams;

View file

@ -1,47 +0,0 @@
package net.osmand.aidlapi.customization;
import android.os.Bundle;
import android.os.Parcel;
import androidx.annotation.NonNull;
import net.osmand.aidlapi.AidlParams;
public class OsmandSettingsInfoParams extends AidlParams {
private String sharedPreferencesName;
public OsmandSettingsInfoParams(@NonNull String sharedPreferencesName) {
this.sharedPreferencesName = sharedPreferencesName;
}
public OsmandSettingsInfoParams(Parcel in) {
readFromParcel(in);
}
public static final Creator<OsmandSettingsInfoParams> CREATOR = new Creator<OsmandSettingsInfoParams>() {
@Override
public OsmandSettingsInfoParams createFromParcel(Parcel in) {
return new OsmandSettingsInfoParams(in);
}
@Override
public OsmandSettingsInfoParams[] newArray(int size) {
return new OsmandSettingsInfoParams[size];
}
};
public String getSharedPreferencesName() {
return sharedPreferencesName;
}
@Override
public void writeToBundle(Bundle bundle) {
bundle.putString("sharedPreferencesName", sharedPreferencesName);
}
@Override
protected void readFromBundle(Bundle bundle) {
sharedPreferencesName = bundle.getString("sharedPreferencesName");
}
}

View file

@ -1,3 +0,0 @@
package net.osmand.aidlapi.customization;
parcelable OsmandSettingsParams;

View file

@ -1,56 +0,0 @@
package net.osmand.aidlapi.customization;
import android.os.Bundle;
import android.os.Parcel;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import net.osmand.aidlapi.AidlParams;
public class OsmandSettingsParams extends AidlParams {
private String sharedPreferencesName;
private Bundle bundleSettings;
public OsmandSettingsParams(@NonNull String sharedPreferencesName, @Nullable Bundle bundle) {
this.sharedPreferencesName = sharedPreferencesName;
this.bundleSettings = bundle;
}
public OsmandSettingsParams(Parcel in) {
readFromParcel(in);
}
public static final Creator<OsmandSettingsParams> CREATOR = new Creator<OsmandSettingsParams>() {
@Override
public OsmandSettingsParams createFromParcel(Parcel in) {
return new OsmandSettingsParams(in);
}
@Override
public OsmandSettingsParams[] newArray(int size) {
return new OsmandSettingsParams[size];
}
};
public String getSharedPreferencesName() {
return sharedPreferencesName;
}
public Bundle getBundle() {
return bundleSettings;
}
@Override
public void writeToBundle(Bundle bundle) {
bundle.putString("sharedPreferencesName", sharedPreferencesName);
bundle.putBundle("bundleSettings", bundleSettings);
}
@Override
protected void readFromBundle(Bundle bundle) {
sharedPreferencesName = bundle.getString("sharedPreferencesName");
bundleSettings = bundle.getBundle("bundleSettings");
}
}

View file

@ -1,3 +0,0 @@
package net.osmand.aidlapi.customization;
parcelable ProfileSettingsParams;

View file

@ -1,105 +0,0 @@
package net.osmand.aidlapi.customization;
import android.net.Uri;
import android.os.Bundle;
import android.os.Parcel;
import net.osmand.aidlapi.AidlParams;
import net.osmand.aidlapi.profile.AExportSettingsType;
import java.util.ArrayList;
import java.util.List;
import static net.osmand.aidlapi.profile.ExportProfileParams.SETTINGS_TYPE_KEY;
public class ProfileSettingsParams extends AidlParams {
public static final String VERSION_KEY = "version";
public static final String REPLACE_KEY = "replace";
public static final String SILENT_IMPORT_KEY = "silentImport";
public static final String LATEST_CHANGES_KEY = "latestChanges";
public static final String PROFILE_SETTINGS_URI_KEY = "profileSettingsUri";
private Uri profileSettingsUri;
private String latestChanges;
private int version;
private List<String> settingsTypeKeyList = new ArrayList<>();
private boolean silent;
private boolean replace;
public ProfileSettingsParams(Uri profileSettingsUri, List<AExportSettingsType> settingsTypeList, boolean replace,
boolean silent, String latestChanges, int version) {
this.profileSettingsUri = profileSettingsUri;
for (AExportSettingsType settingsType : settingsTypeList) {
settingsTypeKeyList.add(settingsType.name());
}
this.replace = replace;
this.latestChanges = latestChanges;
this.version = version;
this.silent = silent;
}
public ProfileSettingsParams(Uri profileSettingsUri, List<AExportSettingsType> settingsTypeList,
boolean replace, String latestChanges, int version) {
this(profileSettingsUri, settingsTypeList, replace, false, latestChanges, version);
}
public ProfileSettingsParams(Parcel in) {
readFromParcel(in);
}
public static final Creator<ProfileSettingsParams> CREATOR = new Creator<ProfileSettingsParams>() {
@Override
public ProfileSettingsParams createFromParcel(Parcel in) {
return new ProfileSettingsParams(in);
}
@Override
public ProfileSettingsParams[] newArray(int size) {
return new ProfileSettingsParams[size];
}
};
public int getVersion() {
return version;
}
public String getLatestChanges() {
return latestChanges;
}
public Uri getProfileSettingsUri() {
return profileSettingsUri;
}
public List<String> getSettingsTypeKeys() {
return settingsTypeKeyList;
}
public boolean isReplace() {
return replace;
}
public boolean isSilent() {
return silent;
}
@Override
public void writeToBundle(Bundle bundle) {
bundle.putInt(VERSION_KEY, version);
bundle.putString(LATEST_CHANGES_KEY, latestChanges);
bundle.putParcelable(PROFILE_SETTINGS_URI_KEY, profileSettingsUri);
bundle.putStringArrayList(SETTINGS_TYPE_KEY, new ArrayList<>(settingsTypeKeyList));
bundle.putBoolean(REPLACE_KEY, replace);
bundle.putBoolean(SILENT_IMPORT_KEY, silent);
}
@Override
protected void readFromBundle(Bundle bundle) {
version = bundle.getInt(VERSION_KEY);
latestChanges = bundle.getString(LATEST_CHANGES_KEY);
profileSettingsUri = bundle.getParcelable(PROFILE_SETTINGS_URI_KEY);
settingsTypeKeyList = bundle.getStringArrayList(SETTINGS_TYPE_KEY);
replace = bundle.getBoolean(REPLACE_KEY);
silent = bundle.getBoolean(SILENT_IMPORT_KEY);
}
}

View file

@ -1,3 +0,0 @@
package net.osmand.aidlapi.customization;
parcelable SelectProfileParams;

View file

@ -1,47 +0,0 @@
package net.osmand.aidlapi.customization;
import android.os.Bundle;
import android.os.Parcel;
import net.osmand.aidlapi.AidlParams;
public class SelectProfileParams extends AidlParams {
public static final String PROFILE_ID_KEY = "profile_id";
private String appModeKey;
public SelectProfileParams(String appModeKey) {
this.appModeKey = appModeKey;
}
public SelectProfileParams(Parcel in) {
readFromParcel(in);
}
public static final Creator<SelectProfileParams> CREATOR = new Creator<SelectProfileParams>() {
@Override
public SelectProfileParams createFromParcel(Parcel in) {
return new SelectProfileParams(in);
}
@Override
public SelectProfileParams[] newArray(int size) {
return new SelectProfileParams[size];
}
};
public String getAppModeKey() {
return appModeKey;
}
@Override
public void writeToBundle(Bundle bundle) {
bundle.putString(PROFILE_ID_KEY, appModeKey);
}
@Override
protected void readFromBundle(Bundle bundle) {
appModeKey = bundle.getString(PROFILE_ID_KEY);
}
}

View file

@ -1,3 +0,0 @@
package net.osmand.aidlapi.customization;
parcelable SetWidgetsParams;

View file

@ -1,60 +0,0 @@
package net.osmand.aidlapi.customization;
import android.os.Bundle;
import android.os.Parcel;
import androidx.annotation.Nullable;
import net.osmand.aidlapi.AidlParams;
import java.util.ArrayList;
import java.util.List;
public class SetWidgetsParams extends AidlParams {
private String widgetKey;
private ArrayList<String> appModesKeys = new ArrayList<>();
public SetWidgetsParams(String widgetKey, @Nullable List<String> appModesKeys) {
this.widgetKey = widgetKey;
if (appModesKeys != null) {
this.appModesKeys.addAll(appModesKeys);
}
}
public SetWidgetsParams(Parcel in) {
readFromParcel(in);
}
public static final Creator<SetWidgetsParams> CREATOR = new Creator<SetWidgetsParams>() {
@Override
public SetWidgetsParams createFromParcel(Parcel in) {
return new SetWidgetsParams(in);
}
@Override
public SetWidgetsParams[] newArray(int size) {
return new SetWidgetsParams[size];
}
};
public String getWidgetKey() {
return widgetKey;
}
public List<String> getAppModesKeys() {
return appModesKeys;
}
@Override
public void writeToBundle(Bundle bundle) {
bundle.putString("widgetKey", widgetKey);
bundle.putStringArrayList("appModesKeys", appModesKeys);
}
@Override
protected void readFromBundle(Bundle bundle) {
widgetKey = bundle.getString("widgetKey");
appModesKeys = bundle.getStringArrayList("appModesKeys");
}
}

View file

@ -1,2 +0,0 @@
package net.osmand.aidlapi.events;
parcelable AKeyEventsParams;

View file

@ -1,73 +0,0 @@
package net.osmand.aidlapi.events;
import android.os.Bundle;
import android.os.Parcel;
import android.os.Parcelable;
import net.osmand.aidlapi.AidlParams;
import java.util.ArrayList;
public class AKeyEventsParams extends AidlParams {
private long callbackId = -1L;
private boolean subscribeToUpdates = true;
private ArrayList<Integer> keyEventList;
public AKeyEventsParams() {
}
protected AKeyEventsParams(Parcel in) {
readFromParcel(in);
}
public static final Parcelable.Creator<AKeyEventsParams> CREATOR = new Parcelable.Creator<AKeyEventsParams>() {
@Override
public AKeyEventsParams createFromParcel(Parcel in) {
return new AKeyEventsParams(in);
}
@Override
public AKeyEventsParams[] newArray(int size) {
return new AKeyEventsParams[size];
}
};
public long getCallbackId() {
return callbackId;
}
public void setCallbackId(long callbackId) {
this.callbackId = callbackId;
}
public void setSubscribeToUpdates(boolean subscribeToUpdates) {
this.subscribeToUpdates = subscribeToUpdates;
}
public boolean isSubscribeToUpdates() {
return subscribeToUpdates;
}
public void setKeyEventList(ArrayList<Integer> keyEventList) {
this.keyEventList = keyEventList;
}
public ArrayList<Integer> getKeyEventList() {
return keyEventList;
}
@Override
protected void readFromBundle(Bundle bundle) {
callbackId = bundle.getLong("callbackId");
subscribeToUpdates = bundle.getBoolean("subscribeToUpdates");
keyEventList = bundle.getIntegerArrayList("keyEventList");
}
@Override
public void writeToBundle(Bundle bundle) {
bundle.putLong("callbackId", callbackId);
bundle.putBoolean("subscribeToUpdates", subscribeToUpdates);
bundle.putIntegerArrayList("keyEventList", keyEventList);
}
}

View file

@ -1,3 +0,0 @@
package net.osmand.aidlapi.favorite;
parcelable AFavorite;

View file

@ -1,100 +0,0 @@
package net.osmand.aidlapi.favorite;
import android.os.Bundle;
import android.os.Parcel;
import net.osmand.aidlapi.AidlParams;
public class AFavorite extends AidlParams {
private double lat;
private double lon;
private String name;
private String description;
private String address;
private String category;
private String color;
private boolean visible;
public AFavorite(double lat, double lon, String name, String description, String address,
String category, String color, boolean visible) {
this.lat = lat;
this.lon = lon;
this.name = name;
this.description = description;
this.address = address;
this.category = category;
this.color = color;
this.visible = visible;
}
public AFavorite(Parcel in) {
readFromParcel(in);
}
public static final Creator<AFavorite> CREATOR = new Creator<AFavorite>() {
@Override
public AFavorite createFromParcel(Parcel in) {
return new AFavorite(in);
}
@Override
public AFavorite[] newArray(int size) {
return new AFavorite[size];
}
};
public double getLat() {
return lat;
}
public double getLon() {
return lon;
}
public String getName() {
return name;
}
public String getDescription() {
return description;
}
public String getAddress() { return address; }
public String getCategory() {
return category;
}
public String getColor() {
return color;
}
public boolean isVisible() {
return visible;
}
@Override
public void writeToBundle(Bundle bundle) {
bundle.putDouble("lat", lat);
bundle.putDouble("lon", lon);
bundle.putString("name", name);
bundle.putString("description", description);
bundle.putString("address", address);
bundle.putString("category", category);
bundle.putString("color", color);
bundle.putBoolean("visible", visible);
}
@Override
protected void readFromBundle(Bundle bundle) {
lat = bundle.getDouble("lat");
lon = bundle.getDouble("lon");
name = bundle.getString("name");
description = bundle.getString("description");
address = bundle.getString("address");
category = bundle.getString("category");
color = bundle.getString("color");
visible = bundle.getBoolean("visible");
}
}

View file

@ -1,3 +0,0 @@
package net.osmand.aidlapi.favorite;
parcelable AddFavoriteParams;

View file

@ -1,46 +0,0 @@
package net.osmand.aidlapi.favorite;
import android.os.Bundle;
import android.os.Parcel;
import net.osmand.aidlapi.AidlParams;
public class AddFavoriteParams extends AidlParams {
private AFavorite favorite;
public AddFavoriteParams(AFavorite favorite) {
this.favorite = favorite;
}
public AddFavoriteParams(Parcel in) {
readFromParcel(in);
}
public static final Creator<AddFavoriteParams> CREATOR = new Creator<AddFavoriteParams>() {
@Override
public AddFavoriteParams createFromParcel(Parcel in) {
return new AddFavoriteParams(in);
}
@Override
public AddFavoriteParams[] newArray(int size) {
return new AddFavoriteParams[size];
}
};
public AFavorite getFavorite() {
return favorite;
}
@Override
public void writeToBundle(Bundle bundle) {
bundle.putParcelable("favorite", favorite);
}
@Override
protected void readFromBundle(Bundle bundle) {
bundle.setClassLoader(AFavorite.class.getClassLoader());
favorite = bundle.getParcelable("favorite");
}
}

View file

@ -1,3 +0,0 @@
package net.osmand.aidlapi.favorite;
parcelable RemoveFavoriteParams;

View file

@ -1,46 +0,0 @@
package net.osmand.aidlapi.favorite;
import android.os.Bundle;
import android.os.Parcel;
import net.osmand.aidlapi.AidlParams;
public class RemoveFavoriteParams extends AidlParams {
private AFavorite favorite;
public RemoveFavoriteParams(AFavorite favorite) {
this.favorite = favorite;
}
public RemoveFavoriteParams(Parcel in) {
readFromParcel(in);
}
public static final Creator<RemoveFavoriteParams> CREATOR = new Creator<RemoveFavoriteParams>() {
@Override
public RemoveFavoriteParams createFromParcel(Parcel in) {
return new RemoveFavoriteParams(in);
}
@Override
public RemoveFavoriteParams[] newArray(int size) {
return new RemoveFavoriteParams[size];
}
};
public AFavorite getFavorite() {
return favorite;
}
@Override
public void writeToBundle(Bundle bundle) {
bundle.putParcelable("favorite", favorite);
}
@Override
protected void readFromBundle(Bundle bundle) {
bundle.setClassLoader(AFavorite.class.getClassLoader());
favorite = bundle.getParcelable("favorite");
}
}

View file

@ -1,3 +0,0 @@
package net.osmand.aidlapi.favorite;
parcelable UpdateFavoriteParams;

View file

@ -1,54 +0,0 @@
package net.osmand.aidlapi.favorite;
import android.os.Bundle;
import android.os.Parcel;
import net.osmand.aidlapi.AidlParams;
public class UpdateFavoriteParams extends AidlParams {
private AFavorite favoritePrev;
private AFavorite favoriteNew;
public UpdateFavoriteParams(AFavorite favoritePrev, AFavorite favoriteNew) {
this.favoritePrev = favoritePrev;
this.favoriteNew = favoriteNew;
}
public UpdateFavoriteParams(Parcel in) {
readFromParcel(in);
}
public static final Creator<UpdateFavoriteParams> CREATOR = new Creator<UpdateFavoriteParams>() {
@Override
public UpdateFavoriteParams createFromParcel(Parcel in) {
return new UpdateFavoriteParams(in);
}
@Override
public UpdateFavoriteParams[] newArray(int size) {
return new UpdateFavoriteParams[size];
}
};
public AFavorite getFavoritePrev() {
return favoritePrev;
}
public AFavorite getFavoriteNew() {
return favoriteNew;
}
@Override
public void writeToBundle(Bundle bundle) {
bundle.putParcelable("favoritePrev", favoritePrev);
bundle.putParcelable("favoriteNew", favoriteNew);
}
@Override
protected void readFromBundle(Bundle bundle) {
bundle.setClassLoader(AFavorite.class.getClassLoader());
favoritePrev = bundle.getParcelable("favoritePrev");
favoriteNew = bundle.getParcelable("favoriteNew");
}
}

View file

@ -1,3 +0,0 @@
package net.osmand.aidlapi.favorite.group;
parcelable AFavoriteGroup;

View file

@ -1,61 +0,0 @@
package net.osmand.aidlapi.favorite.group;
import android.os.Bundle;
import android.os.Parcel;
import net.osmand.aidlapi.AidlParams;
public class AFavoriteGroup extends AidlParams {
private String name;
private String color;
private boolean visible;
public AFavoriteGroup(String name, String color, boolean visible) {
this.name = name;
this.color = color;
this.visible = visible;
}
public AFavoriteGroup(Parcel in) {
readFromParcel(in);
}
public static final Creator<AFavoriteGroup> CREATOR = new Creator<AFavoriteGroup>() {
@Override
public AFavoriteGroup createFromParcel(Parcel in) {
return new AFavoriteGroup(in);
}
@Override
public AFavoriteGroup[] newArray(int size) {
return new AFavoriteGroup[size];
}
};
public String getName() {
return name;
}
public String getColor() {
return color;
}
public boolean isVisible() {
return visible;
}
@Override
public void writeToBundle(Bundle bundle) {
bundle.putString("name", name);
bundle.putString("color", color);
bundle.putBoolean("visible", visible);
}
@Override
protected void readFromBundle(Bundle bundle) {
name = bundle.getString("name");
color = bundle.getString("color");
visible = bundle.getBoolean("visible");
}
}

View file

@ -1,3 +0,0 @@
package net.osmand.aidlapi.favorite.group;
parcelable AddFavoriteGroupParams;

View file

@ -1,46 +0,0 @@
package net.osmand.aidlapi.favorite.group;
import android.os.Bundle;
import android.os.Parcel;
import net.osmand.aidlapi.AidlParams;
public class AddFavoriteGroupParams extends AidlParams {
private AFavoriteGroup favoriteGroup;
public AddFavoriteGroupParams(AFavoriteGroup favoriteGroup) {
this.favoriteGroup = favoriteGroup;
}
public AddFavoriteGroupParams(Parcel in) {
readFromParcel(in);
}
public static final Creator<AddFavoriteGroupParams> CREATOR = new Creator<AddFavoriteGroupParams>() {
@Override
public AddFavoriteGroupParams createFromParcel(Parcel in) {
return new AddFavoriteGroupParams(in);
}
@Override
public AddFavoriteGroupParams[] newArray(int size) {
return new AddFavoriteGroupParams[size];
}
};
public AFavoriteGroup getFavoriteGroup() {
return favoriteGroup;
}
@Override
public void writeToBundle(Bundle bundle) {
bundle.putParcelable("favoriteGroup", favoriteGroup);
}
@Override
protected void readFromBundle(Bundle bundle) {
bundle.setClassLoader(AFavoriteGroup.class.getClassLoader());
favoriteGroup = bundle.getParcelable("favoriteGroup");
}
}

View file

@ -1,3 +0,0 @@
package net.osmand.aidlapi.favorite.group;
parcelable RemoveFavoriteGroupParams;

View file

@ -1,46 +0,0 @@
package net.osmand.aidlapi.favorite.group;
import android.os.Bundle;
import android.os.Parcel;
import net.osmand.aidlapi.AidlParams;
public class RemoveFavoriteGroupParams extends AidlParams {
private AFavoriteGroup favoriteGroup;
public RemoveFavoriteGroupParams(AFavoriteGroup favoriteGroup) {
this.favoriteGroup = favoriteGroup;
}
public RemoveFavoriteGroupParams(Parcel in) {
readFromParcel(in);
}
public static final Creator<RemoveFavoriteGroupParams> CREATOR = new Creator<RemoveFavoriteGroupParams>() {
@Override
public RemoveFavoriteGroupParams createFromParcel(Parcel in) {
return new RemoveFavoriteGroupParams(in);
}
@Override
public RemoveFavoriteGroupParams[] newArray(int size) {
return new RemoveFavoriteGroupParams[size];
}
};
public AFavoriteGroup getFavoriteGroup() {
return favoriteGroup;
}
@Override
public void writeToBundle(Bundle bundle) {
bundle.putParcelable("favoriteGroup", favoriteGroup);
}
@Override
protected void readFromBundle(Bundle bundle) {
bundle.setClassLoader(AFavoriteGroup.class.getClassLoader());
favoriteGroup = bundle.getParcelable("favoriteGroup");
}
}

View file

@ -1,3 +0,0 @@
package net.osmand.aidlapi.favorite.group;
parcelable UpdateFavoriteGroupParams;

View file

@ -1,54 +0,0 @@
package net.osmand.aidlapi.favorite.group;
import android.os.Bundle;
import android.os.Parcel;
import net.osmand.aidlapi.AidlParams;
public class UpdateFavoriteGroupParams extends AidlParams {
private AFavoriteGroup favoriteGroupPrev;
private AFavoriteGroup favoriteGroupNew;
public UpdateFavoriteGroupParams(AFavoriteGroup favoriteGroup, AFavoriteGroup favoriteGroupNew) {
this.favoriteGroupPrev = favoriteGroup;
this.favoriteGroupNew = favoriteGroupNew;
}
public UpdateFavoriteGroupParams(Parcel in) {
readFromParcel(in);
}
public static final Creator<UpdateFavoriteGroupParams> CREATOR = new Creator<UpdateFavoriteGroupParams>() {
@Override
public UpdateFavoriteGroupParams createFromParcel(Parcel in) {
return new UpdateFavoriteGroupParams(in);
}
@Override
public UpdateFavoriteGroupParams[] newArray(int size) {
return new UpdateFavoriteGroupParams[size];
}
};
public AFavoriteGroup getFavoriteGroupPrev() {
return favoriteGroupPrev;
}
public AFavoriteGroup getFavoriteGroupNew() {
return favoriteGroupNew;
}
@Override
public void writeToBundle(Bundle bundle) {
bundle.putParcelable("favoriteGroupPrev", favoriteGroupPrev);
bundle.putParcelable("favoriteGroupNew", favoriteGroupNew);
}
@Override
protected void readFromBundle(Bundle bundle) {
bundle.setClassLoader(AFavoriteGroup.class.getClassLoader());
favoriteGroupPrev = bundle.getParcelable("favoriteGroupPrev");
favoriteGroupNew = bundle.getParcelable("favoriteGroupNew");
}
}

View file

@ -1,3 +0,0 @@
package net.osmand.aidlapi.gpx;
parcelable AGpxBitmap;

View file

@ -1,49 +0,0 @@
package net.osmand.aidlapi.gpx;
import android.graphics.Bitmap;
import android.os.Bundle;
import android.os.Parcel;
import androidx.annotation.NonNull;
import net.osmand.aidlapi.AidlParams;
public class AGpxBitmap extends AidlParams {
private Bitmap bitmap;
public AGpxBitmap(@NonNull Bitmap bitmap) {
this.bitmap = bitmap;
}
public AGpxBitmap(Parcel in) {
readFromParcel(in);
}
public Bitmap getBitmap() {
return bitmap;
}
public static final Creator<AGpxBitmap> CREATOR = new Creator<AGpxBitmap>() {
@Override
public AGpxBitmap createFromParcel(Parcel in) {
return new AGpxBitmap(in);
}
@Override
public AGpxBitmap[] newArray(int size) {
return new AGpxBitmap[size];
}
};
@Override
public void writeToBundle(Bundle bundle) {
bundle.putParcelable("bitmap", bitmap);
}
@Override
protected void readFromBundle(Bundle bundle) {
bundle.setClassLoader(Bitmap.class.getClassLoader());
bitmap = bundle.getParcelable("bitmap");
}
}

View file

@ -1,3 +0,0 @@
package net.osmand.aidlapi.gpx;
parcelable AGpxFile;

View file

@ -1,89 +0,0 @@
package net.osmand.aidlapi.gpx;
import android.os.Bundle;
import android.os.Parcel;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import net.osmand.aidlapi.AidlParams;
public class AGpxFile extends AidlParams {
private String fileName;
private long modifiedTime;
private long fileSize;
private boolean active;
private String color;
private AGpxFileDetails details;
public AGpxFile(@NonNull String fileName, long modifiedTime, long fileSize, boolean active, String color, @Nullable AGpxFileDetails details) {
this.fileName = fileName;
this.modifiedTime = modifiedTime;
this.fileSize = fileSize;
this.active = active;
this.color = color;
this.details = details;
}
public AGpxFile(Parcel in) {
readFromParcel(in);
}
public static final Creator<AGpxFile> CREATOR = new Creator<AGpxFile>() {
@Override
public AGpxFile createFromParcel(Parcel in) {
return new AGpxFile(in);
}
@Override
public AGpxFile[] newArray(int size) {
return new AGpxFile[size];
}
};
public String getFileName() {
return fileName;
}
public long getModifiedTime() {
return modifiedTime;
}
public long getFileSize() {
return fileSize;
}
public boolean isActive() {
return active;
}
public String getColor() {
return color;
}
public AGpxFileDetails getDetails() {
return details;
}
@Override
public void writeToBundle(Bundle bundle) {
bundle.putString("fileName", fileName);
bundle.putLong("modifiedTime", modifiedTime);
bundle.putLong("fileSize", fileSize);
bundle.putBoolean("active", active);
bundle.putParcelable("details", details);
bundle.putString("color", color);
}
@Override
protected void readFromBundle(Bundle bundle) {
bundle.setClassLoader(AGpxFileDetails.class.getClassLoader());
fileName = bundle.getString("fileName");
modifiedTime = bundle.getLong("modifiedTime");
fileSize = bundle.getLong("fileSize");
active = bundle.getBoolean("active");
details = bundle.getParcelable("details");
color = bundle.getString("color");
}
}

View file

@ -1,3 +0,0 @@
package net.osmand.aidlapi.gpx;
parcelable AGpxFileDetails;

View file

@ -1,197 +0,0 @@
package net.osmand.aidlapi.gpx;
import android.os.Bundle;
import android.os.Parcel;
import net.osmand.aidlapi.AidlParams;
import java.util.ArrayList;
import java.util.List;
import java.util.Set;
public class AGpxFileDetails extends AidlParams {
private float totalDistance = 0;
private int totalTracks = 0;
private long startTime = Long.MAX_VALUE;
private long endTime = Long.MIN_VALUE;
private long timeSpan = 0;
private long timeMoving = 0;
private float totalDistanceMoving = 0;
private double diffElevationUp = 0;
private double diffElevationDown = 0;
private double avgElevation = 0;
private double minElevation = 99999;
private double maxElevation = -100;
private float minSpeed = Float.MAX_VALUE;
private float maxSpeed = 0;
private float avgSpeed;
private int points;
private int wptPoints = 0;
private ArrayList<String> wptCategoryNames = new ArrayList<>();
public AGpxFileDetails(float totalDistance, int totalTracks,
long startTime, long endTime,
long timeSpan, long timeMoving, float totalDistanceMoving,
double diffElevationUp, double diffElevationDown,
double avgElevation, double minElevation, double maxElevation,
float minSpeed, float maxSpeed, float avgSpeed,
int points, int wptPoints, Set<String> wptCategoryNames) {
this.totalDistance = totalDistance;
this.totalTracks = totalTracks;
this.startTime = startTime;
this.endTime = endTime;
this.timeSpan = timeSpan;
this.timeMoving = timeMoving;
this.totalDistanceMoving = totalDistanceMoving;
this.diffElevationUp = diffElevationUp;
this.diffElevationDown = diffElevationDown;
this.avgElevation = avgElevation;
this.minElevation = minElevation;
this.maxElevation = maxElevation;
this.minSpeed = minSpeed;
this.maxSpeed = maxSpeed;
this.avgSpeed = avgSpeed;
this.points = points;
this.wptPoints = wptPoints;
if (wptCategoryNames != null) {
this.wptCategoryNames.addAll(wptCategoryNames);
}
}
public AGpxFileDetails(Parcel in) {
readFromParcel(in);
}
public static final Creator<AGpxFileDetails> CREATOR = new Creator<AGpxFileDetails>() {
@Override
public AGpxFileDetails createFromParcel(Parcel in) {
return new AGpxFileDetails(in);
}
@Override
public AGpxFileDetails[] newArray(int size) {
return new AGpxFileDetails[size];
}
};
public float getTotalDistance() {
return totalDistance;
}
public int getTotalTracks() {
return totalTracks;
}
public long getStartTime() {
return startTime;
}
public long getEndTime() {
return endTime;
}
public long getTimeSpan() {
return timeSpan;
}
public long getTimeMoving() {
return timeMoving;
}
public float getTotalDistanceMoving() {
return totalDistanceMoving;
}
public double getDiffElevationUp() {
return diffElevationUp;
}
public double getDiffElevationDown() {
return diffElevationDown;
}
public double getAvgElevation() {
return avgElevation;
}
public double getMinElevation() {
return minElevation;
}
public double getMaxElevation() {
return maxElevation;
}
public float getMinSpeed() {
return minSpeed;
}
public float getMaxSpeed() {
return maxSpeed;
}
public float getAvgSpeed() {
return avgSpeed;
}
public int getPoints() {
return points;
}
public int getWptPoints() {
return wptPoints;
}
public List<String> getWptCategoryNames() {
return wptCategoryNames;
}
@Override
public void writeToBundle(Bundle bundle) {
bundle.putFloat("totalDistance", totalDistance);
bundle.putInt("totalTracks", totalTracks);
bundle.putLong("startTime", startTime);
bundle.putLong("endTime", endTime);
bundle.putLong("timeSpan", timeSpan);
bundle.putLong("timeMoving", timeMoving);
bundle.putFloat("totalDistanceMoving", totalDistanceMoving);
bundle.putDouble("diffElevationUp", diffElevationUp);
bundle.putDouble("diffElevationDown", diffElevationDown);
bundle.putDouble("avgElevation", avgElevation);
bundle.putDouble("minElevation", minElevation);
bundle.putDouble("maxElevation", maxElevation);
bundle.putFloat("minSpeed", minSpeed);
bundle.putFloat("maxSpeed", maxSpeed);
bundle.putFloat("avgSpeed", avgSpeed);
bundle.putInt("points", points);
bundle.putInt("wptPoints", wptPoints);
bundle.putStringArrayList("wptCategoryNames", wptCategoryNames);
}
@Override
protected void readFromBundle(Bundle bundle) {
totalDistance = bundle.getFloat("totalDistance");
totalTracks = bundle.getInt("totalTracks");
startTime = bundle.getLong("startTime");
endTime = bundle.getLong("endTime");
timeSpan = bundle.getLong("timeSpan");
timeMoving = bundle.getLong("timeMoving");
totalDistanceMoving = bundle.getFloat("totalDistanceMoving");
diffElevationUp = bundle.getDouble("diffElevationUp");
diffElevationDown = bundle.getDouble("diffElevationDown");
avgElevation = bundle.getDouble("avgElevation");
minElevation = bundle.getDouble("minElevation");
maxElevation = bundle.getDouble("maxElevation");
minSpeed = bundle.getFloat("minSpeed");
maxSpeed = bundle.getFloat("maxSpeed");
avgSpeed = bundle.getFloat("avgSpeed");
points = bundle.getInt("points");
wptPoints = bundle.getInt("wptPoints");
wptCategoryNames = bundle.getStringArrayList("wptCategoryNames");
}
}

View file

@ -1,3 +0,0 @@
package net.osmand.aidlapi.gpx;
parcelable ASelectedGpxFile;

View file

@ -1,77 +0,0 @@
package net.osmand.aidlapi.gpx;
import android.os.Bundle;
import android.os.Parcel;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import net.osmand.aidlapi.AidlParams;
public class ASelectedGpxFile extends AidlParams {
private String fileName;
private long modifiedTime;
private long fileSize;
private AGpxFileDetails details;
public ASelectedGpxFile(@NonNull String fileName) {
this.fileName = fileName;
}
public ASelectedGpxFile(@NonNull String fileName, long modifiedTime, long fileSize, @Nullable AGpxFileDetails details) {
this.fileName = fileName;
this.modifiedTime = modifiedTime;
this.fileSize = fileSize;
this.details = details;
}
public ASelectedGpxFile(Parcel in) {
readFromParcel(in);
}
public static final Creator<ASelectedGpxFile> CREATOR = new Creator<ASelectedGpxFile>() {
@Override
public ASelectedGpxFile createFromParcel(Parcel in) {
return new ASelectedGpxFile(in);
}
@Override
public ASelectedGpxFile[] newArray(int size) {
return new ASelectedGpxFile[size];
}
};
public String getFileName() {
return fileName;
}
public long getModifiedTime() {
return modifiedTime;
}
public long getFileSize() {
return fileSize;
}
public AGpxFileDetails getDetails() {
return details;
}
@Override
public void writeToBundle(Bundle bundle) {
bundle.putString("fileName", fileName);
bundle.putLong("modifiedTime", modifiedTime);
bundle.putLong("fileSize", fileSize);
bundle.putParcelable("details", details);
}
@Override
protected void readFromBundle(Bundle bundle) {
bundle.setClassLoader(AGpxFileDetails.class.getClassLoader());
fileName = bundle.getString("fileName");
modifiedTime = bundle.getLong("modifiedTime");
fileSize = bundle.getLong("fileSize");
details = bundle.getParcelable("details");
}
}

View file

@ -1,3 +0,0 @@
package net.osmand.aidlapi.gpx;
parcelable CreateGpxBitmapParams;

View file

@ -1,100 +0,0 @@
package net.osmand.aidlapi.gpx;
import android.net.Uri;
import android.os.Bundle;
import android.os.Parcel;
import net.osmand.aidlapi.AidlParams;
import java.io.File;
public class CreateGpxBitmapParams extends AidlParams {
private File gpxFile;
private Uri gpxUri;
private float density;
private int widthPixels;
private int heightPixels;
private int color; //ARGB color int
public CreateGpxBitmapParams(File gpxFile, float density, int widthPixels, int heightPixels, int color) {
this.gpxFile = gpxFile;
this.density = density;
this.widthPixels = widthPixels;
this.heightPixels = heightPixels;
this.color = color;
}
public CreateGpxBitmapParams(Uri gpxUri, float density, int widthPixels, int heightPixels, int color) {
this.gpxUri = gpxUri;
this.density = density;
this.widthPixels = widthPixels;
this.heightPixels = heightPixels;
this.color = color;
}
public CreateGpxBitmapParams(Parcel in) {
readFromParcel(in);
}
public static final Creator<CreateGpxBitmapParams> CREATOR = new Creator<CreateGpxBitmapParams>() {
@Override
public CreateGpxBitmapParams createFromParcel(Parcel in) {
return new CreateGpxBitmapParams(in);
}
@Override
public CreateGpxBitmapParams[] newArray(int size) {
return new CreateGpxBitmapParams[size];
}
};
public File getGpxFile() {
return gpxFile;
}
public Uri getGpxUri() {
return gpxUri;
}
public int getWidthPixels() {
return widthPixels;
}
public int getHeightPixels() {
return heightPixels;
}
public float getDensity() {
return density;
}
public int getColor() {
return color;
}
@Override
public void writeToBundle(Bundle bundle) {
bundle.putString("gpxAbsolutePath", gpxFile != null ? gpxFile.getAbsolutePath() : null);
bundle.putParcelable("gpxUri", gpxUri);
bundle.putFloat("density", density);
bundle.putInt("widthPixels", widthPixels);
bundle.putInt("heightPixels", heightPixels);
bundle.putInt("color", color);
}
@Override
protected void readFromBundle(Bundle bundle) {
bundle.setClassLoader(Uri.class.getClassLoader());
String gpxAbsolutePath = bundle.getString("gpxAbsolutePath");
if (gpxAbsolutePath != null) {
gpxFile = new File(gpxAbsolutePath);
}
gpxUri = bundle.getParcelable("gpxUri");
density = bundle.getFloat("density");
widthPixels = bundle.getInt("widthPixels");
heightPixels = bundle.getInt("heightPixels");
color = bundle.getInt("color");
}
}

View file

@ -1,3 +0,0 @@
package net.osmand.aidlapi.gpx;
parcelable HideGpxParams;

View file

@ -1,45 +0,0 @@
package net.osmand.aidlapi.gpx;
import android.os.Bundle;
import android.os.Parcel;
import net.osmand.aidlapi.AidlParams;
public class HideGpxParams extends AidlParams {
private String fileName;
public HideGpxParams(String fileName) {
this.fileName = fileName;
}
public HideGpxParams(Parcel in) {
readFromParcel(in);
}
public static final Creator<HideGpxParams> CREATOR = new Creator<HideGpxParams>() {
@Override
public HideGpxParams createFromParcel(Parcel in) {
return new HideGpxParams(in);
}
@Override
public HideGpxParams[] newArray(int size) {
return new HideGpxParams[size];
}
};
public String getFileName() {
return fileName;
}
@Override
public void writeToBundle(Bundle bundle) {
bundle.putString("fileName", fileName);
}
@Override
protected void readFromBundle(Bundle bundle) {
fileName = bundle.getString("fileName");
}
}

View file

@ -1,3 +0,0 @@
package net.osmand.aidlapi.gpx;
parcelable ImportGpxParams;

View file

@ -1,105 +0,0 @@
package net.osmand.aidlapi.gpx;
import android.net.Uri;
import android.os.Bundle;
import android.os.Parcel;
import net.osmand.aidlapi.AidlParams;
import java.io.File;
public class ImportGpxParams extends AidlParams {
private File gpxFile;
private Uri gpxUri;
private String sourceRawData;
private String destinationPath;
private String color;
private boolean show;
public ImportGpxParams(File gpxFile, String destinationPath, String color, boolean show) {
this.gpxFile = gpxFile;
this.destinationPath = destinationPath;
this.color = color;
this.show = show;
}
public ImportGpxParams(Uri gpxUri, String destinationPath, String color, boolean show) {
this.gpxUri = gpxUri;
this.destinationPath = destinationPath;
this.color = color;
this.show = show;
}
public ImportGpxParams(String sourceRawData, String destinationPath, String color, boolean show) {
this.sourceRawData = sourceRawData;
this.destinationPath = destinationPath;
this.color = color;
this.show = show;
}
public ImportGpxParams(Parcel in) {
readFromParcel(in);
}
public static final Creator<ImportGpxParams> CREATOR = new Creator<ImportGpxParams>() {
@Override
public ImportGpxParams createFromParcel(Parcel in) {
return new ImportGpxParams(in);
}
@Override
public ImportGpxParams[] newArray(int size) {
return new ImportGpxParams[size];
}
};
public File getGpxFile() {
return gpxFile;
}
public Uri getGpxUri() {
return gpxUri;
}
public String getSourceRawData() {
return sourceRawData;
}
public String getDestinationPath() {
return destinationPath;
}
public String getColor() {
return color;
}
public boolean isShow() {
return show;
}
@Override
protected void readFromBundle(Bundle bundle) {
bundle.setClassLoader(Uri.class.getClassLoader());
String gpxAbsolutePath = bundle.getString("gpxAbsolutePath");
if (gpxAbsolutePath != null) {
gpxFile = new File(gpxAbsolutePath);
}
gpxUri = bundle.getParcelable("gpxUri");
sourceRawData = bundle.getString("sourceRawData");
destinationPath = bundle.getString("destinationPath");
color = bundle.getString("color");
show = bundle.getBoolean("show");
}
@Override
public void writeToBundle(Bundle bundle) {
bundle.putString("gpxAbsolutePath", gpxFile != null ? gpxFile.getAbsolutePath() : null);
bundle.putParcelable("gpxUri", gpxUri);
bundle.putString("sourceRawData", sourceRawData);
bundle.putString("destinationPath", destinationPath);
bundle.putString("color", color);
bundle.putBoolean("show", show);
}
}

View file

@ -1,3 +0,0 @@
package net.osmand.aidlapi.gpx;
parcelable RemoveGpxParams;

View file

@ -1,45 +0,0 @@
package net.osmand.aidlapi.gpx;
import android.os.Bundle;
import android.os.Parcel;
import net.osmand.aidlapi.AidlParams;
public class RemoveGpxParams extends AidlParams {
private String fileName;
public RemoveGpxParams(String fileName) {
this.fileName = fileName;
}
public RemoveGpxParams(Parcel in) {
readFromParcel(in);
}
public static final Creator<RemoveGpxParams> CREATOR = new Creator<RemoveGpxParams>() {
@Override
public RemoveGpxParams createFromParcel(Parcel in) {
return new RemoveGpxParams(in);
}
@Override
public RemoveGpxParams[] newArray(int size) {
return new RemoveGpxParams[size];
}
};
public String getFileName() {
return fileName;
}
@Override
public void writeToBundle(Bundle bundle) {
bundle.putString("fileName", fileName);
}
@Override
protected void readFromBundle(Bundle bundle) {
fileName = bundle.getString("fileName");
}
}

View file

@ -1,3 +0,0 @@
package net.osmand.aidlapi.gpx;
parcelable ShowGpxParams;

View file

@ -1,45 +0,0 @@
package net.osmand.aidlapi.gpx;
import android.os.Bundle;
import android.os.Parcel;
import net.osmand.aidlapi.AidlParams;
public class ShowGpxParams extends AidlParams {
private String fileName;
public ShowGpxParams(String fileName) {
this.fileName = fileName;
}
public ShowGpxParams(Parcel in) {
readFromParcel(in);
}
public static final Creator<ShowGpxParams> CREATOR = new Creator<ShowGpxParams>() {
@Override
public ShowGpxParams createFromParcel(Parcel in) {
return new ShowGpxParams(in);
}
@Override
public ShowGpxParams[] newArray(int size) {
return new ShowGpxParams[size];
}
};
public String getFileName() {
return fileName;
}
@Override
public void writeToBundle(Bundle bundle) {
bundle.putString("fileName", fileName);
}
@Override
protected void readFromBundle(Bundle bundle) {
fileName = bundle.getString("fileName");
}
}

View file

@ -1,3 +0,0 @@
package net.osmand.aidlapi.gpx;
parcelable StartGpxRecordingParams;

View file

@ -1,28 +0,0 @@
package net.osmand.aidlapi.gpx;
import android.os.Parcel;
import net.osmand.aidlapi.AidlParams;
public class StartGpxRecordingParams extends AidlParams {
public StartGpxRecordingParams() {
}
public StartGpxRecordingParams(Parcel in) {
readFromParcel(in);
}
public static final Creator<StartGpxRecordingParams> CREATOR = new Creator<StartGpxRecordingParams>() {
@Override
public StartGpxRecordingParams createFromParcel(Parcel in) {
return new StartGpxRecordingParams(in);
}
@Override
public StartGpxRecordingParams[] newArray(int size) {
return new StartGpxRecordingParams[size];
}
};
}

View file

@ -1,3 +0,0 @@
package net.osmand.aidlapi.gpx;
parcelable StopGpxRecordingParams;

View file

@ -1,28 +0,0 @@
package net.osmand.aidlapi.gpx;
import android.os.Parcel;
import net.osmand.aidlapi.AidlParams;
public class StopGpxRecordingParams extends AidlParams {
public StopGpxRecordingParams() {
}
public StopGpxRecordingParams(Parcel in) {
readFromParcel(in);
}
public static final Creator<StopGpxRecordingParams> CREATOR = new Creator<StopGpxRecordingParams>() {
@Override
public StopGpxRecordingParams createFromParcel(Parcel in) {
return new StopGpxRecordingParams(in);
}
@Override
public StopGpxRecordingParams[] newArray(int size) {
return new StopGpxRecordingParams[size];
}
};
}

View file

@ -1,3 +0,0 @@
package net.osmand.aidlapi.info;
parcelable AppInfoParams;

View file

@ -1,95 +0,0 @@
package net.osmand.aidlapi.info;
import android.os.Bundle;
import android.os.Parcel;
import net.osmand.aidlapi.AidlParams;
import net.osmand.aidlapi.map.ALatLon;
public class AppInfoParams extends AidlParams {
private ALatLon lastKnownLocation;
private ALatLon mapLocation;
private Bundle turnInfo;
private int leftTime;
private int leftDistance;
private long arrivalTime;
private boolean mapVisible;
public AppInfoParams(ALatLon lastKnownLocation, ALatLon mapLocation, Bundle turnInfo, int leftTime, int leftDistance, long arrivalTime, boolean mapVisible) {
this.lastKnownLocation = lastKnownLocation;
this.mapLocation = mapLocation;
this.leftTime = leftTime;
this.leftDistance = leftDistance;
this.arrivalTime = arrivalTime;
this.turnInfo = turnInfo;
this.mapVisible = mapVisible;
}
public AppInfoParams(Parcel in) {
readFromParcel(in);
}
public static final Creator<AppInfoParams> CREATOR = new Creator<AppInfoParams>() {
@Override
public AppInfoParams createFromParcel(Parcel in) {
return new AppInfoParams(in);
}
@Override
public AppInfoParams[] newArray(int size) {
return new AppInfoParams[size];
}
};
public ALatLon getLastKnownLocation() {
return lastKnownLocation;
}
public ALatLon getMapLocation() {
return mapLocation;
}
public int getLeftTime() {
return leftTime;
}
public long getArrivalTime() {
return arrivalTime;
}
public int getLeftDistance() {
return leftDistance;
}
public boolean isMapVisible() {
return mapVisible;
}
public Bundle getTurnInfo() {
return turnInfo;
}
@Override
public void writeToBundle(Bundle bundle) {
bundle.putParcelable("lastKnownLocation", lastKnownLocation);
bundle.putParcelable("mapLocation", mapLocation);
bundle.putInt("leftTime", leftTime);
bundle.putLong("arrivalTime", arrivalTime);
bundle.putInt("leftDistance", leftDistance);
bundle.putBundle("turnInfo", turnInfo);
bundle.putBoolean("mapVisible", mapVisible);
}
@Override
protected void readFromBundle(Bundle bundle) {
lastKnownLocation = bundle.getParcelable("lastKnownLocation");
mapLocation = bundle.getParcelable("mapLocation");
leftTime = bundle.getInt("leftTime");
arrivalTime = bundle.getLong("arrivalTime");
leftDistance = bundle.getInt("leftDistance");
turnInfo = bundle.getBundle("turnInfo");
mapVisible = bundle.getBoolean("mapVisible");
}
}

View file

@ -1,3 +0,0 @@
package net.osmand.aidlapi.lock;
parcelable SetLockStateParams;

View file

@ -1,45 +0,0 @@
package net.osmand.aidlapi.lock;
import android.os.Bundle;
import android.os.Parcel;
import net.osmand.aidlapi.AidlParams;
public class SetLockStateParams extends AidlParams {
private boolean lock;
public SetLockStateParams(boolean lock) {
this.lock = lock;
}
public SetLockStateParams(Parcel in) {
readFromParcel(in);
}
public static final Creator<SetLockStateParams> CREATOR = new Creator<SetLockStateParams>() {
@Override
public SetLockStateParams createFromParcel(Parcel in) {
return new SetLockStateParams(in);
}
@Override
public SetLockStateParams[] newArray(int size) {
return new SetLockStateParams[size];
}
};
public boolean getLockState() {
return lock;
}
@Override
public void writeToBundle(Bundle bundle) {
bundle.putBoolean("lock", this.lock);
}
@Override
protected void readFromBundle(Bundle bundle) {
lock = bundle.getBoolean("lock");
}
}

View file

@ -1,3 +0,0 @@
package net.osmand.aidlapi.map;
parcelable ALatLon;

View file

@ -1,84 +0,0 @@
package net.osmand.aidlapi.map;
import android.os.Bundle;
import android.os.Parcel;
import net.osmand.aidlapi.AidlParams;
public class ALatLon extends AidlParams {
private double longitude;
private double latitude;
public ALatLon(double latitude, double longitude) {
this.latitude = latitude;
this.longitude = longitude;
}
public ALatLon(Parcel in) {
readFromParcel(in);
}
public static final Creator<ALatLon> CREATOR = new Creator<ALatLon>() {
@Override
public ALatLon createFromParcel(Parcel in) {
return new ALatLon(in);
}
@Override
public ALatLon[] newArray(int size) {
return new ALatLon[size];
}
};
@Override
public int hashCode() {
final int prime = 31;
int result = 1;
int temp;
temp = (int) Math.floor(latitude * 10000);
result = prime * result + temp;
temp = (int) Math.floor(longitude * 10000);
result = prime * result + temp;
return result;
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (getClass() != obj.getClass())
return false;
ALatLon other = (ALatLon) obj;
return Math.abs(latitude - other.latitude) < 0.00001
&& Math.abs(longitude - other.longitude) < 0.00001;
}
@Override
public String toString() {
return "Lat " + ((float) latitude) + " Lon " + ((float) longitude);
}
public double getLatitude() {
return latitude;
}
public double getLongitude() {
return longitude;
}
@Override
public void writeToBundle(Bundle bundle) {
bundle.putDouble("latitude", latitude);
bundle.putDouble("longitude", longitude);
}
@Override
protected void readFromBundle(Bundle bundle) {
latitude = bundle.getDouble("latitude");
longitude = bundle.getDouble("longitude");
}
}

View file

@ -1,3 +0,0 @@
package net.osmand.aidlapi.map;
parcelable ALocation;

View file

@ -1,226 +0,0 @@
package net.osmand.aidlapi.map;
import android.os.Bundle;
import android.os.Parcel;
import android.os.Parcelable;
import net.osmand.aidlapi.AidlParams;
public class ALocation extends AidlParams {
private double latitude = 0.0;
private double longitude = 0.0;
private long time = 0;
private boolean hasAltitude = false;
private double altitude = 0.0f;
private boolean hasSpeed = false;
private float speed = 0.0f;
private boolean hasBearing = false;
private float bearing = 0.0f;
private boolean hasAccuracy = false;
private float accuracy = 0.0f;
private boolean hasVerticalAccuracy = false;
private float verticalAccuracy = 0.0f;
private ALocation() {
}
public ALocation(double latitude, double longitude, long time, boolean hasAltitude, double altitude,
boolean hasSpeed, float speed, boolean hasBearing, float bearing,
boolean hasAccuracy, float accuracy, boolean hasVerticalAccuracy, float verticalAccuracy) {
this.latitude = latitude;
this.longitude = longitude;
this.time = time;
this.hasAltitude = hasAltitude;
this.altitude = altitude;
this.hasSpeed = hasSpeed;
this.speed = speed;
this.hasBearing = hasBearing;
this.bearing = bearing;
this.hasAccuracy = hasAccuracy;
this.accuracy = accuracy;
this.hasVerticalAccuracy = hasVerticalAccuracy;
this.verticalAccuracy = verticalAccuracy;
}
public ALocation(Parcel in) {
readFromParcel(in);
}
public static final Parcelable.Creator<ALocation> CREATOR = new Parcelable.Creator<ALocation>() {
@Override
public ALocation createFromParcel(Parcel in) {
return new ALocation(in);
}
@Override
public ALocation[] newArray(int size) {
return new ALocation[size];
}
};
public double getLatitude() {
return latitude;
}
public double getLongitude() {
return longitude;
}
public long getTime() {
return time;
}
public boolean hasAltitude() {
return hasAltitude;
}
public double getAltitude() {
return altitude;
}
public boolean hasSpeed() {
return hasSpeed;
}
public float getSpeed() {
return speed;
}
public boolean hasBearing() {
return hasBearing;
}
public float getBearing() {
return bearing;
}
public boolean hasAccuracy() {
return hasAccuracy;
}
public float getAccuracy() {
return accuracy;
}
public boolean hasVerticalAccuracy() {
return hasVerticalAccuracy;
}
public float getVerticalAccuracy() {
return verticalAccuracy;
}
@Override
protected void writeToBundle(Bundle bundle) {
bundle.putDouble("latitude", latitude);
bundle.putDouble("longitude", longitude);
bundle.putLong("time", time);
bundle.putBoolean("hasAltitude", hasAltitude);
bundle.putDouble("altitude", altitude);
bundle.putBoolean("hasSpeed", hasSpeed);
bundle.putFloat("speed", speed);
bundle.putBoolean("hasBearing", hasBearing);
bundle.putFloat("bearing", bearing);
bundle.putBoolean("hasAccuracy", hasAccuracy);
bundle.putFloat("accuracy", accuracy);
bundle.putBoolean("hasVerticalAccuracy", hasVerticalAccuracy);
bundle.putFloat("verticalAccuracy", verticalAccuracy);
}
@Override
protected void readFromBundle(Bundle bundle) {
latitude = bundle.getDouble("latitude");
longitude = bundle.getDouble("longitude");
time = bundle.getLong("time");
hasAltitude = bundle.getBoolean("hasAltitude");
altitude = bundle.getDouble("altitude");
hasSpeed = bundle.getBoolean("hasSpeed");
speed = bundle.getFloat("speed");
hasBearing = bundle.getBoolean("hasBearing");
bearing = bundle.getFloat("bearing");
hasAccuracy = bundle.getBoolean("hasAccuracy");
accuracy = bundle.getFloat("accuracy");
hasVerticalAccuracy = bundle.getBoolean("hasVerticalAccuracy");
verticalAccuracy = bundle.getFloat("verticalAccuracy");
}
public static Builder builder() {
return new ALocation().new Builder();
}
public class Builder {
private Builder() {
}
public Builder setLatitude(double latitude) {
ALocation.this.latitude = latitude;
return this;
}
public Builder setLongitude(double longitude) {
ALocation.this.longitude = longitude;
return this;
}
public Builder setTime(long time) {
ALocation.this.time = time;
return this;
}
public Builder hasAltitude(boolean hasAltitude) {
ALocation.this.hasAltitude = hasAltitude;
return this;
}
public Builder setAltitude(float altitude) {
ALocation.this.altitude = altitude;
return this;
}
public Builder hasSpeed(boolean hasSpeed) {
ALocation.this.hasSpeed = hasSpeed;
return this;
}
public Builder setSpeed(float speed) {
ALocation.this.speed = speed;
return this;
}
public Builder hasBearing(boolean hasBearing) {
ALocation.this.hasBearing = hasBearing;
return this;
}
public Builder setBearing(float bearing) {
ALocation.this.bearing = bearing;
return this;
}
public Builder hasAccuracy(boolean hasAccuracy) {
ALocation.this.hasAccuracy = hasAccuracy;
return this;
}
public Builder setAccuracy(float accuracy) {
ALocation.this.accuracy = accuracy;
return this;
}
public Builder hasVerticalAccuracy(boolean hasVerticalAccuracy) {
ALocation.this.hasVerticalAccuracy = hasVerticalAccuracy;
return this;
}
public Builder setVerticalAccuracy(float verticalAccuracy) {
ALocation.this.verticalAccuracy = verticalAccuracy;
return this;
}
public ALocation build() {
return ALocation.this;
}
}
}

View file

@ -1,3 +0,0 @@
package net.osmand.aidlapi.map;
parcelable SetLocationParams;

Some files were not shown because too many files have changed in this diff Show more