BeatOnStep — Android et iOS

BeatOnStep — Android and iOS

BeatOnStep

BeatOnStep

Politique de confidentialité

Privacy policy

← Accueil ← Home

Politique de confidentialité — BeatOnStep

Dernière mise à jour : 6 octobre 2026

1. Qui sommes-nous

BeatOnStep est une application mobile (Android et iOS) qui adapte la musique au rythme de votre allure de marche ou de course. L'application est disponible sur Google Play (Android, BeatOnStep) et l'App Store (iOS, BeatOnSteps).

Éditeur : Rafael Orset — contact : forum BeatOnStep

2. Principe général : collecte minimale, sans tracking commercial

BeatOnStep ne crée pas de compte utilisateur, n'utilise pas de publicité et n'effectue aucun tracking commercial ni profilage. Une mesure d'usage pseudonyme très limitée peut être envoyée au serveur BeatOnStep pour connaître uniquement le nombre de playlists personnelles importées par source (§ 3.9). Aucune cadence (PPM), donnée de parcours, nom ou identifiant de playlist, titre, artiste ou compte musical n'est inclus dans cette mesure.

Selon les fonctions que vous activez, l'application peut échanger des données avec des services que vous choisissez (Mix démo / serveur musique, YouTube ou Apple Music si connectés, liens Spotify ou Deezer collés, analyse BPM) ou avec des infrastructures techniques (mises à jour). Le détail figure ci-dessous.

3. Fonctionnalités et flux de données

3.1 Fichiers audio locaux (Musiques téléphone)

  • Les fichiers que vous importez restent sur votre appareil.
  • Les métadonnées associées (chemin, BPM, préférences) sont stockées localement uniquement.
  • Aucun fichier audio n'est envoyé hors de l'appareil pour la détection de cadence ni la lecture locale, sauf si vous déclenchez l'analyse BPM serveur (§ 3.3).

3.2 Détection de cadence (PPM)

  • L'accéléromètre est lu sur l'appareil pour estimer votre cadence de pas.
  • Ces mesures restent sur l'appareil par défaut et ne sont pas envoyées automatiquement. Elles peuvent uniquement être incluses dans un rapport de diagnostic si vous choisissez explicitement Bug / remarque → Envoyer (§ 3.11).
  • Elles servent uniquement au fonctionnement temps réel de l'app (sélection et lecture de musique adaptée à votre rythme).

3.3 Mix démo et serveur musique (optionnel)

Le catalogue de démo (278 morceaux libres de droits) est hébergé sur un serveur de l'éditeur (https://beatonstep.tail09d8d8.ts.net/music).

  • Ce serveur n'est pas un réseau social ni un service public : il sert uniquement le catalogue de démo.
  • Pas de création de compte, pas de cookie publicitaire, pas de télémétrie marketing.
  • Si vous envoyez un fichier audio pour analyse BPM, ce fichier transite par le serveur pour traitement ; il n'est pas conservé à des fins de stockage permanent ni revendu.

3.4 YouTube (optionnel)

Si vous connectez un compte Google pour utiliser YouTube dans BeatOnStep :

  • Fonction initiée par vous ; BeatOnStep ne fournit pas de catalogue YouTube.
  • Connexion Google sécurisée ; l'éditeur ne reçoit pas votre mot de passe Google.
  • Les jetons d'accès sont stockés localement sur l'appareil et ne sont jamais transmis à l'éditeur ni revendus.
  • L'app interroge les API Google / YouTube pour afficher vos playlists et métadonnées.
  • La lecture s'effectue dans l'app YouTube ou YouTube Music (au choix dans Réglages) — pas dans BeatOnStep.
  • Vous pouvez déconnecter YouTube dans l'app à tout moment : les jetons locaux sont effacés.
  • Le traitement de votre compte Google reste régi par les politiques de Google.

3.5 Apple Music (optionnel)

Si vous connectez un compte Apple pour utiliser Apple Music dans BeatOnStep :

  • Fonction initiée par vous ; BeatOnStep ne fournit pas de catalogue Apple Music.
  • Connexion Apple sécurisée ; l'éditeur ne reçoit pas votre mot de passe Apple.
  • Les jetons d'accès sont stockés localement sur l'appareil et ne sont jamais transmis à l'éditeur ni revendus.
  • L'app interroge les services Apple pour afficher vos playlists et métadonnées (titres, artistes, BPM saisis ou détectés).
  • Aucun fichier audio n'est mis en cache par BeatOnStep ; la lecture s'effectue dans l'app Apple Music — pas dans BeatOnStep.
  • Un abonnement Apple Music actif est requis pour écouter le catalogue via Apple.
  • Vous pouvez déconnecter Apple Music dans l'app à tout moment : les jetons locaux sont effacés.
  • Le traitement de votre compte Apple reste régi par les politiques d'Apple.

