About this policy
Dry Fire Practice is an iPhone app by Morten Teinum. This policy
describes the app and this website. Contact
morten@teinum.no with
privacy questions.
The app works without an account. Your training log is stored
locally. In-app ads, optional analytics and app-install
advertising measurement are described separately below.
Features depend on your installed app version; older versions
may not include all the services described here.
Your training data
The app stores sessions, repetition counts and timings, session
ratings, streaks and progress summaries, safety acknowledgement,
preferences, consent choices and click detection profiles on
your device.
It does not provide a server account or sync your training log
to an app server. If you allow analytics, limited usage events
may include your chosen discipline and drill, target repetition
count, completion status, input mode and grouped session
duration or repetition counts. This is described below; it is
separate from storing your full training log.
Optional analytics and ad measurement
Off until you choose to allow it. The app asks
for analytics consent during setup. If you allow it, the app
enables TelemetryDeck for product analytics and Meta App Events
to measure app usage and app-install advertising.
Events can include onboarding steps, session starts and
completions, settings changes, paywall views and purchase
outcomes. They may include app and device information, drill and
discipline identifiers, target repetition counts, grouped
duration and repetition counts, and whether counting was manual
or detected. The app does not add your name, email address,
audio recordings or full session log to these events.
Apple’s tracking permission is a separate choice.
After app analytics consent, the app requests tracking
permission if iOS has not already recorded your choice, then
configures Meta. The app enables Meta’s collection of the device
advertising ID only when Apple’s tracking permission is
authorised. Meta app-event measurement can still operate without
that ID when app analytics consent is enabled.
TelemetryDeck and Meta process event data under their own
policies. Read
TelemetryDeck’s privacy policy
and
Meta’s privacy policy
for their data handling, retention and international processing.
Turn off Analytics and ad measurement in Profile
(called Anonymous analytics in older versions)
to stop new app analytics signals and disable Meta automatic
app-event logging and advertising-ID collection configured by
the app. You can also manage Apple’s permission in
iOS Settings → Privacy & Security → Tracking.
Apple explains these tracking controls. Turning consent off does not erase events already sent.
Ads in the free version
The free version can show Google AdMob banner ads on the main
tabs. Ads are not shown during training, onboarding or session
rating. Dryfire Pro removes these ads. The app checks your Pro
purchase before requesting ads.
Google’s User Messaging Platform collects ad privacy choices
where required before ads are requested. When available, use
Ad privacy options in Profile to review or
change your choices, including withdrawing consent. This is
separate from the optional analytics and Meta measurement
switch above. Turning off analytics does not turn off ads or
change your ad consent.
The app requests non-personalised ads and disables Google’s
publisher first-party ID. Non-personalised ads still involve
data processing: Google may process IP addresses (including
approximate location), device identifiers, ad impressions and
interactions, crash logs and performance information for
advertising, measurement and fraud prevention. Device storage
or identifiers may still be used to limit how often you see an
ad and measure ad delivery, subject to applicable consent and
platform permissions.
The app does not send training logs, click profiles or
microphone audio to AdMob. Google and its advertising partners
may process ad-related data under their own policies, including
their retention and international processing practices. Read
Google’s privacy policy,
how Google uses information for advertising and
Google Mobile Ads data disclosures.
Microphone and calibration
Optional Pro click detection needs your microphone permission.
Audio is analysed on your device during detection and
calibration. Calibration can temporarily hold local audio for
waveform analysis; the app does not upload audio or use it for
advertising or analytics.
Saved click profiles contain detection settings and acoustic
features, rather than a cloud audio library. You can practise
manually without microphone access and change microphone
permission in iOS Settings. The app does not request camera or
iOS location access, score targets or connect to external
training hardware. Ad services may infer approximate location
from your IP address as described above.
Reminders
If you enable reminders, iOS asks for notification permission.
The app schedules a local daily reminder on your device. Manage
reminders in Profile or notification permissions in iOS
Settings.
App Store purchases
Dryfire Pro is a one-time in-app purchase processed by Apple.
The app checks StoreKit entitlements to unlock Pro and restore
purchases. It does not receive your payment-card details.
Purchase-related usage events can be sent when you have allowed
analytics.
Apple handles App Store transactions under
Apple’s privacy policy.
This website and support email
These Dry Fire Practice pages contain no analytics scripts,
advertising pixels or tracking cookies. The dedicated website at
dryfire.teinum.no serves its own images and styles. This older
teinum.no page also loads a stylesheet and fonts from Google Fonts;
Google’s privacy policy
applies to those requests. Hosting may generate standard access
and security logs, including IP addresses, requested pages and
browser information.
App Store links include campaign parameters so Apple can
attribute visits to the campaign. Clicking an external link
takes you to that provider’s service and privacy policy.
If you email support, your email address and the information you
choose to share are used to respond to your request. Avoid
sending passwords, payment details or unnecessary personal
information.
Backups, deletion and your choices
Deleting the app removes its local app data according to normal
iOS behaviour. Device backups may include app data depending on
your Apple settings, and restoring a backup may restore it.
Removing the app does not delete purchases held by Apple or
analytics events already sent.
You can decline optional analytics, turn it off later, manage
iOS permissions and use manual practice. For access, correction,
deletion or other privacy requests about data handled by Morten
Teinum, email
morten@teinum.no. Some
data may be held by Apple, Google, TelemetryDeck or Meta under
their own policies; locally stored training data is not
accessible to us through a server account.
Changes to this policy
This page will be updated when the app’s data practices change,
with a revised date. Screenshots on the website may preview a
newer app version; the features available on your device depend
on the version you have installed.