|
1 | 1 | # NativeAppTemplate-Free-iOS |
2 | 2 |
|
3 | | -NativeAppTemplate-Free-iOS is a modern, comprehensive, and production-ready native iOS app with user authentication and [background tag reading](https://developer.apple.com/documentation/corenfc/adding-support-for-background-tag-reading). |
| 3 | +NativeAppTemplate-Free-iOS is a modern, comprehensive, and production-ready native iOS app with user authentication and a full CRUD example. |
4 | 4 | This iOS app is a free version of [NativeAppTemplate-iOS (Solo)](https://nativeapptemplate.com/products/ios-solo) and [NativeAppTemplate-iOS (Team)](https://nativeapptemplate.com/products/ios-team). |
5 | 5 |
|
6 | 6 | The Android version is available here: [NativeAppTemplate-Free-Android](https://github.com/nativeapptemplate/NativeAppTemplate-Free-Android). |
@@ -43,68 +43,7 @@ NativeAppTemplate-Free-iOS uses modern iOS development tools and practices, incl |
43 | 43 |
|
44 | 44 | ## NFC Tag Operations |
45 | 45 |
|
46 | | -<details> |
47 | | -<summary><strong>How NFC tag writing and background reading works</strong></summary> |
48 | | - |
49 | | -### Overview |
50 | | - |
51 | | - |
52 | | - |
53 | | - |
54 | | - |
55 | | -The app replaces traditional paper tags with NFC tags to efficiently manage walk-in customer waitlists. It writes application-specific information onto your NFC cards (referred to as :red_circle: **Server Tag** and :large_blue_circle: **Customer Tag**). |
56 | | - |
57 | | -**For Customers:** |
58 | | -When a customer scans a :large_blue_circle: **Customer Tag**, they can view the :green_circle: **Number Tags Webpage** (a public webpage) on their mobile browser. This page displays completed Number Tags. |
59 | | - |
60 | | -**For Staff:** |
61 | | -By scanning a :red_circle: **Server Tag** paired with the :large_blue_circle: **Customer Tag**, staff can complete a Number Tag. Completed Number Tags automatically appear on the :green_circle: **Number Tags Webpage** for customer reference. |
62 | | - |
63 | | -### How It Works |
64 | | - |
65 | | - |
66 | | - |
67 | | -1. Write application info to pair **Number Tags** (Server Tag and Customer Tag) or a **Customer QR code**: |
68 | | - - Go to: **Shops > [Shop] > Shop Settings > Manage Number Tags > [Number Tag]**. |
69 | | -2. Scan a **Server Tag** in the **Scan** tab. |
70 | | -3. View the updated **Number Tags** status in the **Shop Detail** screen or on the **Number Tags Webpage** (see Background Tag Reading GIF below). |
71 | | - |
72 | | -### Recommended NFC Tags |
73 | | -For best performance, use **NTAG215 (540 bytes)** tags. |
74 | | -Example: [50pcs NFC Cards Ntag215](https://www.amazon.com/dp/B087FRYY8S) (Amazon USA). |
75 | | - |
76 | | ---- |
77 | | - |
78 | | -### Background Tag Reading |
79 | | - |
80 | | - |
81 | | - |
82 | | -1. Scan a **Server Tag**. |
83 | | -2. View the updated **Number Tags** status in the **Shop Detail** screen or on the **Number Tags Webpage**. |
84 | | - |
85 | | -The **Number Tags Webpage** updates in real-time using Rails [Turbo](https://turbo.hotwired.dev). |
86 | | -This functionality is part of the open-source [nativeapptemplateapi](https://github.com/nativeapptemplate/nativeapptemplateapi) backend. |
87 | | - |
88 | | -> **Note:** |
89 | | -> The GIF above shows [MyTurnTag Creator for iOS](https://apps.apple.com/app/myturntag-creator/id1516198303) in action, which may behave slightly differently from **NativeAppTemplate-Free-iOS**. |
90 | | -
|
91 | | -### Associated Domains Requirement (iOS) |
92 | | -For background tag reading to work correctly on **iOS**, you must configure **Associated Domains** in your app. |
93 | | - |
94 | | -To set up Associated Domains on iOS, follow these steps: |
95 | | -1. Add your domain (e.g., `applinks:api.example.com`) to the **Associated Domains** section in Xcode under **Signing & Capabilities**. |
96 | | -2. Configure the **apple-app-site-association (AASA)** file and host it on your server. |
97 | | -3. Verify that the **AASA** file is correctly configured and accessible by checking its contents at the following URL: |
98 | | - |
99 | | - 🔗 [https://app-site-association.cdn-apple.com/a/v1/api.example.com](https://app-site-association.cdn-apple.com/a/v1/api.example.com) |
100 | | - |
101 | | -4. Uninstall **NativeAppTemplate-Free-iOS**, reset your device, and then reinstall **NativeAppTemplate-Free-iOS** to ensure the changes take effect. |
102 | | - |
103 | | -For detailed instructions, refer to Apple's official documentations: |
104 | | -- [Adding Support for Background Tag Reading](https://developer.apple.com/documentation/corenfc/adding-support-for-background-tag-reading) |
105 | | -- [Supporting Associated Domains](https://developer.apple.com/documentation/xcode/supporting-associated-domains) |
106 | | - |
107 | | -</details> |
| 46 | +NFC tag writing and background tag reading were part of v1 and have been removed from the current version. The full NFC implementation remains available in the [`v1-with-nfc`](https://github.com/nativeapptemplate/NativeAppTemplate-Free-iOS/tree/v1-with-nfc) branch. |
108 | 47 |
|
109 | 48 | ## Not Included in the Free Version |
110 | 49 |
|
@@ -175,7 +114,6 @@ Xcode will automatically run SwiftLint if it is installed. |
175 | 114 | ## Blogs |
176 | 115 |
|
177 | 116 | - [Key Differences in MVVM Architecture: iOS vs. Android](https://medium.com/@dadachix/key-differences-in-mvvm-architecture-ios-vs-android-e239d30b2ea7) |
178 | | -- [Cross-Platform Background NFC Tag Reading](https://medium.com/@dadachix/cross-platform-background-nfc-tag-reading-8a704f0cb6e9) |
179 | 117 |
|
180 | 118 | ## Contributing |
181 | 119 |
|
|
0 commit comments