* Move battery info to compose - always show voltage level and icons to match battery percentage Use tool text in preview, rather than actually set text value Simplify node info layout to avoid defining margins on everything * Move node position to Compose * Update hyperlink color to match previous value * Use compose preview in layout editor * Use compose preview in layout editor * Add simple preview for use in layout * Move last heard node info to Compose Clean up layout of node info * Move signal info to Compose and simplify bind * Prevent long coordinates from colliding with signal info * Move the rest of the node info card to compose Breaks the blinking feature when navigating from chat Wrap position to new line if overflow * Adjust layout and text sizing to closer match original * Use constraint layout for tighter display on busy nodes * Construct environment metrics so that there aren't trailing spaces if current is zero * Swap viewholder root for compose view rather than inflating layout Fix padding lost when changing out view holder root Intelligently update the list with only nodes that changed * Remove unused method, and adjust replacement method to match the same decimal precisions as before * Add elevation and number of GPS satellites to node info list Add some extension functions for easier conversion between units and systems * Dispose composition on recycle to avoid lingering spacing from previous layouts Remove comments explaning adapter functionality Remove unused methods * Use previous string for denoting unknown node names * Align properly if altitude but no signal info |
||
|---|---|---|
| .github | ||
| .idea | ||
| app | ||
| design@6d9d5966b7 | ||
| gradle/wrapper | ||
| .gitignore | ||
| .gitmodules | ||
| build.gradle | ||
| debugging-android.md | ||
| gradle.properties | ||
| gradlew | ||
| gradlew.bat | ||
| LICENSE | ||
| README.md | ||
| renovate.json | ||
| settings.gradle | ||
Meshtastic-Android
This is a tool for using Android with open-source mesh radios. For more information see our webpage: meshtastic.org. If you are looking for the the device side code, see here.
This project is currently beta testing, if you have questions or feedback please Join our discussion forum. We would love to hear from you!
If you want to join the Play Store beta program go to this URL and opt-in to the alpha/beta test. If you encounter any problems or have questions, post in the forum and we'll help.
However, if you must use 'raw' APKs you can get them from our github releases. This is not recommended because if you manually install an APK it will not automatically update.
Translations
You can help translate the app into your native language using Crowdin.
Build instructions
If you would like to develop this application we'd love your help! These build instructions are brief and should be improved, please send a PR if you can.
- Use Android Studio to build/debug
- Use "git submodule update --init --recursive" to pull in the various submodules we depend on
- There are a few config files which you'll need to copy from templates included in the project. Run the following commands to do so:
rm ./app/google-services.json
cp ./app/google-services-example.json ./app/google-services.json
- Now you should be able to select "Run / Run" in the IDE and it will happily start running on your phone or the emulator. Note: The emulators don't support bluetooth, so some features can not be used in that environment.
Analytics setup
-
analytics are included but can be disabled by the user on the settings screen
-
on dev devices
adb shell setprop debug.firebase.analytics.app com.geeksville.mesh
adb shell setprop log.tag.FirebaseCrashlytics DEBUG
for verbose logging:
adb shell setprop log.tag.FA VERBOSE
Copyright 2023, Meshtastic LLC. GPL-3.0 license

![Download at https://play.google.com/store/apps/details?id=com.geeksville.mesh]](https://play.google.com/intl/en_us/badges/static/images/badges/en_badge_web_generic.png)