Posts

Showing posts from 2021

Automated Deployment with Fastlane on iOS

Image
  As iOS developers, we’ve all experienced the satisfying feeling of finally finishing coding an app and being excited to share it with users. Prior to users enjoying the app, there is only one more thing left to do- release the app to the App Store! Surely, you think it shouldn’t take longer than a few minutes of your time? Oh, you’re completely wrong. In order to reach that step, the following is needed: Ensure you have the right certificates and provisioning profiles in place. Create a variety of screenshots of the app. Build the app. Upload the app to App Store Connect. Log in to App Store Connect, input the correct metadata and inspect the upload. Submit the app for review and wait. These steps are just one approach to deploying your app as there are many more aspects that should be considered, such as dealing with build/version numbers, running tests, uploading beta releases etc. Why is this so difficult? Well actually, it used to be difficult but thanks to Fastlane, all of the m

NSPredicate Cheatsheet, Basic, compound, Aggregate, String, comparison operators

  Format string summary @"attributeName == %@" object’s attributeName value is equal to value passed in @"%K == %@" pass a string variable to %K, it will be represented as a keypath, then check if it’s value is equal to value passed in @"%name IN $NAME_LIST" templated for predicate, checks if the value of key name is in $NAME_LIST. Uses predicateWithSubstitutionVariables @"'name' IN $NAME_LIST" checks if the constant value ‘name’ is in $NAME_LIST. Uses predicateWithSubstitutionVariables [NSPredicate predicateWithFormat: @"title == %@", @"minecraft"] String comparison operators BEGINSWITH Left hand expression begins with the right hand expression CONTAINS Left hand expression contains the right hand expression ENDSWITH Left hand expression ends with the right hand expression LIKE Left hand expression equals the right hand expression: ? and * are allowed as wildcard characters, where ? matches 1 character and * matches 0