Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 12 additions & 12 deletions Driveline.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -869,14 +869,14 @@
CODE_SIGN_ENTITLEMENTS = Driveline/Driveline.entitlements;
CODE_SIGN_IDENTITY = "Apple Development";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 27;
CURRENT_PROJECT_VERSION = 28;
DEVELOPMENT_TEAM = 4U6275HKV3;
ENABLE_PREVIEWS = YES;
ENABLE_USER_SCRIPT_SANDBOXING = NO;
GENERATE_INFOPLIST_FILE = YES;
INFOPLIST_FILE = Driveline/Info.plist;
INFOPLIST_KEY_CFBundleDisplayName = Driveline;
INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.travel";
INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.navigation";
INFOPLIST_KEY_NSLocationAlwaysAndWhenInUseUsageDescription = "Driveline supports recording your drives even when the app is in the background";
INFOPLIST_KEY_NSLocationWhenInUseUsageDescription = "Driveline requires your location to record your drives";
INFOPLIST_KEY_NSSupportsLiveActivities = YES;
Expand Down Expand Up @@ -917,14 +917,14 @@
CODE_SIGN_ENTITLEMENTS = Driveline/Driveline.entitlements;
CODE_SIGN_IDENTITY = "Apple Development";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 27;
CURRENT_PROJECT_VERSION = 28;
DEVELOPMENT_TEAM = 4U6275HKV3;
ENABLE_PREVIEWS = YES;
ENABLE_USER_SCRIPT_SANDBOXING = NO;
GENERATE_INFOPLIST_FILE = YES;
INFOPLIST_FILE = Driveline/Info.plist;
INFOPLIST_KEY_CFBundleDisplayName = Driveline;
INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.travel";
INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.navigation";
INFOPLIST_KEY_NSLocationAlwaysAndWhenInUseUsageDescription = "Driveline supports recording your drives even when the app is in the background";
INFOPLIST_KEY_NSLocationWhenInUseUsageDescription = "Driveline requires your location to record your drives";
INFOPLIST_KEY_NSSupportsLiveActivities = YES;
Expand Down Expand Up @@ -961,7 +961,7 @@
buildSettings = {
BUNDLE_LOADER = "$(TEST_HOST)";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 27;
CURRENT_PROJECT_VERSION = 28;
DEVELOPMENT_TEAM = 4U6275HKV3;
GENERATE_INFOPLIST_FILE = YES;
IPHONEOS_DEPLOYMENT_TARGET = 26.0;
Expand All @@ -986,7 +986,7 @@
buildSettings = {
BUNDLE_LOADER = "$(TEST_HOST)";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 27;
CURRENT_PROJECT_VERSION = 28;
DEVELOPMENT_TEAM = 4U6275HKV3;
GENERATE_INFOPLIST_FILE = YES;
IPHONEOS_DEPLOYMENT_TARGET = 26.0;
Expand All @@ -1010,7 +1010,7 @@
isa = XCBuildConfiguration;
buildSettings = {
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 27;
CURRENT_PROJECT_VERSION = 28;
DEVELOPMENT_TEAM = 4U6275HKV3;
GENERATE_INFOPLIST_FILE = YES;
IPHONEOS_DEPLOYMENT_TARGET = 26.0;
Expand All @@ -1034,7 +1034,7 @@
isa = XCBuildConfiguration;
buildSettings = {
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 27;
CURRENT_PROJECT_VERSION = 28;
DEVELOPMENT_TEAM = 4U6275HKV3;
GENERATE_INFOPLIST_FILE = YES;
IPHONEOS_DEPLOYMENT_TARGET = 26.0;
Expand All @@ -1061,7 +1061,7 @@
ASSETCATALOG_COMPILER_WIDGET_BACKGROUND_COLOR_NAME = WidgetBackground;
CODE_SIGN_IDENTITY = "Apple Development";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 27;
CURRENT_PROJECT_VERSION = 28;
DEVELOPMENT_TEAM = 4U6275HKV3;
GENERATE_INFOPLIST_FILE = YES;
INFOPLIST_FILE = DriveWidgetExtension/Info.plist;
Expand Down Expand Up @@ -1096,7 +1096,7 @@
ASSETCATALOG_COMPILER_WIDGET_BACKGROUND_COLOR_NAME = WidgetBackground;
CODE_SIGN_IDENTITY = "Apple Development";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 27;
CURRENT_PROJECT_VERSION = 28;
DEVELOPMENT_TEAM = 4U6275HKV3;
GENERATE_INFOPLIST_FILE = YES;
INFOPLIST_FILE = DriveWidgetExtension/Info.plist;
Expand Down Expand Up @@ -1129,7 +1129,7 @@
buildSettings = {
BUNDLE_LOADER = "$(TEST_HOST)";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 27;
CURRENT_PROJECT_VERSION = 28;
DEVELOPMENT_TEAM = 4U6275HKV3;
GENERATE_INFOPLIST_FILE = YES;
IPHONEOS_DEPLOYMENT_TARGET = 26.0;
Expand All @@ -1154,7 +1154,7 @@
buildSettings = {
BUNDLE_LOADER = "$(TEST_HOST)";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 27;
CURRENT_PROJECT_VERSION = 28;
DEVELOPMENT_TEAM = 4U6275HKV3;
GENERATE_INFOPLIST_FILE = YES;
IPHONEOS_DEPLOYMENT_TARGET = 26.0;
Expand Down
112 changes: 112 additions & 0 deletions privacy-policy.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,112 @@
# Privacy Policy

**Driveline** · Last updated: 22 June 2026

> **The short version:** Driveline records your drives — GPS route, distance, duration, weather, and place names. All of that data lives on your device and, if you choose, in your personal iCloud account. We do not collect it, sell it, or share it with any third parties for advertising or analytics.

---

## 1. Who We Are

Driveline is developed and published by Damien Glancy ("we", "us", "our"). If you have any questions about this policy, you can reach us at [damien.and.rose@icloud.com](mailto:damien.and.rose@icloud.com).

---

## 2. What Data Driveline Collects

Driveline collects only the information it needs to record and display your drives.

### Location Data

When you start a drive, Driveline records your GPS coordinates, speed, and timestamp at regular intervals. This continues in the background until you stop the drive. Location data is used solely to draw your route on a map, calculate distance, and determine place names for your start and end points.

### Drive Metadata

For each drive, Driveline stores:

- Start and end time
- Total distance
- A name (auto-generated from place names, or one you set yourself)
- Category (e.g. Errand, Road Trip — set by you or suggested automatically)
- How the recording was started (manually or via automation)

### Place Names

To generate human-readable start and end location names, Driveline sends your GPS coordinates to Apple's Maps reverse-geocoding service. Apple's own privacy policy governs how Apple handles this request. The resulting place name (e.g. "Kensington, London") is stored on your device.

### Weather

Driveline fetches current weather conditions at the start and end of your drive using Apple WeatherKit. To do this, your GPS coordinates are sent to Apple's WeatherKit service. Apple's privacy policy governs that request. The resulting weather data (temperature and condition) is stored on your device alongside the drive.

### App Preferences

Your in-app settings (e.g. preferred map appearance, route line width) are stored locally on your device using standard iOS storage and are never transmitted.

### Performance Diagnostics

Driveline uses Apple's MetricKit framework to receive anonymised, on-device performance reports (such as hang rates and crash diagnostics). These reports are provided by iOS itself and are not transmitted to us. We use them only to identify and fix technical issues within the app.

---

## 3. How Your Data Is Stored

All drive data is stored locally on your device using Apple's SwiftData framework.

If you have iCloud enabled for Driveline, your data is also synced to your personal iCloud account via CloudKit. Your iCloud data is encrypted and accessible only to you. We do not have access to your iCloud account or the data it contains.

---

## 4. Data We Do Not Collect

To be explicit about what Driveline does *not* do:

- We do not collect or transmit your location data to our own servers.
- We do not use any third-party analytics or advertising SDKs.
- We do not track you across apps or websites.
- We do not collect your name, email address, or any account information.
- We do not access your contacts, photos, camera, or microphone.

---

## 5. Data Sharing

We do not sell, rent, or share your personal data with any third parties, except as described below:

- **Apple Maps (Geocoding):** GPS coordinates are sent to Apple to reverse-geocode place names. See [Apple's Privacy Policy](https://www.apple.com/legal/privacy/).
- **Apple WeatherKit:** GPS coordinates are sent to Apple to fetch weather data. See [Apple's Privacy Policy](https://www.apple.com/legal/privacy/).
- **Apple iCloud / CloudKit:** If iCloud sync is enabled, your drive data is stored in your personal iCloud account. See [Apple's Privacy Policy](https://www.apple.com/legal/privacy/).
- **Legal requirements:** We may disclose information if required to do so by law or in response to valid legal requests.

---

## 6. Exports

Driveline allows you to export your drive routes as GPX files. When you choose to export and share a file, you are in full control of where that file is sent. Driveline does not automatically send exports anywhere.

---

## 7. Data Retention and Deletion

Your drive data is retained on your device and in iCloud for as long as you choose to keep it. You can delete individual drives, or all data, at any time within the app. Deleting the app from your device removes all locally stored data. If iCloud sync is enabled, you can delete your iCloud data through your device's iCloud settings.

---

## 8. Children's Privacy

Driveline is not directed at children under the age of 13. We do not knowingly collect personal information from children. If you believe a child has provided information through the app, please contact us and we will take steps to address it.

---

## 9. Changes to This Policy

We may update this privacy policy from time to time. When we do, we will update the "Last updated" date at the top of this page. We encourage you to review this policy periodically. Continued use of the app after changes are posted constitutes your acceptance of the updated policy.

---

## 10. Contact

If you have any questions or concerns about this privacy policy or how your data is handled, please contact us at [damien.and.rose@icloud.com](mailto:damien.and.rose@icloud.com).

---

© 2026 Damien Glancy. All rights reserved.
Loading