The online racing simulator
LFS Stats for Android (stats, notifications on friends coming online, hotlaps)
LFS Stats for Android

LFS Stats is an app for Android devices which retrieves and shows public LFSW stats, so it can be used on-the-go, without having to open the browser.

The app is not perfect, EXPECT some bugs! I just started to dive in Android development recently. Tilt If you encounter ANY bugs, crashes or errors, please let me know here in this thread (explain the situation - what screen were you on, what did you press last time, screen orientation, connection status, etc.). If you post the error log here (or send the error log in a PM or email: [email protected]), I would be grateful for that - it helps me debug and fix errors. If you have any suggestions about features, design or anything related to the app, feel free to post them here as well. It would be nice to hear feedback! Smile I'd like to get this app on Play Store some day, so updates are easier for me and for you as well, but that requires registering a developer account (and paying the registration fee) on Play Store which I currently do not have. For now, I'll post any updates to the app here in this thread. Huge thanks to the LFS developers for their incredible racing simulation, LFSWorld statistics website and the Pubstat system which makes this app work!

LFS Stats is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Features

Current features:
  • Notifications:
    • on a friend joining an online server
    • on new hotlaps uploaded to LFSW (WR (default) / Top 10 / Top 50 / ALL)
  • Retrieve and list:
    • hotlap upload log (filter by: ALL, WR, Top 10 or Top 50), landscape view recommended to avoid data not showing up, also you can see Splits in landscape mode
    • hotlap charts (of a specific combo). WRs are highlighted bold, own hotlaps are light green and friends' hotlaps are light blue.
    • hotlaps by a racer
    • online stats of a racer (including current or last status, host and car/track combo)
    • server browser (online hosts)
  • Friends list, their status, current server and last seen information
Background updates notifications are off by default and can be turned on in Settings. Currently, each background update takes about ~35 kilobytes (this may vary in the future, when new notification features get added). The notification also shows the splits of a hotlap (when you expand the notification - drag it down a little to peek inside). It is possible to restrict the app from using Mobile Data for background notifications only (in the app Settings). You can also choose the background update interval (every 15, 30 minutes and every hour).

Planned features:
  • alert when a friend sets a new hotlap / reaches milestones (stats)
  • alert for new hotlaps on specific combos
  • online PB's of a racer
  • tapping the hotlap notification not only opens app but brings you to the hotlap chart for the combo
  • list sorting for hotlaps
  • language selector
  • dark mode
  • teams list
  • ability to open browser to get LFSW Ident-Key so you can copy it and paste it back to the app easily
  • home screen with some online activity graphs / data
  • widgets (server status with player list, online friend list)
  • + I'm open to suggestions!
Install and Setup

