Get VIP
Photos Backup

Photos Backup

By g8row

Install with VIP

Description

An experimental, fully on-device iPhone app for backing up selected photos, videos, and albums to Google Photos. It is a single SwiftUI app that completes Google account setup in an in-app web view, so everything happens on the phone without a desktop companion or hosted service.

Warning: This project uses Google's private, undocumented Photos endpoints and an Android-style authentication flow. It is not affiliated with or endorsed by Google, and the integration may stop working without notice. Treat it as experimental software and use it at your own risk.

What it can do
• Connect a Google account through Google's EmbeddedSetup flow, in an in-app web view.
• Capture the single-use oauth_token in-process from the web view's cookie store.
• Exchange the token for a Google Photos credential entirely on the device.
• Select albums from the local Photos library.
• Queue individual photos, videos, or all items in selected albums.
• Show hashing, duplicate-check, upload, and finalization progress per item.
• Avoid re-uploading media already present in Google Photos.
• Retry transient failures, cancel work, and resume after reconnecting.
• Restore pending album uploads after an app restart and remember completed library assets per Google account.
• Upload in original quality or request Google's Storage Saver processing.
• Enforce Wi-Fi-only or Wi-Fi-and-cellular policy both at queue and request level.
• Request recurring iOS background-processing windows for selected-album backup.
• Store usable long-lived credentials in the iOS Keychain when signing permits.

Change Log

New
• Runs on iOS 15. The minimum is now iOS 15.0 (was 16.0) — the iOS 16-only SwiftUI pieces were replaced with iOS 15-compatible equivalents (a UIKit - PHPickerViewController for photo selection, NavigationView, and small shims). Confirmed working on real iOS 15 hardware.
• "All Photos" album. A new album pinned to the top of the Albums list backs up your entire photo library (images + videos). Selecting it alongside other albums is safe — nothing uploads twice.
• "Folders" is now "Albums" throughout the app (tab, titles, and copy), matching what the app actually works with.

Unchanged from 0.1.0
• In-app WKWebView account connection (no Safari extension). The EmbeddedSetup page may spin after I agree — expected; the app captures the token and closes the window itself.

Version

0.2.0

Last Updated

September 8, 2026

Photos Backup