New in version 0.3.0
Cairn now requires Android 14 or newer. Health Connect is part of the system
only from Android 14; below that it is a separate Google app from the Play
Store, which a Play-less device cannot install — so the app could not read
anything there.
Fixed: on a phone without Health Connect, Refresh and Sync now report it
instead of spinning forever. Nextcloud connection and sync errors are shown in
German in the German app. Sleep totals no longer count time you were awake, and
the per-stage breakdown
Cairn reads your health and fitness data from the phone's health store — Apple
Health on iOS, Health Connect on Android — and saves it as plain, open-format
files (Open mHealth / IEEE 1752.1 JSON) in your own Nextcloud. You stay the sole
owner of your data: there is no central server and the developer stores nothing.
Requirements:
* Android 14 or newer. Cairn reads through Health Connect, which is part of the
system only from Android 14; on Android 8-13 it is a separate Google app from
the Play Store, which a Play-less device cannot install — so the app would
find nothing to read.
* A Nextcloud of your own is optional: without one, Cairn still reads and shows
your data, it just keeps the files on the phone.
Features:
* Reads heart rate, steps, body weight, sleep and workouts — read-only. Cairn
never writes to your health store.
* Syncs the files to your own Nextcloud over WebDAV, with optional background
sync.
* In-app dashboard with a sleep-stage deep-dive and a BMI computed from your
latest weight.
* Available in English and German.
Privacy:
* No advertising, no analytics, no trackers, no third-party services.
* Your data lives only on your device and in the Nextcloud you control — never
in any developer or third-party cloud.
* HTTPS only. The Nextcloud app password is stored in the operating system's
secure storage and can be revoked at any time.
Cairn is an aggregator and viewer, not a medical device. It makes no diagnostic
or treatment claims.
Versions
Although APK downloads are available below to give you the choice, you should be aware that by installing that way you will not receive update notifications and it's a less secure way to download. We recommend that you install the F-Droid client and use that.
Download F-Droid
-
x86_64
This version requires Android 14 or newer.
It is built and signed by the original developer, and guaranteed to correspond to this source tarball.
Permissions
-
view network connections
Allows the app to view information about network connections such as which networks exist and are connected.
-
recognize physical activity
This app can recognize your physical activity.
-
run foreground service
Allows the app to make use of foreground services.
-
have full network access
Allows the app to create network sockets and use custom network protocols. The browser and other applications provide means to send data to the internet, so this permission is not required to send data to the internet.
-
show notifications
Allows the app to show notifications
-
run at startup
Allows the app to have itself started as soon as the system has finished booting. This can make it take longer to start the phone and allow the app to slow down the overall phone by always running.
-
prevent phone from sleeping
Allows the app to prevent the phone from going to sleep.
-
android.permission.health.READ_ACTIVE_CALORIES_BURNED
-
android.permission.health.READ_DISTANCE
-
android.permission.health.READ_EXERCISE
-
android.permission.health.READ_HEALTH_DATA_IN_BACKGROUND
-
android.permission.health.READ_HEART_RATE
-
android.permission.health.READ_SLEEP
-
android.permission.health.READ_STEPS
-
android.permission.health.READ_TOTAL_CALORIES_BURNED
-
android.permission.health.READ_WEIGHT
-
com.luminaapps.cairn.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION
Download APK
21 MiB
PGP Signature
|
Build Log
-
arm64-v8a
This version requires Android 14 or newer.
It is built and signed by the original developer, and guaranteed to correspond to this source tarball.
Permissions
-
view network connections
Allows the app to view information about network connections such as which networks exist and are connected.
-
recognize physical activity
This app can recognize your physical activity.
-
run foreground service
Allows the app to make use of foreground services.
-
have full network access
Allows the app to create network sockets and use custom network protocols. The browser and other applications provide means to send data to the internet, so this permission is not required to send data to the internet.
-
show notifications
Allows the app to show notifications
-
run at startup
Allows the app to have itself started as soon as the system has finished booting. This can make it take longer to start the phone and allow the app to slow down the overall phone by always running.
-
prevent phone from sleeping
Allows the app to prevent the phone from going to sleep.
-
android.permission.health.READ_ACTIVE_CALORIES_BURNED
-
android.permission.health.READ_DISTANCE
-
android.permission.health.READ_EXERCISE
-
android.permission.health.READ_HEALTH_DATA_IN_BACKGROUND
-
android.permission.health.READ_HEART_RATE
-
android.permission.health.READ_SLEEP
-
android.permission.health.READ_STEPS
-
android.permission.health.READ_TOTAL_CALORIES_BURNED
-
android.permission.health.READ_WEIGHT
-
com.luminaapps.cairn.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION
Download APK
19 MiB
PGP Signature
|
Build Log
-
armeabi-v7a
This version requires Android 14 or newer.
It is built and signed by the original developer, and guaranteed to correspond to this source tarball.
Permissions
-
view network connections
Allows the app to view information about network connections such as which networks exist and are connected.
-
recognize physical activity
This app can recognize your physical activity.
-
run foreground service
Allows the app to make use of foreground services.
-
have full network access
Allows the app to create network sockets and use custom network protocols. The browser and other applications provide means to send data to the internet, so this permission is not required to send data to the internet.
-
show notifications
Allows the app to show notifications
-
run at startup
Allows the app to have itself started as soon as the system has finished booting. This can make it take longer to start the phone and allow the app to slow down the overall phone by always running.
-
prevent phone from sleeping
Allows the app to prevent the phone from going to sleep.
-
android.permission.health.READ_ACTIVE_CALORIES_BURNED
-
android.permission.health.READ_DISTANCE
-
android.permission.health.READ_EXERCISE
-
android.permission.health.READ_HEALTH_DATA_IN_BACKGROUND
-
android.permission.health.READ_HEART_RATE
-
android.permission.health.READ_SLEEP
-
android.permission.health.READ_STEPS
-
android.permission.health.READ_TOTAL_CALORIES_BURNED
-
android.permission.health.READ_WEIGHT
-
com.luminaapps.cairn.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION
Download APK
17 MiB
PGP Signature
|
Build Log