56,966 blogs · [ { "id": "01a0876b-ef0e-7225-8da9-8f4889a53aa0", "title": "Using ScrollViewReader for Programmatic Scrolling in SwiftUI: A Tutorial", "url": "https://www.devfright.com/using-scrollviewreader-for-programmatic-scrolling-in-swiftui-a-tutorial/", "published_at": "2025-05-15T12:11:38+00:00" }, { "id": "01a0876b-ef0e-7225-8da9-8f488a095e82", "title": "How to Use Annotation and Marker on a SwiftUI Map", "url": "https://www.devfright.com/how-to-use-annotation-and-marker-on-a-swiftui-map/", "published_at": "2025-05-08T13:34:02+00:00" }, { "id": "01a0876b-ef0e-7225-8da9-8f488a8175f3", "title": "How to Use ShareLink in SwiftUI to Share Text, Images, and URLs", "url": "https://www.devfright.com/how-to-use-sharelink-in-swiftui-to-share-text-images-and-urls/", "published_at": "2025-04-30T22:25:47+00:00" }, { "id": "01a0876b-ef0e-7225-8da9-8f488b3f545b", "title": "How to build a Clipboard History App with UIPasteboard, Images, and Strings in SwiftUI", "url": "https://www.devfright.com/how-to-build-a-clipboard-history-app-with-uipasteboard-images-and-strings-in-swiftui/", "published_at": "2025-04-25T23:49:15+00:00" }, { "id": "01a0876b-ef0e-7225-8da9-8f488c111692", "title": "How to Add Tap to Copy with UIPasteboard in SwiftUI", "url": "https://www.devfright.com/how-to-add-tap-to-copy-with-uipasteboard-in-swiftui/", "published_at": "2025-04-24T10:06:50+00:00" }, { "id": "01a0876b-ef0e-7225-8da9-8f488cb2127d", "title": "Handling Deep Links in SwiftUI with URL Schemes", "url": "https://www.devfright.com/handling-deep-links-in-swiftui-with-url-schemes/", "published_at": "2025-04-23T22:20:47+00:00" }, { "id": "01a0876b-ef0e-7225-8da9-8f488cd6d17b", "title": "How to Build a Native QR Code Generator for iPhone with SwiftUI", "url": "https://www.devfright.com/how-to-build-a-native-qr-code-generator-for-iphone-with-swiftui/", "published_at": "2025-04-22T11:13:20+00:00" }, { "id": "01a0876b-ef0e-7225-8da9-8f488db66c02", "title": "How to Use UndoManager with SwiftData", "url": "https://www.devfright.com/how-to-use-undomanager-with-swiftdata/", "published_at": "2025-04-18T14:55:38+00:00" }, { "id": "01a0876b-ef0e-7225-8da9-8f488e8d9282", "title": "Exploring SwiftUI Picker Styles: Date, Selection, Graphical, Inline etc…", "url": "https://www.devfright.com/exploring-swiftui-picker-styles-date-selection-graphical-inline-etc/", "published_at": "2025-04-17T16:00:17+00:00" }, { "id": "01a0876b-ef0e-7225-8da9-8f488f493dec", "title": "Using .onAppear and .onDisappear in your SwiftUI Views", "url": "https://www.devfright.com/using-onappear-and-ondisappear-in-your-swiftui-views/", "published_at": "2025-04-16T11:03:51+00:00" }, { "id": "01a0c507-b8c3-71d3-9901-60a037e5fcf0", "title": "How to Use the Slider in SwiftUI", "url": "https://www.devfright.com/how-to-use-the-slider-in-swiftui/", "published_at": "2025-04-15T18:04:50+00:00" }, { "id": "01a0c507-b8c3-71d3-9901-60a038320219", "title": "How to Create a Custom Loading Spinner in SwiftUI", "url": "https://www.devfright.com/how-to-create-a-custom-loading-spinner-in-swiftui/", "published_at": "2025-04-14T20:54:32+00:00" }, { "id": "01a0c507-b8c3-71d3-9901-60a0389f3f60", "title": "A Guide to the SwiftUI @Environment", "url": "https://www.devfright.com/a-guide-to-the-swiftui-environment/", "published_at": "2025-04-12T11:10:00+00:00" }, { "id": "01a0c507-b8c3-71d3-9901-60a039810528", "title": "Creating a Responsive SwiftUI Layout for iPhone and iPad (with Bonus Mac Compatibility)", "url": "https://www.devfright.com/creating-a-responsive-swiftui-layout-for-iphone-and-ipad-with-bonus-mac-compatibility/", "published_at": "2025-04-11T11:15:03+00:00" }, { "id": "01a0c507-b8c3-71d3-9901-60a039da505a", "title": "Using Spacer and Divider for Layout in SwiftUI", "url": "https://www.devfright.com/using-spacer-and-divider-for-layout-in-swiftui/", "published_at": "2025-04-10T15:38:56+00:00" }, { "id": "01a0c507-b8c3-71d3-9901-60a03ad303fc", "title": "How to Create a Singleton in Swift", "url": "https://www.devfright.com/how-to-create-a-singleton-in-swift/", "published_at": "2025-04-09T23:13:15+00:00" }, { "id": "01a0c507-b8c3-71d3-9901-60a03bbba21c", "title": "How to Use Your Personal Voice with AVSpeechSynthesizer", "url": "https://www.devfright.com/how-to-use-your-personal-voice-with-avspeechsynthesizer/", "published_at": "2025-04-08T20:30:53+00:00" }, { "id": "01a0c507-b8c3-71d3-9901-60a03c3e1fef", "title": "How to Make a Circular Profile Image in SwiftUI", "url": "https://www.devfright.com/how-to-make-a-circular-profile-image-in-swiftui/", "published_at": "2025-04-07T23:03:30+00:00" }, { "id": "01a0c507-b8c3-71d3-9901-60a03cf4b1a1", "title": "A Look Back at Wireless iTunes Syncing and the Early Jailbreak Era", "url": "https://www.devfright.com/a-look-back-at-wireless-itunes-syncing-and-the-early-jailbreak-era/", "published_at": "2025-04-06T22:29:26+00:00" }, { "id": "01a0c507-b8c3-71d3-9901-60a03d5dbf1d", "title": "How to use String Interpolation", "url": "https://www.devfright.com/how-to-use-string-interpolation/", "published_at": "2025-04-05T20:54:00+00:00" }, { "id": "01a0c518-7c75-7217-b8cd-7a9a055486ad", "title": "What is a Class in Swift", "url": "https://www.devfright.com/what-is-a-class-in-swift/", "published_at": "2025-04-04T13:36:06+00:00" }, { "id": "01a0c518-7c75-7217-b8cd-7a9a05e1d08d", "title": "Setting up Parse Server for your iPhone App", "url": "https://www.devfright.com/setting-up-parse-server-for-your-iphone-app/", "published_at": "2025-04-03T22:32:22+00:00" }, { "id": "01a0c518-7c75-7217-b8cd-7a9a05ed9002", "title": "How to Add a Context Menu in SwiftUI", "url": "https://www.devfright.com/how-to-add-a-context-menu-in-swiftui/", "published_at": "2025-04-02T12:40:08+00:00" }, { "id": "01a0c518-7c75-7217-b8cd-7a9a0694fc6f", "title": "How to use Core Location with SwiftUI", "url": "https://www.devfright.com/how-to-use-core-location-with-swiftui/", "published_at": "2025-04-01T22:11:30+00:00" }, { "id": "01a0c518-7c75-7217-b8cd-7a9a076a2b66", "title": "Adding Navigation Bar Buttons in SwiftUI", "url": "https://www.devfright.com/adding-navigation-bar-buttons-in-swiftui/", "published_at": "2025-03-31T21:11:22+00:00" }, { "id": "01a0c518-7c75-7217-b8cd-7a9a082fc31b", "title": "Customizing SF Symbols with Variants in SwiftUI", "url": "https://www.devfright.com/customizing-sf-symbols-with-variants-in-swiftui/", "published_at": "2025-03-29T18:01:23+00:00" }, { "id": "01a0c518-7c75-7217-b8cd-7a9a08303ecd", "title": "How to Use Pull-to-Refesh in a List View in SwiftUI", "url": "https://www.devfright.com/how-to-use-pull-to-refesh-in-a-list-view-in-swiftui/", "published_at": "2025-03-28T12:52:04+00:00" }, { "id": "01a0c518-7c75-7217-b8cd-7a9a08c4c366", "title": "Creating a Simple Onboarding Flow in SwiftUI", "url": "https://www.devfright.com/creating-a-simple-onboarding-flow-in-swiftui/", "published_at": "2025-03-27T11:37:01+00:00" }, { "id": "01a0c518-7c75-7217-b8cd-7a9a09959c48", "title": "Show an Alert in SwiftUI", "url": "https://www.devfright.com/show-an-alert-in-swiftui/", "published_at": "2025-03-26T14:35:52+00:00" }, { "id": "01a0c518-7c75-7217-b8cd-7a9a0a6b3103", "title": "Making Network Requests with URLSession in SwiftUI", "url": "https://www.devfright.com/making-network-requests-with-urlsession-in-swiftui/", "published_at": "2025-03-25T21:12:04+00:00" }, { "id": "01a0c523-7d13-73bb-8f82-b4d96f95860c", "title": "Using Async/Await and Task in SwiftUI", "url": "https://www.devfright.com/using-async-await-and-task-in-swiftui/", "published_at": "2025-03-24T13:46:43+00:00" }, { "id": "01a0c523-7d13-73bb-8f82-b4d970666983", "title": "Creating Custom Button Styles in SwiftUI", "url": "https://www.devfright.com/creating-custom-button-styles-in-swiftui/", "published_at": "2025-03-22T23:27:44+00:00" }, { "id": "01a0c523-7d13-73bb-8f82-b4d971051df6", "title": "How to Fetch and Display HealthKit Data with HKAnchoredObjectQuery", "url": "https://www.devfright.com/how-to-fetch-and-display-healthkit-data-with-hkanchoredobjectquery/", "published_at": "2025-03-21T23:18:44+00:00" }, { "id": "01a0c523-7d13-73bb-8f82-b4d972030a08", "title": "How to Track Motion Activity with CMMotionActivityManager in SwiftUI", "url": "https://www.devfright.com/how-to-track-motion-activity-with-cmmotionactivitymanager-in-swiftui/", "published_at": "2025-03-20T13:44:48+00:00" }, { "id": "01a0c523-7d13-73bb-8f82-b4d9721ae5fd", "title": "How to use a SwiftUI Form", "url": "https://www.devfright.com/how-to-use-a-swiftui-form/", "published_at": "2025-03-19T10:47:10+00:00" }, { "id": "01a0c523-7d13-73bb-8f82-b4d972695b82", "title": "How to Use UIViewRepresentable – More AI Writing Tool Features", "url": "https://www.devfright.com/how-to-use-uiviewrepresentable-more-ai-writing-tool-features/", "published_at": "2025-03-18T23:30:39+00:00" }, { "id": "01a0c523-7d13-73bb-8f82-b4d972c00ab5", "title": "How to Add Haptic Feedback to Your SwiftUI", "url": "https://www.devfright.com/how-to-add-haptic-feedback-to-your-swiftui/", "published_at": "2025-03-17T15:02:11+00:00" }, { "id": "01a0c523-7d13-73bb-8f82-b4d97319adad", "title": "How to use Apple Intelligence Writing Tools in SwiftUI", "url": "https://www.devfright.com/how-to-use-apple-intelligence-writing-tools-in-swiftui/", "published_at": "2025-03-15T22:58:50+00:00" }, { "id": "01a0c523-7d13-73bb-8f82-b4d97384d3ce", "title": "Building a Search Feature in SwiftUI with Array Filtering", "url": "https://www.devfright.com/building-a-search-feature-in-swiftui-with-array-filtering/", "published_at": "2025-03-14T14:25:12+00:00" }, { "id": "01a0c523-7d13-73bb-8f82-b4d973bb31e9", "title": "Building a Widget Extension for iOS – Part 2", "url": "https://www.devfright.com/building-a-widget-extension-for-ios-part-2/", "published_at": "2025-03-13T23:41:39+00:00" }, { "id": "01a0c52f-193f-7038-bc26-4531d0ba4c86", "title": "Building a Widget Extension for iOS – Part 1", "url": "https://www.devfright.com/building-a-widget-extension-for-ios-part-1/", "published_at": "2025-03-12T23:53:20+00:00" }, { "id": "01a0c52f-193f-7038-bc26-4531d188f0d6", "title": "Creating Custom Modifiers for SwiftUI Views", "url": "https://www.devfright.com/creating-custom-modifiers-for-swiftui-views/", "published_at": "2025-03-11T13:51:14+00:00" }, { "id": "01a0c52f-193f-7038-bc26-4531d21eb598", "title": "A Look at CompactMap, Map, and when to use them", "url": "https://www.devfright.com/a-look-at-compactmap-map-and-when-to-use-them/", "published_at": "2025-03-10T23:22:43+00:00" }, { "id": "01a0c52f-193f-7038-bc26-4531d2ee352c", "title": "How to Save Text Files with SwiftUI", "url": "https://www.devfright.com/how-to-save-text-files-with-swiftui/", "published_at": "2025-03-05T12:17:48+00:00" }, { "id": "01a0c52f-193f-7038-bc26-4531d3c5d51b", "title": "The @AppStorage Property Wrapper", "url": "https://www.devfright.com/the-appstorage-property-wrapper/", "published_at": "2025-02-12T21:29:07+00:00" }, { "id": "01a0c52f-193f-7038-bc26-4531d42e1928", "title": "How to Create a Simple To-Do List with Swipe Actions in SwiftUI Using SwiftData", "url": "https://www.devfright.com/how-to-create-a-simple-to-do-list-with-swipe-actions-in-swiftui-using-swiftdata/", "published_at": "2024-12-04T14:34:13+00:00" }, { "id": "01a0c52f-193f-7038-bc26-4531d4adc6b4", "title": "A Look at the SwiftUI Preview Macro", "url": "https://www.devfright.com/a-look-at-the-swiftui-preview-macro/", "published_at": "2024-11-14T14:34:48+00:00" }, { "id": "01a0c52f-193f-7038-bc26-4531d55c42e1", "title": "SwiftUI List Tutorial", "url": "https://www.devfright.com/swiftui-list-tutorial/", "published_at": "2024-10-18T11:50:26+00:00" }, { "id": "01a0c52f-193f-7038-bc26-4531d5c42a8d", "title": "Using the SwiftUI ForEach Loop", "url": "https://www.devfright.com/using-the-swiftui-foreach-loop/", "published_at": "2024-10-18T10:44:03+00:00" }, { "id": "01a0c52f-193f-7038-bc26-4531d5f53561", "title": "Syncing SwiftData with iCloud: A Step-by-Step Guide to Setting Up Cloud Sync in Your SwiftUI App", "url": "https://www.devfright.com/syncing-swiftdata-with-icloud-a-step-by-step-guide-to-setting-up-cloud-sync-in-your-swiftui-app/", "published_at": "2024-10-14T13:27:17+00:00" }, { "id": "01a0c539-8725-7280-a5c3-c8558da5165b", "title": "@State and @StateObject Property Wrappers", "url": "https://www.devfright.com/state-and-stateobject-property-wrappers/", "published_at": "2024-10-01T12:10:00+00:00" }, { "id": "01a0c539-8725-7280-a5c3-c8558db6959a", "title": "GeometryReader Tutorial for SwiftUI", "url": "https://www.devfright.com/geometryreader-tutorial-for-swiftui/", "published_at": "2024-08-08T16:15:25+00:00" }, { "id": "01a0c539-8725-7280-a5c3-c8558e39b6c0", "title": "Xcode 16 beta Launched", "url": "https://www.devfright.com/xcode-16-beta-launched/", "published_at": "2024-06-11T12:09:47+00:00" }, { "id": "01a0c539-8725-7280-a5c3-c8558e7a48d8", "title": "How to Use Swift Charts with SwiftUI in Your iPhone App", "url": "https://www.devfright.com/how-to-use-swift-charts-with-swiftui-in-your-iphone-app/", "published_at": "2023-08-07T10:53:45+00:00" }, { "id": "01a0c539-8725-7280-a5c3-c8558eccd095", "title": "Building a SwiftUI Note-Taking App with ChatGPT Integration for iPhone – Tutorial", "url": "https://www.devfright.com/building-a-swiftui-note-taking-app-with-chatgpt-integration-for-iphone-tutorial/", "published_at": "2023-07-24T15:47:31+00:00" }, { "id": "01a0c539-8725-7280-a5c3-c8558f7421c9", "title": "Integrating DALL-E to Generate Images in Your SwiftUI iPhone App", "url": "https://www.devfright.com/integrating-dall-e-to-generate-images-in-your-swiftui-iphone-app/", "published_at": "2023-07-21T22:37:19+00:00" }, { "id": "01a0c539-8725-7280-a5c3-c8558fc3061e", "title": "ChatGPT Integration: Building a SwiftUI Chatbot for Your iPhone App", "url": "https://www.devfright.com/chatgpt-integration-building-a-swiftui-chatbot-for-your-iphone-app/", "published_at": "2023-07-19T10:23:21+00:00" }, { "id": "01a0c539-8725-7280-a5c3-c855904fc09e", "title": "Learning C# and .NET", "url": "https://www.devfright.com/learning-c-and-net-core/", "published_at": "2023-05-19T09:39:35+00:00" }, { "id": "01a0c539-8725-7280-a5c3-c85590a1143e", "title": "Learning SwiftUI", "url": "https://www.devfright.com/learning-swiftui/", "published_at": "2023-04-03T22:07:44+00:00" }, { "id": "01a0c539-8725-7280-a5c3-c85590f7d8d4", "title": "How to add a Map to a SwiftUI App", "url": "https://www.devfright.com/how-to-add-a-map-to-a-swiftui-app/", "published_at": "2023-01-07T00:48:11+00:00" }, { "id": "01a0c542-d607-72bd-bff3-ee84a8d8f769", "title": "How to Use Local Notifications", "url": "https://www.devfright.com/how-to-use-local-notifications/", "published_at": "2022-03-25T20:10:14+00:00" }, { "id": "01a0c542-d607-72bd-bff3-ee84a92ce9ff", "title": "The SwiftUI App Life Cycle", "url": "https://www.devfright.com/the-swiftui-app-life-cycle/", "published_at": "2020-10-12T14:00:16+00:00" }, { "id": "01a0c542-d607-72bd-bff3-ee84a9be7868", "title": "Apple Sample Code for Three-Column Layout in SwiftUI", "url": "https://www.devfright.com/apple-sample-code-for-three-column-layout-in-swiftui/", "published_at": "2020-10-09T14:45:16+00:00" }, { "id": "01a0c542-d607-72bd-bff3-ee84aa255ac2", "title": "Unable to use SwiftUI Preview due to Insufficient System Resources", "url": "https://www.devfright.com/unable-to-use-swiftui-preview-due-to-insufficient-system-resources/", "published_at": "2020-10-09T11:02:45+00:00" }, { "id": "01a0c542-d607-72bd-bff3-ee84aa4f4f1d", "title": "What is a Swift Class", "url": "https://www.devfright.com/what-is-a-swift-class/", "published_at": "2020-09-08T14:44:55+00:00" }, { "id": "01a0c542-d607-72bd-bff3-ee84aa50a046", "title": "What is a Swift Struct", "url": "https://www.devfright.com/what-is-a-swift-struct/", "published_at": "2020-09-04T16:34:00+00:00" }, { "id": "01a0c542-d607-72bd-bff3-ee84aad055bc", "title": "SwiftUI Text View", "url": "https://www.devfright.com/swiftui-text-view/", "published_at": "2019-08-23T22:45:40+00:00" }, { "id": "01a0c542-d607-72bd-bff3-ee84ab9178bd", "title": "Using Codable to Encode and Decode JSON", "url": "https://www.devfright.com/using-codable-to-encode-and-decode-json/", "published_at": "2019-08-22T13:56:49+00:00" }, { "id": "01a0c542-d607-72bd-bff3-ee84ac046390", "title": "How to Use the SwiftUI List View with Dynamic Cells", "url": "https://www.devfright.com/how-to-use-the-swiftui-list-view-with-dynamic-cells/", "published_at": "2019-08-21T14:58:48+00:00" }, { "id": "01a0c542-d607-72bd-bff3-ee84ac220d50", "title": "Combining SwiftUI Views", "url": "https://www.devfright.com/combining-swiftui-views/", "published_at": "2019-08-20T15:42:46+00:00" }, { "id": "01a0c54b-c2d5-7068-afb4-d1b78c5128f5", "title": "How to Use the SwiftUI List View with Static Cells", "url": "https://www.devfright.com/how-to-use-the-swiftui-list-view-with-static-cells/", "published_at": "2019-08-19T14:15:27+00:00" }, { "id": "01a0c54b-c2d5-7068-afb4-d1b78d056b3e", "title": "SwiftUI HStack, VStack, ZStack Tutorial", "url": "https://www.devfright.com/swiftui-hstack-vstack-zstack-tutorial/", "published_at": "2019-08-16T18:47:23+00:00" }, { "id": "01a0c54b-c2d5-7068-afb4-d1b78dc18367", "title": "Finding the Correct GTLRGmail_MessagePart", "url": "https://www.devfright.com/finding-the-correct-gtlrgmail_messagepart/", "published_at": "2019-02-08T15:17:53+00:00" }, { "id": "01a0c54b-c2d5-7068-afb4-d1b78e32bcfb", "title": "Getting a List of Messages with the Gmail API", "url": "https://www.devfright.com/getting-a-list-of-messages-with-the-gmail-api/", "published_at": "2019-02-01T16:47:24+00:00" }, { "id": "01a0c54b-c2d5-7068-afb4-d1b78eb5cdff", "title": "Implementing GoogleSignIn with Swift", "url": "https://www.devfright.com/implementing-googlesignin-with-swift/", "published_at": "2019-02-01T14:27:34+00:00" }, { "id": "01a0c54b-c2d5-7068-afb4-d1b78f582de0", "title": "How to Display HTML in UITextView with Swift", "url": "https://www.devfright.com/how-to-display-html-in-uitextview-with-swift/", "published_at": "2019-01-29T17:10:50+00:00" }, { "id": "01a0c54b-c2d5-7068-afb4-d1b78f62571e", "title": "Connecting to the DJI/Ryze Tello SDK with iOS and Swift – Tutorial", "url": "https://www.devfright.com/connecting-to-the-dji-ryze-tello-sdk-with-ios-and-swift-tutorial/", "published_at": "2019-01-11T22:41:18+00:00" }, { "id": "01a0c54b-c2d5-7068-afb4-d1b78fdf4179", "title": "Passing Data Between View Controllers with Swift", "url": "https://www.devfright.com/passing-data-between-view-controllers-with-swift/", "published_at": "2019-01-09T15:08:48+00:00" }, { "id": "01a0c54b-c2d5-7068-afb4-d1b79090d0cf", "title": "Using the CLCircularRegion to Setup a Geo Fence", "url": "https://www.devfright.com/using-the-clcircularregion-to-setup-a-geo-fence/", "published_at": "2018-08-10T02:05:55+00:00" }, { "id": "01a0c54b-c2d5-7068-afb4-d1b7912599d4", "title": "CMMotionManager Tutorial – Part 4 – Device Motion Data", "url": "https://www.devfright.com/cmmotionmanager-tutorial-part-4-device-motion-data/", "published_at": "2018-08-03T16:57:56+00:00" }, { "id": "01a0c554-1728-70b9-9601-f2ea24e3fc9c", "title": "How to Access the iPhone Barometer with CMAltimeter", "url": "https://www.devfright.com/how-to-access-the-iphone-barometer-with-cmaltimeter/", "published_at": "2018-08-02T23:01:49+00:00" }, { "id": "01a0c554-1728-70b9-9601-f2ea25bdf583", "title": "How to Use the CMMotionActivityManager", "url": "https://www.devfright.com/how-to-use-the-cmmotionactivitymanager/", "published_at": "2018-08-01T12:55:58+00:00" }, { "id": "01a0c554-1728-70b9-9601-f2ea26691dc2", "title": "How to use the CMPedometer for Counting Steps", "url": "https://www.devfright.com/how-to-use-the-cmpedometer-for-counting-steps/", "published_at": "2018-07-31T22:50:34+00:00" }, { "id": "01a0c554-1728-70b9-9601-f2ea271db59f", "title": "CMMotionManager Tutorial – Part 3 – The Magnetometer", "url": "https://www.devfright.com/cmmotionmanager-tutorial-part-3-the-magnetometer/", "published_at": "2018-07-30T21:09:02+00:00" }, { "id": "01a0c554-1728-70b9-9601-f2ea27d7288f", "title": "CMMotionManager Tutorial – Part 2 – The Gyroscope", "url": "https://www.devfright.com/cmmotionmanager-tutorial-part-2-the-gyroscope/", "published_at": "2018-07-27T15:23:06+00:00" }, { "id": "01a0c554-1728-70b9-9601-f2ea27f70171", "title": "CMMotionManager Tutorial – Part 1 – Accelerometer Data", "url": "https://www.devfright.com/cmmotionmanager-tutorial-part-1/", "published_at": "2018-07-26T22:18:29+00:00" }, { "id": "01a0c554-1728-70b9-9601-f2ea28a5e0d9", "title": "A Quick Look at HKHealthStore", "url": "https://www.devfright.com/a-quick-look-at-hkhealthstore/", "published_at": "2018-07-25T21:51:18+00:00" }, { "id": "01a0c554-1728-70b9-9601-f2ea2901fcba", "title": "Saving Category Samples with HealthKit", "url": "https://www.devfright.com/saving-category-samples-with-healthkit/", "published_at": "2018-07-25T20:23:25+00:00" }, { "id": "01a0c554-1728-70b9-9601-f2ea295b4f66", "title": "Creating and Saving Data in HealthKit", "url": "https://www.devfright.com/creating-and-saving-data-in-healthkit/", "published_at": "2018-07-24T16:36:20+00:00" }, { "id": "01a0c554-1728-70b9-9601-f2ea295c5dc5", "title": "HKActivitySummaryQuery Long-Running Query", "url": "https://www.devfright.com/hkactivitysummaryquery-long-running-query/", "published_at": "2018-07-24T02:34:08+00:00" }, { "id": "01a0c55c-7db5-73c4-84cd-36270ab151bc", "title": "The HealthKit HKActivitySummaryQuery", "url": "https://www.devfright.com/the-healthkit-hkactivitysummaryquery/", "published_at": "2018-07-23T19:55:24+00:00" }, { "id": "01a0c55c-7db5-73c4-84cd-36270ad94d1d", "title": "How to use the HKSourceQuery", "url": "https://www.devfright.com/how-to-use-the-hksourcequery/", "published_at": "2018-07-23T10:30:56+00:00" }, { "id": "01a0c55c-7db5-73c4-84cd-36270b94bd39", "title": "How to Use the HKStatisticsCollectionQuery", "url": "https://www.devfright.com/how-to-use-the-hkstatisticscollectionquery/", "published_at": "2018-07-20T21:35:39+00:00" }, { "id": "01a0c55c-7db5-73c4-84cd-36270be0e72e", "title": "The HealthKit HKStatisticsQuery", "url": "https://www.devfright.com/the-healthkit-hkstatisticsquery/", "published_at": "2018-07-19T16:25:05+00:00" }, { "id": "01a0c55c-7db5-73c4-84cd-36270c0771f2", "title": "How to Use HealthKit HKAnchoredObjectQuery", "url": "https://www.devfright.com/how-to-use-healthkit-hkanchoredobjectquery/", "published_at": "2018-07-18T13:13:10+00:00" }, { "id": "01a0c55c-7db5-73c4-84cd-36270c56c3fd", "title": "HKSampleQuery Tutorial and Examples", "url": "https://www.devfright.com/hksamplequery-tutorial-and-examples/", "published_at": "2018-07-17T12:59:31+00:00" }, { "id": "01a0c55c-7db5-73c4-84cd-36270ce4917a", "title": "Reading Characteristic Data from HealthKit", "url": "https://www.devfright.com/reading-characteristic-data-from-healthkit/", "published_at": "2018-07-16T16:04:58+00:00" }, { "id": "01a0c55c-7db5-73c4-84cd-36270d0f4110", "title": "How to Setup Apple HealtKit in Your App", "url": "https://www.devfright.com/how-to-setup-apple-healtkit-in-your-app/", "published_at": "2018-07-16T11:08:52+00:00" }, { "id": "01a0c55c-7db5-73c4-84cd-36270d97a966", "title": "How to Use the UserNotifications Framework Delegate Protocol", "url": "https://www.devfright.com/use-usernotifications-framework-delegate-protocol/", "published_at": "2017-05-17T16:16:58+00:00" }, { "id": "01a0c55c-7db5-73c4-84cd-36270e0430c3", "title": "How to Use the UserNotifications Framework", "url": "https://www.devfright.com/use-usernotifications-framework/", "published_at": "2017-05-11T15:53:44+00:00" } ] posts Claim your blog
Back to devfright.com
Blog · corpus.blog/blogs/devfright.com/posts

devfright.com

devfright.com

2025

2024

2023

2022

2020

2019

2018

2017