mobile [micro-logger] is an android application for continuous logging of location coordinates, designed to record hiking, biking tracks and other outdoor activities. Application works in background. Track points are saved at chosen intervals and may be uploaded to dedicated server in real time. This client works with mobile web server. Together they make a complete self owned and controlled client–server solution.
- meant to be simple and small (μ)
- low memory and battery impact
- uses GPS or network based location data
- synchronizes location with web server in real time, in case of problems keeps retrying
- alternatively works in offline mode; positions may be uploaded to the servers manually
- configurable tracking settings
- export to GPX format
- automation
- mobile's current status is shown by two leds, one for location tracking and one for web synchronization:
led | tracking | synchronization |
---|---|---|
on, recently updated | synchronized | |
on, long time since last update | synchronization delay | |
off | synchronization error |
- clicking on current track's name will show track statistics
- mobile may accept commands from other applications for starting or stopping its operations. To make it work you must explicitly enable this functionality in app settings ("Allow external commands" switch).
- commands are sent as
broadcasts
with followingintent
parameters:- target package:
de.arikgrahl.mobile
- target class:
de.arikgrahl.mobile.ExternalCommandReceiver
- action:
de.arikgrahl.mobile.intent.action.COMMAND
- extra:
"command": [command name]
, where command name is one of:"start logger"
for starting position logging"start new logger"
for creating a New Track and starting position logging to it"stop logger"
for stopping position logging"start upload"
for starting track data upload to server (in case live tracking is off)
- target package:
- third party examples:
- Automate (LlamaLab) – Send broadcast block with
Package
,Receiver Class
andAction
fields as above andExtras
field eg.{"command": "start logger"}
- Tasker (joaomgcd) – System → Send intent. Fields
Action
,Package
,Class
as above andExtra
field eg.command:start logger
- Automate (LlamaLab) – Send broadcast block with
- command line:
am broadcast -a de.arikgrahl.mobile.intent.action.COMMAND -e "command" "start logger" de.arikgrahl.mobile de.arikgrahl.mobile.ExternalCommandReceiver
bc1qt3uwhze9x8tj6v73c587gprhufg9uur0rzxhvh
0x100C31C781C8124661413ed6d1AA9B1e2328fFA2
Xb6X3zwLMgc3QQDNbeYmsqSwn2pofH2vXT