GithubHelp home page GithubHelp logo

yang6n / android-navigation_lib Goto Github PK

View Code? Open in Web Editor NEW

This project forked from nth-commit/android-navigation_lib

0.0 2.0 0.0 784 KB

Low-dependency navigation library, plug-in capable with map and routing service of choice

Java 100.00%

android-navigation_lib's Introduction

android-navigation_lib

Easily integrate navigation into your Android application with this low-dependency library. Use any mapping library or routing service by implementing a few simple interfaces. To get started quickly, you can use the Google Directions API and Google Maps Android API v2, for which demo code has been provided. GMS is currently a dependency for our library (the only one!) - we use it for location handling - so unless you want to customize maps further, using the Google Maps Android API is the best option.

Getting started

TODO: On setting up GMS dependency, cloning repo.

Usage

It is easy to get access to the Navigator object, simply create a NavigationFragment and call getNavigator(). Note that NavigationFragment.getNavigator() and operations on the Navigator itself can be called anytime in the fragment lifecycle, but navigation will only start once the view has been created and GPS signal found.

NavigationFragment myNavigationFragment = NavigationFragment.newInstance(
  directionsFactory \** Implement IDirectionsFactory **\,
  mapFactory \** Implement IMapFactory **\,
  vehicleMarkerFactory \** Implement IVehicleMarkerFactory **\);
FragmentTransaction ft = getFragmentManager().beginTransaction();
ft.add(R.id.demo_nav_fragment_container, navigationFragment);
ft.commit();

Navigator navigator = myNavigationFragment.getNavigator()
navigator.go(new LatLng(-43.529333, 172.587279)); // Start navigating to this location!

NavigationOptions

NavigationOptions provide easy customization of the NavigationFragment's behavior. NavigationOptions encapsulates groups of sub-options e.g. VehicleOptions, MapOptions, GpsOptions. Setting options on an options object can be chained. If a single option is not set, it will revert to its default value.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.