Mehdi SamadiManaging Audio Interruption, and Route Change in iOS ApplicationWhen developing audio applications for iOS, it’s essential to understand how to manage changes in the audio environment. The AVAudioSession…Jul 28Jul 28
Mehdi SamadiWhy there is resistance to the use of software design?Imagine you are working in a fire room. Deep down in a huge ship, right beside the engine, the room is full of coal. Actually, you are…Oct 14, 2023Oct 14, 2023
Mehdi SamadiRxSwift DependencyIf you have used RxSwift then you are familiar with this snippet of code:Apr 30, 2023Apr 30, 2023
Mehdi SamadiCould not locate device support filesIf you are facing this error, it means that your device version is a bit newer than your Xcode. You can download Xcode, if you have time…Apr 12, 2023Apr 12, 2023
Mehdi SamadiApp’s sandbox folder on a simulatorIf your app works with files, testing on a device is a pain. Wouldn’t be nice if you can control the content of the Documents folder, on…Mar 18, 2023Mar 18, 2023
Mehdi SamadiRegular Expressions in Swift (Easy Way)Working with NSRegularExpression is not fun but I found this cool way from here that uses the range function of the String class. Just call…Jan 23, 2023Jan 23, 2023
Mehdi SamadiConstructor in swiftIn swift, when you are thinking about the constructor there is only the init function, but init is not a constructor because it does not…Sep 17, 2022Sep 17, 2022
Mehdi SamadiCustom Error in SwiftUsually, when an object throws an exception in swift, the concrete error object is an enum. In swift, the Error is a protocol with no…Sep 15, 2022Sep 15, 2022
Mehdi SamadiWhy the MVC is broken?In the movie Arrival, aliens communicate with a linguist through a glass wall. The Alien’s body morphs into shapes and renders a view, to…Sep 15, 2022Sep 15, 2022