expo-app-blocker 0.1.23 → 0.1.25

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/README.md +23 -2
  2. package/package.json +1 -1
package/README.md CHANGED
@@ -13,12 +13,15 @@ https://github.com/user-attachments/assets/37f34797-6b92-40d5-911a-90c40e9ffaaa
13
13
  > **iOS requires Apple Developer Portal setup before building.** See [Prerequisites](#prerequisites) for details.
14
14
 
15
15
  > [!IMPORTANT]
16
- > **Submit your Family Controls distribution approval request now.** App Store distribution requires Apple approval per bundle ID — it can take days to weeks and you can't ship without it. [Request here](https://developer.apple.com/contact/request/family-controls-distribution) (you'll need to submit once per bundle ID — 4 total). You can develop and test locally without waiting.
16
+ > **Submit your Family Controls distribution approval request now.** App Store distribution requires Apple approval per bundle ID — it can take days to weeks and you can't ship without it. [Request here](https://developer.apple.com/contact/request/family-controls-distribution) (you'll need to submit once per bundle ID — 4 total).
17
+ >
18
+ > **While waiting for approval**, use the **Family Controls (Development)** capability in Xcode instead of the standard "Family Controls" — it's marked "Development only" in Xcode's Signing & Capabilities tab and works without Apple's approval. Development builds with this entitlement are fully functional on device but cannot be submitted to TestFlight or the App Store.
17
19
 
18
20
  <details>
19
21
  <summary><strong>Table of Contents</strong></summary>
20
22
 
21
23
  - [Features](#features)
24
+ - [Build Compatibility](#build-compatibility)
22
25
  - [Quick Start](#quick-start)
23
26
  - [Prerequisites](#prerequisites)
24
27
  - [Plugin Options](#plugin-options)
@@ -56,6 +59,23 @@ https://github.com/user-attachments/assets/37f34797-6b92-40d5-911a-90c40e9ffaaa
56
59
  - Automatic iOS extension target creation via `@bacons/apple-targets`
57
60
  - Full Expo Config Plugin - no manual native setup required
58
61
 
62
+ ## Build Compatibility
63
+
64
+ | Build type | Supported | Notes |
65
+ |---|---|---|
66
+ | **Expo Go** | ❌ | Requires custom native modules — not available in Expo Go |
67
+ | **Development build** (`expo-dev-client`) | ✅ | Fully supported — same setup as production |
68
+ | **Local build** (`expo run:ios` / `expo run:android`) | ✅ | Fully supported |
69
+ | **EAS Build** | ✅ | Fully supported — see [EAS Build config](#eas-build) |
70
+ | **Production / App Store** | ✅ | Fully supported — iOS requires Apple approval first |
71
+
72
+ **This plugin requires a development build or a production build.** If you're using Expo Go, you'll need to [create a development build](https://docs.expo.dev/develop/development-builds/introduction/) first:
73
+
74
+ ```bash
75
+ npx expo install expo-dev-client
76
+ npx expo run:ios --device # or: eas build --profile development
77
+ ```
78
+
59
79
  ## Quick Start
60
80
 
61
81
  ### 1. Install
@@ -170,8 +190,9 @@ npx expo run:android # Android works on emulator
170
190
 
171
191
  3. Assign the App Group to all 4 App IDs
172
192
 
173
- 4. Request **Family Controls** capability approval (required for App Store/TestFlight — works in local dev builds without it)
193
+ 4. Request **Family Controls** capability approval (required for App Store/TestFlight distribution)
174
194
  - Submit the form **once per bundle ID** (4 total): [developer.apple.com/contact/request/family-controls-distribution](https://developer.apple.com/contact/request/family-controls-distribution)
195
+ - **While waiting for approval**: use **Family Controls (Development)** in Xcode's Signing & Capabilities tab — fully functional in dev builds, just not distributable
175
196
  - Incomplete capability setup causes cryptic provisioning errors — make sure all 4 App IDs have Family Controls + App Groups enabled
176
197
 
177
198
  ### Android
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "expo-app-blocker",
3
- "version": "0.1.23",
3
+ "version": "0.1.25",
4
4
  "description": "Expo module for cross-platform app blocking. Android: UsageStatsManager + Overlay. iOS: Screen Time API (FamilyControls + ManagedSettings + DeviceActivity).",
5
5
  "main": "src/index.ts",
6
6
  "types": "src/index.ts",