Build Status Dependabot Status

ArLocalizerView - alternative(without ARCore)

Library that displays chosen locations distances on a camera preview.

Building

Build types

debug

  • debuggable
  • disabled ProGuard
  • uses built-in shrinking (no obfuscation)

release

  • uses full ProGuard configuration
  • enables zipAlign, shrinkResources
  • non-debuggable

Building the sample app

Build properties needed to build the sample app. The library itself doesn't need any API keys. You need to provide api key in secret.properties file.

Property External property name Environment variable
Google Maps API key GoogleMapsApiKey GOOGLE_MAPS_API_KEY

Using library

  1. Add repository in you projects build.gradle file

    repositories {
        maven {  url 'https://dl.bintray.com/netguru/maven/' }
        ...
    }
  2. Add library dependency

        dependencies {
                implementation 'com.netguru.arlocalizerview:arlocalizerview:0.1.0'
        }
  3. Add view to your layout

     <co.netguru.arlocalizer.arview.ARLocalizerView
            android:id="@+id/arLocalizer"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            />
  4. You need to provide

    interface ARLocalizerDependencyProvider {
        fun getSensorsContext(): Context
        fun getARViewLifecycleOwner(): LifecycleOwner
        fun getPermissionActivity(): Activity
    }

    in arLocalizerView onCreate method

    arLocalizerView.onCreate(arLocalizerDependencyProvider: ARLocalizerDependencyProvider)
  5. In order to process the permission request you need to provide permission results to the view.

        fun onRequestPermissionResult(
            requestCode: Int,
            permissions: Array<out String>,
            grantResults: IntArray
        )
  6. Finally in order to display the destination labels on the camera preview use

    arLocalizerView.setDestinations(destinations: List<LocationData>)

License

Copyright 2019 Netguru

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.