where camp berlin 2014 / presentation by kitlocate - a yandex company

29
Making Contextual Awareness a Reality on a Mass Scale while Keeping it Personal

Upload: dan-atzmon

Post on 02-Jul-2015

825 views

Category:

Engineering


3 download

DESCRIPTION

This is the presentation we gave at the Where Camp Berlin. We focused on some of the lessons we have learned a long the way to creating an always on mobile location SDK that helps developers create a contextual aware applications. Issue covered: Issues like: Reading and sifting wrong location samples from GPS, Cell and WiFi. Ensuring power efficiently of sampling Data plan management Managing users perceptions GPS icon Running in the background Reading and reacting to the device temperature Privacy and more on www.KitLocate.com

TRANSCRIPT

Page 1: Where Camp Berlin 2014  / Presentation by KitLocate - a Yandex company

Making Contextual Awareness a Reality on a Mass Scale while Keeping it Personal

Page 2: Where Camp Berlin 2014  / Presentation by KitLocate - a Yandex company

Creating an Always-on Location SDK

• Tracking the app user’s location 24/7

• Runs in the background

• Efficiently

• Enabling smart engagement

Page 3: Where Camp Berlin 2014  / Presentation by KitLocate - a Yandex company

• Make apps relevant

– Provide relevant info and offers at the right

time and place!

• Provide better service and value

– Smart reminders

• Reduce spam

– Enable truly personal marketing based on

consumer needs

Contextual awareness is

great!

Page 4: Where Camp Berlin 2014  / Presentation by KitLocate - a Yandex company

How did we get here?

• The road from app to SDK

• KitLocate in brief

• Developing an SDK and platform

that enables always-on location

features

• Yandex

Page 5: Where Camp Berlin 2014  / Presentation by KitLocate - a Yandex company

• Largest European Internet Business

– $9B Market Cap

– $1,207 B Revenues (2013)

– YNDX (NASDAQ) (2011)

• More than 6000 people strong

• 17 offices in 8 countries (Berlin!)

• #1 Internet Destination in Russia (61%)

• CIS and Turkey

Page 6: Where Camp Berlin 2014  / Presentation by KitLocate - a Yandex company

• Traffic layer • Driving directions• Geographic search• Satellite imagery• Vector map data• Map rendering• Panoramas

Page 7: Where Camp Berlin 2014  / Presentation by KitLocate - a Yandex company

Sensing location on a mobile device

GPS Cell towerWiFiBluetooth NFC

AccelormeterGyroscopeMagnometerTemperatureHumidity

MicrophonesCamerasLightProximityTouch

Page 8: Where Camp Berlin 2014  / Presentation by KitLocate - a Yandex company

Criteria Cell Wi-Fi GPS

~Accuracy(radius in meters)

500 - 2000 30 - 200 5 - 20

Energy consumption

Low* Low* High

Limitations Signalavailability

Wi-Fi enabledand mapping

GPS enabled and initial focus time **

Reliability Reliable (-) Sometimes… Reliable (-)

Location Sensor Attributes

Page 9: Where Camp Berlin 2014  / Presentation by KitLocate - a Yandex company

Obstacles along the way…

Page 10: Where Camp Berlin 2014  / Presentation by KitLocate - a Yandex company

• 24/7 location sampling

• Low tolerance for power

hungry apps

LOCATION SAMPLING IS

VERY POWER HUNGRY

Page 11: Where Camp Berlin 2014  / Presentation by KitLocate - a Yandex company

How to consume less (industry lowest)

• Intelligent sampling of sensors (a few examples):

• Use accelerometer to verify movement before periodic sampling

• Increase sample rate and quality as user gets close to Geo

Fence

• A lot of smart coding tradecraft

• Running efficiently in the background

• Internet connection management :

• Prefer using WIFI when available

• Prefer sending big data chunks in low frequency

Page 12: Where Camp Berlin 2014  / Presentation by KitLocate - a Yandex company

Sometimes sensors do not tell the whole

truth

Page 13: Where Camp Berlin 2014  / Presentation by KitLocate - a Yandex company

• THE PROBLEM:

• Some devices don’t receive accelerometer changes

when the screen is off

• THE SOLUTION:

• Check if during an interval of the accelerometer you

received any changes – if not, remember it and stop

using the accelerometer when the screen is off

Accelerometer Problem

Page 14: Where Camp Berlin 2014  / Presentation by KitLocate - a Yandex company

• THE PROBLEM:

• Some devices receive upon the initiation of the

iteration old location from last iteration, but with a new

timestamp.

• THE SOLUTION:

• Examine location history over a longer period and

ignore the locations which are recognized from old

iterations.

Location Sample

Problem

Page 15: Where Camp Berlin 2014  / Presentation by KitLocate - a Yandex company

• THE PROBLEM:

• Wi-Fi – Incorrect mapping can cause false locations

• Cell - Reception problems can cause significant location

change

• GPS – Mocking locations can cause false locations

• THE SOLUTION:

• We don’t trust the locations we receive. We compare it to

the user movement pattern and verify its location

False Location

Page 16: Where Camp Berlin 2014  / Presentation by KitLocate - a Yandex company

• Missing Hardware

• Check every hardware before using it – not all phones

have GPS…

• Missing Software

• Some ROMs don’t offer Google Play services,

especially devices sold in China / Russia / LATAM.

Missing Hardware /

Software

Page 17: Where Camp Berlin 2014  / Presentation by KitLocate - a Yandex company

USER’S

PERCEPTION

ISSUES

Page 18: Where Camp Berlin 2014  / Presentation by KitLocate - a Yandex company

HOW DOES IT MEASURE?

Heat Burns – subjective user defined

3rd party Applications

PHONE

HEATING

PHONE

HEATING

Page 19: Where Camp Berlin 2014  / Presentation by KitLocate - a Yandex company

HOW TO AVOID?

• SDK activity is managed in light of the temperature of

the device, if need be:

• Skip internet connection

• Disable sensors

PHONE HEATING

Page 20: Where Camp Berlin 2014  / Presentation by KitLocate - a Yandex company

GPS ICON

• Minimize your use of GPS:

• Listen (passive) to GPS state and use that data

• Run GPS only when screen is off

• Run GPS for short period of time

Page 21: Where Camp Berlin 2014  / Presentation by KitLocate - a Yandex company

• If you are not essential:

Don’t be there!

• Run efficiently in the background

RUNNING APPS`

Page 22: Where Camp Berlin 2014  / Presentation by KitLocate - a Yandex company

PRIVACY

• Legal

• Policy

• User perception

Page 23: Where Camp Berlin 2014  / Presentation by KitLocate - a Yandex company

• Intelligent sampling!

– Sample according to application’s needs

– Use location data from other running apps

– Escalate from low power to GPS only when

needed

• Overcome and fix sample errors

• Minimize battery and data consumption

• Manage users’ perceptions

SDK recap

Page 24: Where Camp Berlin 2014  / Presentation by KitLocate - a Yandex company

• Geo-fencing

• Better foreground

& single location

USING KITLOCATE IN YOUR CODE

• Periodic location

• Social

• Movement detection

• Push notification platform (Cloud and SDK)

• Remote Geo Fence management (Cloud)

Page 25: Where Camp Berlin 2014  / Presentation by KitLocate - a Yandex company
Page 26: Where Camp Berlin 2014  / Presentation by KitLocate - a Yandex company
Page 27: Where Camp Berlin 2014  / Presentation by KitLocate - a Yandex company
Page 28: Where Camp Berlin 2014  / Presentation by KitLocate - a Yandex company