Back to rankings

kylecorry31/Trail-Sense

Kotlinkylecorry.com/Trail-Sense/

An Android app that uses your phone's sensors to assist with wilderness treks or survival situations.

androidbarometeraltimetercompassgpssensorssurvivalwildernesshikingweather-forecastingnavigationweather
Star Growth
Stars
2.7k
Forks
163
Weekly Growth
Issues
282
1k2k
May 2020May 2022Jun 2024Jul 2026
README

Trail Sense

Use your Android phone's sensors to assist with wilderness treks or survival situations. Designed for entirely offline use.

Nightly

Trail Sense is a tool, and just like any other tool that you bring into the wilderness, it's essential to have backup equipment and skills.

F-Droid Google Play Obtainium Survival Guide
Get it on F-Droid Get it on Google Play Get it on Obtainium Get the book

See the Technical Blog / Research

Table of Contents

Feature Roadmap

This is the 2026 feature roadmap. It's not a gaurantee and it may change. Other features may be included based on what I feel like working on.

  • Improvements to / additional map layers
  • Improvements to the following tools: Offline Maps, Map, Navigation, and Astronomy
  • Performance, stability, and codebase cleanup
  • Release of the first plugins (map layers / coordinate formats)

Goals

  • Trail Sense must not use the Internet in any way, as I want the entire app usable when there is no Internet connection
  • Features must provide some benefits to people using the app while hiking, in a survival situation, etc.
  • Features should make use of the sensors on a phone rather than relying on stored information such as guides
  • Features must be based on peer-reviewed science or be verified against real world data
  • Use Cases

Features

  • Designed for hiking, backpacking, camping, and geocaching
  • Place beacons and navigate to them
  • Follow paths
  • Retrace your steps with backtrack
  • Use a photo as a map
  • Plan what to pack
  • Be alerted before the sun sets
  • Predict the weather
  • Use your phone as a flashlight
  • And much more!

See the need for a new feature? Post it here!

Privacy

Location information gathered by this application does not leave your device (as a matter of fact, this app doesn't use the Internet at all). The altitude and pressure history for the last 48 hours is stored in local app storage - this is used to determine weather forecasts. The last known location is also stored in app preferences to allow faster load times and support app functionality when the GPS can not be reached. The beacons and paths store their location information in a local SQLite database. All of this information is cleared when you clear the app storage or delete it.

Permissions

Sensitive

  • POST_NOTIFICATIONS
    • Allows Trail Sense to display notifications (backtrack, weather, sunset alerts, astronomy events, water boil timer, etc)
    • When denied: Alerts will not be displayed and some services may not function properly depending on your device manufacturer.
  • ACCESS_FINE_LOCATION / ACCESS_COARSE_LOCATION
    • Allows Trail Sense to retrieve your location for navigation, weather (sea level calibration), and astronomy.
    • When denied: You will have the ability to mock your location under Settings > Sensors > GPS. On Android 14+, backtrack and weather will be unavailable due to Android OS constraints.
  • ACCESS_BACKGROUND_LOCATION
    • Allows Trail Sense to retrieve your location for sunset alerts while in the background. On some devices, this will also improve the reliability of backtrack and weather monitor (though shouldn't be needed on most devices).
    • When denied: If you travel and do not open Trail Sense, but have Sunset and Sunrise Alerts enabled, the times will likely be inaccurate.
  • ACTIVITY_RECOGNITION
    • Allows Trail Sense to use your phone's pedometer for distance calculation.
    • When denied: The pedometer will not work.
  • CAMERA
    • Allows Trail Sense to use your camera on the sighting compass, clinometer, and for taking photos used by the Cloud Scanner, QR Code Scanner, and Photo maps.
    • When denied: You will not be able to use the sighting compass, camera clinometer, or QR Code Scanner. You will need to pick an existing photo to use for the Cloud Scanner or Photo maps.
  • SCHEDULE_EXACT_ALARM
    • Allows Trail Sense to post a notification at an exact time. This is used by the Clock tool (when updating system time) and Sunset and Sunrise Alerts.
    • When denied: The clock and sunset alerts may not be accurate (can be off by several minutes).

Not sensitive (always granted)

  • RECEIVE_BOOT_COMPLETED
    • Allows Trail Sense to restart when you reboot your device. This will re-enable backtrack, weather monitor, and several other background services.
  • FOREGROUND_SERVICE
    • Allows Trail Sense to start foreground services, such as backtrack and weather monitor.
  • FLASHLIGHT
    • Allows Trail Sense to control the phone's flashlight.
  • VIBRATE
    • Allows Trail Sense to vibrate the phone. Used for haptic feedback on dials and on the metal detector tool.
  • WAKE_LOCK
    • Allows Trail Sense to reliably run services such as backtrack and weather monitor, especially when the frequency is under 15 minutes.

Contributing

See the CONTRIBUTING.md file for details on contributing to Trail Sense.

Copying

You are allowed to create copies of Trail Sense and rebrand to what you see fit. It is under the MIT license.

Please change the following if you are using this as the base for you app:

  • App name
  • Package name
  • Support email
  • App icon (optional)

FAQ

The FAQ has moved to the wiki

Open Source Credits

License

License

Related repositories
flutter/flutter

Flutter makes it easy and fast to build beautiful apps for mobile and beyond

DartBSD 3-Clause "New" or "Revised" Licensemobileandroid
flutter.dev
177.9k30.7k
Genymobile/scrcpy

Display and control your Android device

CApache License 2.0androidc
146.1k13.5k
react/react-native

A framework for building native applications using React

C++MIT Licenseandroidapp-framework
reactnative.dev
126.2k25.2k
facebook/react-native

A framework for building native applications using React

C++MIT Licenseandroidapp-framework
reactnative.dev
120.9k24.5k
rustdesk/rustdesk

An open-source remote desktop application designed for self-hosting, as an alternative to TeamViewer.

Rustcrates.ioGNU Affero General Public License v3.0remote-controlremote-desktop
rustdesk.com
118.6k18.1k
justjavac/free-programming-books-zh_CN

:books: 免费的计算机编程类中文书籍,欢迎投稿

GNU General Public License v3.0pythonjavascript
weibo.com/justjavac
117.7k28.2k
Hack-with-Github/Awesome-Hacking

A collection of various awesome lists for hackers, pentesters and security researchers

Creative Commons Zero v1.0 Universalhackingsecurity
116.6k10.5k
tldr-pages/tldr

Collaborative cheatsheets for console commands 📚.

MarkdownOthershellman-page
tldr.sh
63.2k5.3k
Solido/awesome-flutter

An awesome list that curates the best Flutter libraries, tools, tutorials, articles and more.

Dartflutterawesome-list
60.7k6.9k
2dust/v2rayNG

A V2Ray client for Android, support Xray core and v2fly core

KotlinGNU General Public License v3.0androidproxy
v2rayng.2dust.link
59.9k7.8k
termux/termux-app

Termux - a terminal emulator application for Android OS extendible by variety of packages.

JavaMavenOtherandroidterminal
f-droid.org/en/packages/com.termux
57.9k7k
wasabeef/awesome-android-ui

A curated list of awesome Android UI/UX libraries

MIT Licenseandroidawesome
56.9k10.3k