iPhone : lecture automatique dans Apple Music ; la musique peut continuer en arrière-plan pendant BeatOnStep.

Android : l'app Apple Music (Google Play) doit être installée ; BeatOnStep ouvre le morceau dans cette app (pas de lecteur intégré BeatOnStep).

3.6 Spotify (optionnel — liens Partager)

Lorsque vous utilisez Spotify dans BeatOnStep :

  • Fonction initiée par vous : vous collez le lien Partager d'un morceau, ou d'une playlist publique. BeatOnStep ne se connecte pas à votre compte Spotify.
  • L'app peut interroger le catalogue public de Spotify pour afficher le titre. Aucun mot de passe Spotify n'est demandé ni transmis à l'éditeur.
  • Les identifiants et métadonnées restent sur l'appareil.
  • La lecture s'effectue dans l'app Spotify — pas dans BeatOnStep. Un compte Spotify (et, selon les titres, un abonnement) peut être requis par Spotify.
  • Une playlist privée ne peut pas être lue sans connexion officielle, qui n'est pas proposée au public pour l'instant.
  • BeatOnStep ne fournit pas le catalogue Spotify.

3.7 Deezer (optionnel — liens Partager)

Lorsque vous utilisez Deezer dans BeatOnStep :

  • Fonction initiée par vous : vous collez le lien Partager d'un morceau, ou d'une playlist publique. BeatOnStep ne se connecte pas à votre compte Deezer.
  • L'app peut interroger le catalogue public Deezer (titre, durée, parfois BPM). Aucun mot de passe Deezer n'est demandé ni transmis à l'éditeur.
  • Les identifiants et métadonnées restent sur l'appareil.
  • La lecture s'effectue dans l'app Deezer — pas dans BeatOnStep. Un compte Deezer (et, selon les titres, un abonnement) peut être requis par Deezer.
  • Une playlist privée ne peut pas être lue sans connexion officielle, qui n'est pas proposée au public pour l'instant.
  • BeatOnStep ne fournit pas le catalogue Deezer.

3.8 Mises à jour (Expo OTA)

L'app peut contacter les services Expo pour vérifier et télécharger des mises à jour JavaScript liées à votre installation. Il ne s'agit pas d'un SDK publicitaire ; aucune donnée de cadence ni de bibliothèque musicale n'est envoyée via ce canal.

3.9 Mesure pseudonyme du nombre de playlists importées

Pour évaluer l'usage de la fonction d'import et améliorer le produit, BeatOnStep peut envoyer occasionnellement au serveur de l'éditeur un snapshot minimal comprenant : un identifiant d'installation aléatoire propre à BeatOnStep, la plateforme (iOS / Android), la version de l'app et le nombre de playlists personnelles encore importées pour Apple Music, YouTube, Spotify et Deezer.

  • Cette mesure correspond à de l'analytics produit : elle sert à comprendre l'utilisation de la fonction d'import et à orienter les améliorations de BeatOnStep.
  • Cette mesure ne contient aucun nom ni identifiant de playlist, aucun titre, artiste, token OAuth, compte musical, donnée audio, cadence (PPM) ou parcours.
  • L'identifiant est généré aléatoirement par BeatOnStep. Il n'est pas l'identifiant Apple, Google, Android ou d'un fournisseur musical et ne contient ni nom, ni adresse e-mail, ni identifiant de compte.
  • Cet identifiant permet uniquement de rattacher les snapshots successifs à une même installation de BeatOnStep. Il n'est pas utilisé pour identifier la personne qui utilise l'app.
  • Les suppressions sont prises en compte : le snapshot suivant reflète le nombre de playlists encore présentes dans l'app.
  • L'envoi est limité : au plus une fois par jour après un changement et, si rien ne change, un rappel au plus une fois tous les 7 jours pour mesurer les installations actives.
  • Le serveur conserve seulement le dernier snapshot connu par installation afin de produire des statistiques cumulées depuis le début de cette mesure ; il ne conserve pas l'historique détaillé de chaque envoi. L'adresse IP peut être traitée techniquement pendant la connexion HTTPS mais n'est pas enregistrée dans le fichier de mesure.
  • Ces données ne sont ni vendues, ni utilisées pour la publicité, ni utilisées pour le suivi publicitaire (« tracking »), ni croisées avec des données provenant d'autres entreprises à des fins de profilage.

