Scanning NFC tags using CoreNFC in an iOS app

Introduction I never had a chance to work with NFC (Near Field Communication), but I have always been curious to find out how it works. In this article, I will focus on scanning NFC tags using CoreNFC with NFCNDEFReaderSession. Preparation Before we begin, let’s add the necessary objects: Near Field Communication Tag Reading capability to the project. Privacy - NFC Scan Usage Description key to Info.plist. Near Field Communication Tag Reader Session Formats to the entitlements file....

July 12, 2024 · 2 min · Dmytro Chumakov

Scanning for peripheral devices using BLE in an iOS app

Introduction I had the chance to work on a project where communication via BLE was at the heart of the project. Before adding any code to application, I always asked myself about two scenarios: The first scenario is when the device acts as a central device while searching for and connecting to peripheral devices. The second scenario is when the device acts as a peripheral device by using CBCharacteristic and changes its value....

July 10, 2024 · 3 min · Dmytro Chumakov

Creating a 2D Space Game for iOS Using SpriteKit - Part 2

Introduction In the previous chapter, I started talking about the video game creation process, from project setup to adding the background. Now, I’m going to add the player and physics to it. You can download the project here. First Step The first step is to initialize player using SKSpriteNode, set up player.position, and add player as a child node. SKSpriteNode - is an onscreen graphical element that can be initialized from an image or a solid color....

July 3, 2024 · 3 min · Dmytro Chumakov

Creating a 2D Space Game for iOS Using SpriteKit - Part 1

Introduction I have never tried creating a game before; it feels like magic to me. I know that games have an enormous amount of underlying layers of abstractions and tools such as game engines, rendering, and so on. I have always been eager to learn at least 1% of the game creation process. In this article, I’m going to explore step-by-step instructions for creating a game for the iOS platform using SpriteKit....

June 28, 2024 · 2 min · Dmytro Chumakov

Combine practical usage examples

Introduction When working in a large codebase with a significant number of async events, I often found myself in situations where I couldn’t combine events effectively. This resulted in optimization problems and inefficient consumption of OS resources. The codebase contained closures and async/await, so it wasn’t possible to use operators like merge or combineLatest. After discovering this limitation, I decided to add new methods using Combine. I will be demonstrating this with a simple NetworkService responsible only for executing and validating requests using Combine....

June 22, 2024 · 2 min · Dmytro Chumakov