You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/capability-guides/mobile-access/mobile-device-sdks/handling-system-permissions.md
+82-26Lines changed: 82 additions & 26 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,37 +2,61 @@
2
2
3
3
The mobile SDK surfaces missing or required system permissions (Bluetooth, internet connectivity, and so on) as `CredentialError.userInteractionRequired(action)` entries in each credential’s `errors` array. After activation, observe these errors and handle the specified actions. Errors update automatically as requirements change.
4
4
5
-
## Monitoring Permission Errors
5
+
***
6
+
7
+
## Platform Setup Requirements
8
+
9
+
First, configure the required platform capabilities.
6
10
7
11
{% tabs %}
12
+
{% tab title="iOS Swift" %}
13
+
1.**Suppress Apple Wallet while unlocking with BLE**\
14
+
To prevent the Apple Wallet dialog from appearing when your app uses BLE to unlock a door, do the following:
15
+
16
+
* Add the `requestAutomaticPassPresentationSuppression()` call to your app.\
17
+
This method suppresses Apple Wallet while your mobile app is in the foreground and ensures a smoother `unlockWithTap` experience.
18
+
* Request the `com.apple.developer.passkit.pass-presentation-suppression` entitlement from Apple. 
19
+
20
+
Apple Wallet suppression and Bluetooth scanning only apply while the app is in the foreground. Ensure unlock operations are initiated while the app is active.
21
+
2.**Enable Bluetooth capability**
22
+
23
+
Add the required Bluetooth key to your app’s entitlements file:
For a complete SwiftUI-based implementation of credential error handling for iOS, see `SeamUnlockCardView` in the SeamComponents library, which demonstrates observing credential errors and updating the UI accordingly.
Copy file name to clipboardExpand all lines: docs/capability-guides/mobile-access/mobile-device-sdks/using-unlock-with-tap.md
+6Lines changed: 6 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -118,6 +118,10 @@ Use Async/Await or Combine to initiate an unlock with a selected credential:
118
118
119
119
{% tabs %}
120
120
{% tab title="iOS Swift" %}
121
+
{% hint style="info" %}
122
+
If the Apple Wallet dialog appears when using the BLE unlock, see [Handling System Permissions](handling-system-permissions.md#platform-setup-requirements) for steps to prevent it and ensure a smoother unlockWithTap experience.
123
+
{% endhint %}
124
+
121
125
```swift
122
126
importSeamSDK
123
127
importCombine
@@ -245,6 +249,8 @@ fun handleCredentialErrors(credentialErrors: List<SeamCredentialError>) {
245
249
{% endtab %}
246
250
{% endtabs %}
247
251
252
+
***
253
+
248
254
## 4. Handle Unlock Events
249
255
250
256
Handle each `SeamUnlockEvent` to update your UI and logic. Available events:
0 commit comments