Some functionality needs special permissions to work properly. Below you will find a list of some key permissions.
AndroidManifest.xml. Add the following markup before the
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> <uses-permission android:name="android.permission.INTERNET"/>
Permission ACCESS_FINE_LOCATION, Permission ACCESS_COARSE_LOCATION
These permissions are required to access precise location. In case this permission isn't granted,
PositioningManager.start(PositioningManager.LocationMethod) returns false and functionality like guidance navigation will not work.
INTERNET permission is needed for the functionality that is based on Internet connection such as search, routing, online map rendering and others.
ACCESS_NETWORK_STATE permission is needed to access information about network state. It allows to check if device is connected to internet or disconnected.
Permission CHANGE_NETWORK_STATE, Permission ACCESS_WIFI_STATE, Permission CHANGE_WIFI_STATE, Permission BLUETOOTH, Permission BLUETOOTH_ADMIN, Permission WAKE_LOCK, Permission READ_PHONE_STATE
These permissions are needed when HERE Positioning is used.
WRITE_EXTERNAL_STORAGE permission is needed when the map disk cache path is set outside of the app-specific directory.
android.permission.WRITE_EXTERNAL_STORAGEis no longer required if the map disk cache(See
MapSettings.setDiskCacheRootPath(path)) is set under an application-specific file directory.
FOREGROUND_SERVICE permission is required for positioning when the app is in the background.