3.10 Garmin et forme du parcours (optionnel)

  • La montre Garmin utilise son GPS dans le cadre de l'activité enregistrée et peut transmettre temporairement à BeatOnStep les positions nécessaires au récapitulatif.
  • Les coordonnées GPS brutes restent uniquement en mémoire pendant la course : elles ne sont pas persistées et ne sont pas envoyées au serveur BeatOnStep.
  • BeatOnStep peut conserver localement une forme relative simplifiée du parcours, sans latitude ni longitude, pour le récapitulatif et les visuels de partage.
  • Seule cette forme relative non géographique peut être incluse dans une story ; les coordonnées GPS brutes ne sont jamais incluses dans l'URL de partage.

3.11 Rapport Bug / remarque volontaire

Si vous utilisez le bouton Bug / remarque dans Réglages, BeatOnStep affiche un champ de message et demande une action explicite avant tout envoi. Si vous choisissez Envoyer, l'app transmet le même rapport technique que celui que vous pouvez partager manuellement en touchant la version de l'application, avec le message que vous avez saisi.

Ce rapport peut inclure :

  • la version, le build, le runtime et les informations techniques de livraison de l'application ;
  • des événements de diagnostic récents liés au fonctionnement de BeatOnStep ;
  • le diagnostic PPM récent, pouvant contenir des échantillons d'accéléromètre et la cadence calculée ;
  • des états techniques Garmin / Apple Watch et des intégrations musicales, par exemple disponibilité, états de lecture, erreurs et identifiants techniques de titres ou d'appareils lorsqu'ils figurent déjà dans le diagnostic ;
  • l'identifiant d'installation pseudonyme BeatOnStep, la plateforme et la version de l'app.

L'envoi est strictement déclenché par l'utilisateur : aucun rapport Bug / remarque n'est transmis automatiquement. Aucun mot de passe, token OAuth ni fichier musical n'est inclus.

Le serveur utilise ce rapport uniquement pour le support technique et le diagnostic d'incidents. Les petits rapports peuvent être inclus directement dans l'e-mail de support ; les rapports plus volumineux peuvent être joints sous forme de fichier texte. L'adresse e-mail privée du destinataire du support reste configurée côté serveur et n'est pas exposée dans l'app.

4. Permissions demandées

Android

PermissionRaison
HIGH_SAMPLING_RATE_SENSORSLecture de l'accéléromètre à haute fréquence pour détecter la cadence de pas (PPM).
FOREGROUND_SERVICEMaintenir la lecture musicale et la détection de cadence en arrière-plan (téléphone verrouillé).
WAKE_LOCKLimiter la mise en veille du capteur pendant une session.

iOS (App Store)

BeatOnStep demande uniquement l'accès aux capteurs de mouvement (accéléromètre) pour la détection de cadence. Sur iOS, cet accès est géré par le framework natif sans permission explicite demandée à l'utilisateur.

L'accès à la médiathèque (Musiques téléphone) déclenche une demande de permission système standard lorsque vous importez de la musique depuis votre appareil.

L'app mobile BeatOnStep ne demande aucune permission de localisation GPS du téléphone. Si vous utilisez l'app Garmin BeatOnStep, la montre peut utiliser sa propre permission de positionnement pour enregistrer l'activité et fournir le tracé relatif décrit au § 3.10. BeatOnStep n'accède pas à vos contacts, votre appareil photo ou votre microphone.

5. Données stockées localement

Sur votre appareil, dans l'espace privé de l'app :

  • Bibliothèque importée (chemins, BPM, sources activées).
  • Préférences (mode, plages cibles, réglages, langue).
  • Jetons de connexion YouTube et Apple Music (si connectés).
  • Titres ou playlists publiques Spotify dont vous avez collé le lien (identifiant, titre, BPM saisi ou détecté) — pas de jeton de compte Spotify.
  • Titres ou playlists publiques Deezer dont vous avez collé le lien (identifiant, métadonnées, BPM saisi, détecté ou fourni par Deezer) — pas de jeton de compte Deezer.
  • Identifiant d'installation aléatoire BeatOnStep et dernier état d'envoi de la mesure de playlists (§ 3.9).
  • Forme relative simplifiée du dernier parcours Garmin utilisée pour le récapitulatif/story, lorsqu'elle est disponible (§ 3.10) — sans coordonnées GPS brutes.

