Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

[preferences] Sync Preferences over iCloud for iOS

Open
#2,308 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
35/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Stale
Tech stack
ios, swift
Domain
mobile

Research direction

Start with the @capacitor/preferences plugin and the NSUbiquitousKeyValueStore API described in the issue, then review the linked Apple documentation and tutorial. Define the behavior for keys with a specific prefix on iOS and clarify the scope for other Apple or Android platforms; done means the selected preferences sync between the user's devices.

Written by the indexing model from the issue text.

Description

platform: ios

Feature Request

Plugin

@capacitor/preferences

Description

The @capacitor/preferences plugin currently uses UserDefaults on iOS, which is great, as the preferences are stored locally and included in backups. However, the preferences are not synced between user's devices. Even though for most preferences it would probably make sense to sync them for all the user's devices.

Platform(s)

iOS (and all Apple platforms): via NSUbiquitousKeyValueStore: https://developer.apple.com/documentation/foundation/userdefaults
Android: probably has some equivalent?

Preferred Solution

iOS: add support for syncing keys with a specific prefix with NSUbiquitousKeyValueStore: https://developer.apple.com/documentation/foundation/nsubiquitouskeyvaluestore
Tutorial I found: https://www.answertopia.com/ios/synchronizing-ios-key-value-data-using-icloud/

Alternatives

Implement this as a native plugin myself. I would probably do for NSUbiquitousKeyValueStore for iOS, since that's the Apple-approved way to sync preferences between user's devices.

Additional Context

nA

Dominant language
Java
Stars
682
Forks
689
Avg merge
5d 11h
Merged PRs (30d)
3

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from ionic-team/capacitor-plugins

All issues in ionic-team/capacitor-plugins

Similar issues

More Java issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.