fix: align AutoFill keychain-access-group with main app, lowercase bundle IDs
Root-caused the "MyPass doesn't appear in Settings > AutoFill Passwords" issue: entitlements embed correctly on a real device build but are silently stripped to empty on every Simulator build in this environment (confirmed identically via CLI xcodebuild and Xcode's own GUI build/run, before and after multiple rounds of removing/re-adding capabilities in Signing & Capabilities). This is a Simulator/SDK-level limitation in this environment, not a project misconfiguration -- verified by comparing against a real iphoneos device build, which embeds the full App Group / Keychain Sharing / AutoFill Credential Provider entitlements correctly. While diagnosing, found and fixed a real, separate bug: AutoFill's Keychain Sharing group had been set (via Xcode's capability re-add flow, which defaults to the target's own bundle ID) to org.antiloop222.mypass.autofill, while the main app uses org.antiloop222.mypass -- a mismatch that would have prevented the extension from ever reading the shared master password from Keychain, even on a real device where entitlements embed correctly. Now aligned to org.antiloop222.mypass on both targets, matching what KeychainStore's hardcoded accessGroup expects in both AutoFill/ CredentialProviderViewController.swift and MyPass/ViewModels/ UnlockViewModel.swift. Also includes the user's own Signing & Capabilities re-add (repopulated App Group selections) and a bundle-identifier lowercase normalization (org.antiloop222.MyPass -> org.antiloop222.mypass, matching the already-lowercase App Group/Keychain group strings) made via Xcode's GUI. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01WYqycDFsynHH9VnnK7LNSf
This commit is contained in:
@@ -1,16 +1,16 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>com.apple.developer.authentication-services.autofill-credential-provider</key>
|
||||
<true/>
|
||||
<key>com.apple.security.application-groups</key>
|
||||
<array>
|
||||
<string>group.org.antiloop222.mypass</string>
|
||||
</array>
|
||||
<key>keychain-access-groups</key>
|
||||
<array>
|
||||
<string>$(AppIdentifierPrefix)org.antiloop222.mypass</string>
|
||||
</array>
|
||||
</dict>
|
||||
<dict>
|
||||
<key>com.apple.developer.authentication-services.autofill-credential-provider</key>
|
||||
<true/>
|
||||
<key>com.apple.security.application-groups</key>
|
||||
<array>
|
||||
<string>group.org.antiloop222.mypass</string>
|
||||
</array>
|
||||
<key>keychain-access-groups</key>
|
||||
<array>
|
||||
<string>$(AppIdentifierPrefix)org.antiloop222.mypass</string>
|
||||
</array>
|
||||
</dict>
|
||||
</plist>
|
||||
|
||||
Reference in New Issue
Block a user