La désinstallation de l'application supprime ces données. La déconnexion d'un service (YouTube, Apple Music) efface les jetons correspondants sans désinstaller l'app.

6. Services tiers

ServiceQuandCe qui transite
Google / YouTubeSi vous connectez YouTubeConnexion Google ; requêtes API playlists / métadonnées
Apple / Apple MusicSi vous connectez Apple MusicConnexion Apple ; métadonnées playlists
Apple (App Store)Distribution iOSGestion par Apple selon ses propres règles
ExpoAutomatiqueVérification / téléchargement de mises à jour OTA
Serveur BeatOnStepCatalogue / analyse BPM, mesure pseudonyme d'usage et support volontaireListe de titres ; éventuel fichier audio pour analyse BPM ; compteur agrégé de playlists par source + identifiant d'installation aléatoire (§ 3.9) ; rapport technique Bug / remarque uniquement après action explicite (§ 3.11)
SpotifySi vous collez un lien PartagerDemande du titre au catalogue public ; ouverture dans l'app Spotify. Pas de connexion compte
DeezerSi vous collez un lien PartagerDemande titre / durée / parfois BPM au catalogue public ; ouverture dans l'app Deezer. Pas de connexion compte
Garmin Connect IQSi vous associez une montre Garmin et utilisez BeatOnStep pendant une courseCadence et métriques de course ; positions GPS brutes transitoires montre → téléphone uniquement pour produire localement une forme relative du parcours (§ 3.10)

Pas de SDK publicitaire, pas de mesure d'audience marketing, pas de réseau social intégré autre que la connexion aux services que vous choisissez.

7. Enfants

