Add short readme
This commit is contained in:
parent
03469446e1
commit
29d38f3ad6
@ -122,6 +122,7 @@
|
|||||||
E2D82B4C2BCD5F780075EAF0 /* SymptomsList.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SymptomsList.swift; sourceTree = "<group>"; };
|
E2D82B4C2BCD5F780075EAF0 /* SymptomsList.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SymptomsList.swift; sourceTree = "<group>"; };
|
||||||
E2D82B4E2BCD61590075EAF0 /* VitalsList.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = VitalsList.swift; sourceTree = "<group>"; };
|
E2D82B4E2BCD61590075EAF0 /* VitalsList.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = VitalsList.swift; sourceTree = "<group>"; };
|
||||||
E2D82B502BCD626D0075EAF0 /* OtherSamplesList.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OtherSamplesList.swift; sourceTree = "<group>"; };
|
E2D82B502BCD626D0075EAF0 /* OtherSamplesList.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OtherSamplesList.swift; sourceTree = "<group>"; };
|
||||||
|
E2D82B522BCD6CC10075EAF0 /* README.md */ = {isa = PBXFileReference; lastKnownFileType = net.daringfireball.markdown; path = README.md; sourceTree = "<group>"; };
|
||||||
E2E552882BA2194400BF5E9B /* DatabasesTab.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DatabasesTab.swift; sourceTree = "<group>"; };
|
E2E552882BA2194400BF5E9B /* DatabasesTab.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DatabasesTab.swift; sourceTree = "<group>"; };
|
||||||
E2E5528B2BA21C0700BF5E9B /* Database.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Database.swift; sourceTree = "<group>"; };
|
E2E5528B2BA21C0700BF5E9B /* Database.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Database.swift; sourceTree = "<group>"; };
|
||||||
E2E5528D2BA21C5900BF5E9B /* FileManager+Directory.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "FileManager+Directory.swift"; sourceTree = "<group>"; };
|
E2E5528D2BA21C5900BF5E9B /* FileManager+Directory.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "FileManager+Directory.swift"; sourceTree = "<group>"; };
|
||||||
@ -168,6 +169,7 @@
|
|||||||
8850024E2B5C273C00E7D4DB = {
|
8850024E2B5C273C00E7D4DB = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
|
E2D82B522BCD6CC10075EAF0 /* README.md */,
|
||||||
885002592B5C273C00E7D4DB /* HealthImport */,
|
885002592B5C273C00E7D4DB /* HealthImport */,
|
||||||
885002582B5C273C00E7D4DB /* Products */,
|
885002582B5C273C00E7D4DB /* Products */,
|
||||||
E2E5529C2BA47BA600BF5E9B /* Frameworks */,
|
E2E5529C2BA47BA600BF5E9B /* Frameworks */,
|
||||||
|
41
README.md
Normal file
41
README.md
Normal file
@ -0,0 +1,41 @@
|
|||||||
|
# HealthImport
|
||||||
|
|
||||||
|
This iOS app is a prototype to open the raw databases containing Apple Health data. These `healthdb_secure.sqlite` files can be extracted from (encrypted ) iOS Backups.
|
||||||
|
The structure of the database has been reverse-engineered so that most health data can be viewed and extracted.
|
||||||
|
|
||||||
|
This app is a front-end for [HealthDB](https://github.com/christophhagen/healthdb), which provides the interface to access the database files.
|
||||||
|
|
||||||
|
## Features
|
||||||
|
|
||||||
|
HealthImport offers a view basic features to view and extract health data, mostly centered around workouts.
|
||||||
|
|
||||||
|
### Managing databases
|
||||||
|
|
||||||
|
Multiple databases can be imported into the app.
|
||||||
|
The databases can be renamed and a default database can be selected.
|
||||||
|
One database can be opened at a time, so that the contents can be viewed.
|
||||||
|
|
||||||
|
### Workouts
|
||||||
|
|
||||||
|
The existing workouts contained in each database can be viewed in the "Workouts" tab.
|
||||||
|
The interface has been designed to be similar to the Apple Fitness app.
|
||||||
|
|
||||||
|
A filter allows selecting only those workouts of a specific activity type, and the details of a workout can be viewed.
|
||||||
|
It shows the workout route, heart rate, and statistics for each workout.
|
||||||
|
|
||||||
|
If the app has the required permissions then it also checks if a similar workout already exists on the phone, and can add missing workouts from the database to `Health`.
|
||||||
|
This feature is useful to restore workouts that have been deleted from an existing backup.
|
||||||
|
|
||||||
|
### Samples
|
||||||
|
|
||||||
|
The tab "Health" is structured similar to the Apple Health app, and allows to view different samples stored in the database.
|
||||||
|
Each supported type can be searched by start and end date, and shows a simple list of the samples found.
|
||||||
|
|
||||||
|
## Roadmap
|
||||||
|
|
||||||
|
In the future, additional features are envisioned:
|
||||||
|
|
||||||
|
- View most recent samples, similar to the Apple Health app
|
||||||
|
- Support viewing special sample types, like ECGs
|
||||||
|
- Show details for samples, and allow adding them to Apple Health
|
||||||
|
- Support more filtering options to find samples
|
Loading…
Reference in New Issue
Block a user