As the app is not on Play Store yet (for reasons described in the description above), by default, Android blocks installing third-party apps on devices. You have to allow installing apps from "Unknown sources" in your device settings -> Security -> Unknown sources (Allow installation of apps from sources other than the Play Store). Depending on your device, this switch might be somewhere else in your device settings (under Lock screen and Security; Advanced settings; Apps -> Upper right menu: Special access -> Install unknown apps; etc.).
The first time you start the app, you must enter your 32-chars long Ident-Key that you can generate on LFSWorld: LFSW -> My LFSW Settings -> Pubstat access tab. Make sure to NOT bind the Ident-Key to an IP, and do not allow premium usage (just to make sure your LFS balance remains untouched, as the app can't make use of premium usage right now). You can change your Ident-Key later in Settings in the app.

Download

Current version: 0.8.4.
See post attachments to download the latest version, in a .zip file. If you install the new version of top of the version on your device, saved settings should be kept (ident-key, username, notification preferences etc.). If you notice any anomalies upon upgrading, please let me know and provide as much details as you can.

Requirements

Android 5.0 and up.

Permissions

Currently, the app doesn't request any special permissions that a user has to grant upon installation or during using the app. The app uses the following permissions, granted automatically by the Android system:
- Network access

Changelog

0.8.4 | 06/05/2024

- "Friends" page no longer shows "User offline" below player name (on/offline status is depicted on the right anyways), instead it shows "Last seen: never" or the last seen time.
- FIX: crashed on newer Android versions (12+), crash introduced in 0.8.3.

0.8.3 | 06/05/2024

"Friends" list:
- FEATURE: Sort friends list alphabetically/last seen online (suggested by RG^NOSLE (cuni))
"Online hosts":
- FIX: crashed due to unhandled cars info (since mod system)
- FIX: is now aware of Layout Square tracks
"Online Racer Stats":
- FIX: crashed when a racer had lots of driven distance
"Hotlap Charts":
- QOL: refresh happens automatically upon user changing combo (no need to swipe down)
- QOL: track/car combo selection now persists per environment

0.8.2 | 31/03/2021

- FIX: Content of different pages now persist upon switching between them
- FIX: Hotlap Upload Log: landscape notice no longer visible once in landscape
- FIX: All input text fields are now single-line
- FIX: Username input fields on "Online Racer Stats" and "Hotlaps by Racer" pages can now be submitted using the "Action" button on keyboard
- FIX: Fixed a crash caused by an empty friends list (upon opening "Online Racer Stats" and "Hotlaps by Racer" pages)

0.8 | 06/07/2020

- NEW: Server browser (Online hosts - basic functionality)
- NEW: Coloring for host names (incl. Friends page, Server browser and Online Racer Stats pages)
- NEW: "Last seen" time for each offline friend (Friends page)
- NEW: Friends' usernames show on a drop-down list for easier input (Hotlaps by Racer, Online Racer Stats pages)
- Fixed Friends page never updating when Notifications were disabled
- Adding a user to Friends list multiple times no longer possible
- Fixed the recognition of some track names
- Reordered preferences in Settings to better reflect function (background update vs. notifications)
- Minor layout changes

0.7 | 28/05/2020

- NEW: Hotlap charts
- NEW: Friends page with friend statuses and current server information
- NEW: Migrated "Manage Friends" into the Friends page: click the pencil icon in the action bar to edit list
- NEW: Friends are now highlighted on the hotlap log and charts (own hl's marked light green, friends' light blue)
- Added confirmation of adding a friend (known issue: the confirmation message is above the "+" button)
- The startup screen is now the new Friends page
- Second words in multiple-word usernames no longer disappear
- Minor layout changes and performance improvements

0.6 | 21/05/2020

- NEW: Friends list (accessible in Settings - Manage Friends)
- NEW: Alert when friends connect to a server
- Ident-Key is now hidden in Settings
- Fixed a crash on Online Racer Stats when player had no stats in some fields
- New HL notifications no longer overwrite previous hotlap notifications
- Removed the big "Refresh" buttons to clean up look
- Minor layout changes

0.5 | 18/05/2020

- Initial release

Screenshots

[see attachments]
Attached images
0.5_notif_newhl.png
0.6_hotlapsbyracer.png
0.6_hotlapuploadlog.png
0.6_friendnotif.png
0.7_hotlapcharts.png
0.7_hotlaplog_portrait.png
0.8_drawermenu.png
0.8_friendspage.png
0.8_onlineracerstats.png
0.8_serverbrowser.png
Attached files
lfsstats-0.8.4.zip - 2.4 MB - 92 views
Great application thank you Smile
Well done Dan, so far so good!
Thanks for the feedback (both here and on the LFS Community Discord server's #programming channel)!

Update 0.6
Thanks for trying out the initial release.
New in 0.6, friends management and alert for a friend joining a server is now available! I also included new screenshots where you can see the friend alert and the friends list screen (you can access it in Settings - Manage Friends). Please try it out, and as always, if there are any crashes, please post feedback here. I hope you enjoy the new features. Note: the friend notification isn't instant, as the app is still bound to the 15-min background update interval.
I also plan creating a Friends page in the app, where you can see your friends' statuses and/or current servers which they are connected to.

Check the original post to download the new version.

Changelog:
0.6 (21/05/2020) - Friends list (accessible in Settings - Manage Friends)
- Alert when friends connect to a server
- Ident-Key is now hidden in Settings
- Fixed a crash on Online Racer Stats when player had no stats in some fields
- New HL notifications no longer overwrite previous hotlap notifications
- Removed the big "Refresh" buttons to clean up look
- Minor layout changes

Great Application my man!

Keep up the good work!
Update 0.7
New in 0.7, hotlap charts and a friends list with their active statuses are now available! New screenshots included in the original post: hotlap charts, friends page, highlighting of own/friends' hotlaps and the drawer menu. Editing Friends list also moved, from Settings to the Friends page: tap the pencil icon in the top right corner to edit it.
Please try it out, and as always, if there are any crashes, please post feedback here. I hope you enjoy the new features.
Note: currently, friends statuses on the friends page only show when you have "Background Notifications" and notifications for "Friend Activity" enabled. That also means the Friend page relies on the background update check for friend activity. You might need to reload the Friends page to see statuses, after the background update finished. Later I'll try to separate these two processes, so statuses show up even when you opt-out of getting any notifications.

Download the new version in the attachments of original post.

Changes:
0.7 (28/05/2020) - NEW: Hotlap charts
- NEW: Friends page with friend statuses and current server information
- NEW: Migrated "Manage Friends" into the Friends page: click the pencil icon
in the action bar to edit list
- NEW: Friends are now highlighted on the hotlap log and charts (own hl's marked
light green, friends' light blue)
- Added confirmation of adding a friend (known issue: the confirmation message
is above the "+" button)
- The startup screen is now the new Friends page
- Second words in multiple-word usernames no longer disappear
- Minor layout changes and performance improvements

Do you plan on publishing this on Google Play at some point?
I do!
Quote from MandulAA :... I'd like to get this app on Play Store some day, so updates are easier for me and for you as well, but that requires registering a developer account (and paying the registration fee) on Play Store which I currently do not have. For now, I'll post any updates to the app here in this thread. ...

Ok, cool. It will make it easier for us to update too if you get it on the Play Store ASAP. The process for registering an account and getting apps approved is a lot easier these days.
Great stuff mate!!!

If you feel like making it multilingual, i can translate.
Quote from MorfeasFX :Great stuff mate!!!
If you feel like making it multilingual, i can translate.

Thanks for trying it! New version 0.8 is coming soon.
Actually, in my test version I prepared a language selector menu, but decided to develop more features before translating the app. Despite that, thank you for mentioning it and offering help, I'll make sure to get back to you! Smile
Update 0.8
New in 0.8, Server browser is now available! (only basic functionality of listing servers, features like sorting soon, hopefully)
Numerous improvements were made to Friends list: colored server names, "last seen" information and slight design and functional changes.

Server/host names are colored now in the app. Input of usernames is now easier: friends get listed on a drop-down menu when you start typing their username.

A bug mentioned in the previous update post (regarding friends page updating) is now fixed and friends statuses now update even when you opted out of getting notifications.
Donating via Paypal in-app is now also possible.

New screenshots included in the original post: server browser, friends page, online racer stats and the drawer menu.

Please try it out, and as always, if there are any crashes, please post feedback here. I hope you enjoy the new features and the app overall.

Download the new version in the attachments of original post.

Changes:
0.8 (06/07/2020) - NEW: Server browser (Online hosts - basic functionality)
- NEW: Coloring for host names (incl. Friends page, Server browser and Online Racer Stats pages)
- NEW: "Last seen" time for each offline friend (Friends page)
- NEW: Friends' usernames show on a drop-down list for easier input (Hotlaps by Racer,
Online Racer Stats pages)
- NEW: In-app PayPal donation (using PayPal REST API)
- Fixed Friends page never updating when Notifications were disabled
- Adding a user to Friends list multiple times no longer possible
- Fixed the recognition of some track names
- Reordered preferences in Settings to better reflect function (background update vs. notifications)
- Minor layout changes

EDIT: [FIXED IN 0.8.2] I just discovered a crash, when there are no friends added to the friends list. The crash happens on Racer Stats and Hotlaps by Racer pages. The next version will contain a fix, until then, please add a single friend to the Friends list to avoid crashing.
Attached images
0.8_suggestions.png
0.8_friends_detail.png
If you cannot upload it on Google Store, you might want to consider F-Droid a decent alternative if you don't mind open sourcing your project.
Update 0.8.2
This small patch contains fixes and user experience improvements, also a crash fix.

New version can be downloaded in the attachments of original post.

Please try it out, and as always, if there are any crashes, please post feedback here. I hope you enjoy the update and the app overall.

Changes:

0.8.2 | 31/03/2021
- FIX: Content of different pages now persist upon switching between them
- FIX: Hotlap Upload Log: landscape notice no longer visible once in landscape
- FIX: All input text fields are now single-line
- FIX: Username input fields on "Online Racer Stats" and "Hotlaps by Racer" pages can now be submitted using the "Action" button on keyboard
- FIX: Fixed a crash caused by an empty friends list (upon opening "Online Racer Stats" and "Hotlaps by Racer" pages)

Note: Refreshing the online hosts page does crash the app, since the mods system was released. Currently, all other features seem to work fine (friend-online notifications, charts, stats, hotlaps, etc.).
Application
when IOS Na-na
#21 - cuni
Been enjoying this app a lot, well done!

Would be could to show a list of only those who are online and at what server. Mabe add another page 'who's online' ? A sorting would be cool too, by most recent online Smile
Also, customizable notifications ? This means, silence the notification for a user specifically.

5 starsThumbs up
Thanks for the feedback and suggestions Nosle Smile Hopefully I will get around doing an update in the near future.

(if you want to get notified when an update comes, I suggest Subscribing to this thread)
Update 0.8.3
This small patch contains fixes and user experience improvements. Friends list got an upgrade by supporting sorting options, so you can now sort friends based on when they were last seen online (by the app) (feature suggested by RG^Nosle (cuni)). Online hosts list and Online Racer Stats no longer crashes. Hotlap charts got some quality-of-life improvements.

New version can be downloaded in the attachments of original post.

Please try it out, and as always, if there are any crashes, please post feedback here. I hope you enjoy the update and the app overall.

Changes:

0.8.3 | 06/05/2024

"Friends" list:
- FEATURE: Sort friends list alphabetically/last seen online (suggested by RG^NOSLE (cuni))
"Online hosts":
- FIX: crashed due to unhandled cars info (since mod system)
- FIX: is now aware of Layout Square tracks
"Online Racer Stats":
- FIX: crashed when a racer had lots of driven distance
"Hotlap Charts":
- QOL: refresh happens automatically upon user changing combo (no need to swipe down)
- QOL: track/car combo selection now persists per environment

The friends we add to the friends list never appear online. Also the app crashes on its own. This happens in the friends list.
I would appreciate it if you add language support. I can do translations for Turkish language support as a volunteer.

FGED GREDG RDFGDR GSFDG