L'application n'est pas destinée aux enfants de moins de 13 ans (16 ans dans l'UE) et ne collecte sciemment aucune donnée les concernant.

8. Vos choix et droits (RGPD / vie privée)

BeatOnStep n'utilise aucun suivi publicitaire et ne propose donc aucun réglage de consentement publicitaire. Vous pouvez gérer les données locales directement dans l'app, déconnecter les services musicaux concernés ou désinstaller l'app, ce qui arrête les futurs envois de la mesure pseudonyme décrite au § 3.9.

La mesure serveur ne contient ni nom, ni e-mail, ni compte BeatOnStep permettant à l'éditeur de rattacher spontanément un snapshot à votre identité. Pour toute question relative à cette mesure ou à vos droits, utilisez le forum BeatOnStep indiqué ci-dessous.

  • Données locales (bibliothèque, réglages, jetons) : vous les contrôlez directement dans l'app ou via la désinstallation.
  • Compte Google / YouTube : exercez vos droits auprès de Google selon leurs procédures.
  • Compte Apple / Apple Music : exercez vos droits auprès d'Apple selon leurs procédures.
  • Spotify : pas de compte BeatOnStep lié à Spotify ; les liens collés restent sur l'appareil. Pour votre compte Spotify, exercez vos droits auprès de Spotify.
  • Deezer : pas de compte BeatOnStep lié à Deezer ; les liens collés restent sur l'appareil. Pour votre compte Deezer, exercez vos droits auprès de Deezer.
  • Serveur BeatOnStep : pas de compte utilisateur. La mesure pseudonyme conserve uniquement le dernier état connu par installation, sans historique détaillé des envois. Les rapports Bug / remarque sont envoyés uniquement à votre demande pour le support technique (§ 3.11) ; pour toute question relative à ces données, utilisez le forum.

9. Modifications

Cette politique peut être mise à jour. La date en haut du document reflète la dernière révision. La version en vigueur est disponible à l'adresse communiquée sur la fiche Google Play et dans l'app (Réglages → À propos) :

https://rafa-create.github.io/beatonstep-website/privacy.html

10. Contact


11. Crédits musicaux (catalogue mix démo)

Le catalogue « Mix démo » est composé exclusivement de morceaux libres de droits sous licence Creative Commons Attribution 4.0 International (CC-BY 4.0) (usage commercial autorisé avec attribution).

Artistes (sources) :

Les BPM sont mesurés côté serveur (librosa.beat.beat_track, seuil de confiance ≥ 0,77). Ils peuvent différer légèrement des BPM publiés par les auteurs.

Liste complète des titres (obligatoire pour l'attribution CC-BY) : Crédits musicaux — Mix démo

Privacy Policy — BeatOnStep (English)

Last updated: October 6, 2026

The French text is the binding version. This English translation is provided for convenience.

1. Who we are

BeatOnStep is a mobile app (Android and iOS) that adapts music to your walking or running cadence. The app is available on Google Play (Android, BeatOnStep) and the App Store (iOS, BeatOnSteps).

Publisher: Rafael Orset — contact: BeatOnStep forum

2. Core principle: minimal data collection, no commercial tracking

BeatOnStep does not create user accounts, uses no advertising, and performs no commercial tracking or profiling. A very limited pseudonymous usage measurement may be sent to the BeatOnStep server solely to count how many personal playlists are imported per source (§ 3.9). No cadence (SPM), route data, playlist name or identifier, track, artist, or music-account identifier is included in this measurement.

Depending on the features you enable, the app may exchange data with services you choose (demo mix / music server, YouTube or Apple Music if connected, pasted Spotify or Deezer links, BPM analysis) or with technical infrastructure (updates). Details below.

3. Features and data flows

3.1 Local audio files (Phone music)

  • Files you import stay on your device.
  • Associated metadata (path, BPM, preferences) is stored locally only.
  • No audio file is sent off-device for cadence detection or local playback, unless you trigger server-side BPM analysis (§ 3.3).

3.2 Cadence detection (SPM)

  • The accelerometer is read on-device to estimate your step cadence.
  • These readings stay on the device by default and are not sent automatically. They may only be included in a diagnostic report if you explicitly choose Bug / feedback → Send (§ 3.11).
  • They are used solely for real-time app operation (selecting and playing music matched to your pace).

3.3 Demo mix and music server (optional)

The demo catalogue (278 royalty-free tracks) is hosted on a publisher server (https://beatonstep.tail09d8d8.ts.net/music).

  • This server is not a social network or public service: it serves only the demo catalogue.
  • No account creation, no advertising cookies, no marketing telemetry.
  • If you send an audio file for BPM analysis, it transits through the server for processing; it is not retained permanently or resold.

3.4 YouTube (optional)

If you connect a Google account to use YouTube in BeatOnStep:

  • Feature initiated by you; BeatOnStep does not provide a YouTube catalogue.
  • Secure Google sign-in; the publisher does not receive your Google password.
  • Access tokens are stored locally on the device and are never transmitted to the publisher or resold.
  • The app queries Google / YouTube APIs to display your playlists and metadata.
  • Playback happens in the YouTube or YouTube Music app (your choice in Settings) — not inside BeatOnStep.
  • You can disconnect YouTube in the app at any time: local tokens are deleted.
  • Your Google account remains governed by Google's policies.

3.5 Apple Music (optional)

If you connect an Apple account to use Apple Music in BeatOnStep:

  • Feature initiated by you; BeatOnStep does not provide an Apple Music catalogue.
  • Secure Apple sign-in; the publisher does not receive your Apple password.
  • Access tokens are stored locally on the device and are never transmitted to the publisher or resold.
  • The app queries Apple services to display your playlists and metadata (tracks, artists, BPM you enter or detect).
  • No audio files are cached by BeatOnStep; playback happens in the Apple Music app — not inside BeatOnStep.
  • An active Apple Music subscription is required to listen to the catalogue via Apple.
  • You can disconnect Apple Music in the app at any time: local tokens are deleted.
  • Your Apple account remains governed by Apple's policies.

iPhone: automatic playback in Apple Music; music can keep playing in the background while BeatOnStep runs.

Android: the Apple Music app (Google Play) must be installed; BeatOnStep opens the track in that app (no BeatOnStep built-in player).

3.6 Spotify (optional — Share links)

When you use Spotify in BeatOnStep:

  • Feature initiated by you: you paste the Share link of a track, or of a public playlist. BeatOnStep does not sign you into Spotify.
  • The app may query Spotify’s public catalogue to display the title. No Spotify password is requested or sent to the publisher.
  • IDs and metadata stay on the device.
  • Playback happens in the Spotify app — not inside BeatOnStep. A Spotify account (and, depending on the tracks, a subscription) may be required by Spotify.
  • A private playlist cannot be read without an official sign-in, which is not offered to the public for now.
  • BeatOnStep does not provide Spotify’s catalogue.

3.7 Deezer (optional — Share links)

When you use Deezer in BeatOnStep:

  • Feature initiated by you: you paste the Share link of a track, or of a public playlist. BeatOnStep does not sign you into Deezer.
  • The app may query Deezer’s public catalogue (title, duration, sometimes BPM). No Deezer password is requested or sent to the publisher.
  • IDs and metadata stay on the device.
  • Playback happens in the Deezer app — not inside BeatOnStep. A Deezer account (and, depending on the tracks, a subscription) may be required by Deezer.
  • A private playlist cannot be read without an official sign-in, which is not offered to the public for now.
  • BeatOnStep does not provide Deezer’s catalogue.

3.8 Updates (Expo OTA)

The app may contact Expo services to check for and download JavaScript updates linked to your installation. This is not an advertising SDK; no cadence or music library data is sent through this channel.

3.9 Pseudonymous measurement of imported playlist counts

To understand use of playlist imports and improve the product, BeatOnStep may occasionally send the publisher server a minimal snapshot containing: a random BeatOnStep installation identifier, platform (iOS / Android), app version, and the count of personal playlists still imported from Apple Music, YouTube, Spotify, and Deezer.

  • This measurement is used for product analytics: it helps us understand use of the import feature and guide BeatOnStep improvements.
  • This measurement contains no playlist name or playlist identifier, track, artist, OAuth token, music account, audio data, cadence (SPM), or route data.
  • The identifier is randomly generated by BeatOnStep. It is not an Apple, Google, Android, or music-provider identifier and contains no name, email address, or account identifier.
  • This identifier is used only to associate successive snapshots with the same BeatOnStep installation. It is not used to identify the person using the app.
  • Deletions are reflected: the next snapshot contains the number of playlists still present in the app.
  • Sending is limited: at most once per day after a change and, when unchanged, at most once every 7 days to measure active installations.
  • The server stores only the latest known snapshot per installation to produce aggregate product statistics; it does not keep a detailed history of each transmission. The IP address may be processed technically during the HTTPS connection but is not recorded in the measurement file.
  • These data are not sold, not used for advertising, not used for advertising tracking, and not combined with data from other companies for profiling.

3.10 Garmin and route shape (optional)

  • The Garmin watch uses its GPS as part of the recorded activity and may temporarily send BeatOnStep the positions needed for the run recap.
  • Raw GPS coordinates remain in memory only during the run: they are not persisted and are not sent to the BeatOnStep server.
  • BeatOnStep may locally keep a simplified relative route shape, with no latitude or longitude, for the recap and share visuals.
  • Only this non-geographic relative shape may be included in a story; raw GPS coordinates are never included in the share URL.

3.11 Voluntary Bug / feedback diagnostic report

If you use the Bug / feedback button in Settings, BeatOnStep shows a message field and requires an explicit action before any transmission. If you choose Send, the app sends the same technical report that you can manually share by tapping the app version, together with the message you typed.

This report may include:

  • app version, build, runtime and technical delivery information;
  • recent diagnostic events related to BeatOnStep operation;
  • recent SPM diagnostics, which may contain accelerometer samples and calculated cadence;
  • technical states for Garmin / Apple Watch and music integrations, for example availability, playback states, errors, and technical track or device identifiers when already present in the diagnostic;
  • the pseudonymous BeatOnStep installation identifier, platform and app version.

Sending is strictly user-initiated: no Bug / feedback diagnostic report is transmitted automatically. No password, OAuth token, or music file is included.

The server uses the report only for technical support and incident diagnosis. Small reports may be included directly in the support email; larger reports may be attached as a text file. The private support recipient email address is configured only on the server and is not exposed in the app.

4. Permissions

Android

PermissionPurpose
HIGH_SAMPLING_RATE_SENSORSRead the accelerometer at high frequency to detect step cadence (SPM).
FOREGROUND_SERVICEKeep music playback and cadence detection running in the background (locked screen).
WAKE_LOCKPrevent the sensor from sleeping during a session.

iOS (App Store)

BeatOnStep requests access only to motion sensors (accelerometer) for cadence detection. On iOS, this is handled by the native framework without an explicit user-facing permission prompt.

Access to the media library (Phone music) triggers a standard system permission request when you import music from your device.

The BeatOnStep mobile app requests no phone GPS location permission. If you use the BeatOnStep Garmin app, the watch may use its own positioning permission to record the activity and provide the relative route shape described in § 3.10. BeatOnStep does not access your contacts, camera, or microphone.

5. Locally stored data

On your device, in the app's private storage:

  • Imported library (paths, BPM, enabled sources).
  • Preferences (mode, target ranges, settings, language).
  • YouTube and Apple Music connection tokens (if connected).
  • Spotify tracks or public playlists whose links you pasted (ID, title, entered or detected BPM) — no Spotify account token.
  • Deezer tracks or public playlists whose links you pasted (ID, metadata, BPM entered, detected, or provided by Deezer) — no Deezer account token.
  • Random BeatOnStep installation identifier and the last local state used for playlist-count measurement (§ 3.9).
  • Simplified relative shape of the latest Garmin route used for the recap/story, when available (§ 3.10) — without raw GPS coordinates.

Uninstalling the app removes this data. Disconnecting a service (YouTube, Apple Music) deletes the corresponding tokens without uninstalling the app.

6. Third-party services

ServiceWhenWhat transits
Google / YouTubeIf you connect YouTubeGoogle sign-in; playlist / metadata API requests
Apple / Apple MusicIf you connect Apple MusicApple sign-in; playlist metadata
Apple (App Store)iOS distributionManaged by Apple under their own terms
ExpoAutomaticOTA update verification / download
BeatOnStep serverCatalogue / BPM analysis, pseudonymous usage measurement, and voluntary supportTrack list; optional audio file for BPM analysis; aggregate playlist counts by source + random installation identifier (§ 3.9); technical Bug / feedback report only after explicit action (§ 3.11)
SpotifyIf you paste a Share linkPublic catalogue request (title); opening in the Spotify app. No account sign-in
DeezerIf you paste a Share linkPublic catalogue request (title / duration / sometimes BPM); opening in the Deezer app. No account sign-in
Garmin Connect IQIf you pair a Garmin watch and use BeatOnStep during a runCadence and run metrics; transient raw GPS positions watch → phone only to locally produce a relative route shape (§ 3.10)

No advertising SDK, no marketing audience measurement, no integrated social network beyond the connection to services you choose.

7. Children

The app is not directed at children under 13 (16 in the EU) and does not knowingly collect data from them.

8. Your privacy choices and rights (GDPR / privacy)

BeatOnStep does not use advertising tracking, so there is no advertising-consent setting to manage. You can manage local data directly in the app, disconnect the relevant music services, or uninstall the app, which stops future transmissions of the pseudonymous measurement described in § 3.9.

The server-side measurement contains no name, email address, or BeatOnStep account that would allow the publisher to directly associate a snapshot with your identity. For questions about this measurement or your privacy rights, use the BeatOnStep forum listed below.

  • Local data (library, settings, tokens): you control it directly in the app or by uninstalling.
  • Google / YouTube account: exercise your rights with Google under their procedures.
  • Apple / Apple Music account: exercise your rights with Apple under their procedures.
  • Spotify: no BeatOnStep account linked to Spotify; pasted links stay on the device. For your Spotify account, exercise your rights with Spotify.
  • Deezer: no BeatOnStep account linked to Deezer; pasted links stay on the device. For your Deezer account, exercise your rights with Deezer.
  • BeatOnStep server: no user account. The pseudonymous playlist measurement keeps only the latest known state per installation, with no detailed transmission history. Bug / feedback reports are sent only at your request for technical support (§ 3.11); for any question about these data, use the forum.

9. Changes

This policy may be updated. The date at the top reflects the latest revision. The current version is available at the address listed on Google Play and in the app (Settings → About):

https://rafa-create.github.io/beatonstep-website/privacy.html

10. Contact


11. Music credits (demo mix catalogue)

The "Demo mix" catalogue consists exclusively of royalty-free tracks under Creative Commons Attribution 4.0 International (CC-BY 4.0) (commercial use allowed with attribution).

Artists (sources):

BPM values are measured server-side (librosa.beat.beat_track, confidence threshold ≥ 0.77). They may differ slightly from author-published BPM values.

Full track list (required for CC-BY attribution): Music credits — Demo mix