Systems | Development | Analytics | API | Testing

Codemagic

Using Mason and bricks in your Flutter app: Beginner's guide

TL;DR: Mason is a Dart package that allows you to create files and directories based on templates. You can use Mason in your Flutter projects by first creating and registering the templates (aka bricks) and then utilizing them to create files and folders. Alternatively, you can use bricks made by others from GitHub or BrickHub.dev.

Why you should use caching for your Codemagic Unity projects

TL;DR: Caching the Library folder can significantly speed up your Unity builds in CI/CD environments. Codemagic CI/CD also allows you to cache the Unity version of your project so that you don’t need to re-download it each time. When you work on complex Unity projects and start adding more and more resources, you’ll quickly notice that the build times in your Codemagic workflow grow as well.

We are decreasing prices thanks to Apple M1 machines

The world is facing the highest inflation rate in ages, and Codemagic is reacting to it by… lowering its prices. These are tough times for everybody, and because we’ve benefited from some recent changes, we wanted to pass on these benefits to all developers so that you have one less thing to worry about.

SwiftUI 4.0: New and updated APIs with code examples

Since Apple started using SwiftUI in its operating systems, it has been experiencing a noticeable evolution, from redesigns of apps to deep system integrations. The team behind SwiftUI has taken into account the feedback they got on Twitter and other social networking sites, resulting in some fantastic APIs to work and play with this year! Here’s a quote from the session on “What’s new in SwiftUI”: So, let’s dive into everything that SwiftUI 4.0 has to offer you!

How to automate delivering Unity apps to testers with CI/CD

TL;DR: It’s critical to deliver the latest builds of your Unity game to testers and stakeholders. You can automate this process by setting up a Codemagic CI/CD pipeline and either using public Codemagic dashboards to access build artifacts or setting up notifications in Discord with links to builds and release notes. Let’s see how we can use automation tools to share our game builds with QA testers and stakeholders!

How to implement Flutter local notifications to boost user engagement

Improving your app’s user engagement is key to its success. One way to prevent churn and increase interactions in your Flutter app is by using notifications. Push notifications are pop-up messages that are displayed outside the app’s UI. These messages can appear when the app is closed or in the background. Push notifications are used to get users’ attention and communicate information to them.

Is your app crashing on TestFlight? Issues and potential solutions

For more details on each of the points, read the article below. After successfully building and testing your iOS app on Codemagic, you may want to upload the build to TestFlight or App Store. Sometimes, you may face a crash that did not happen locally but only when you release the app to your users, either on TestFlight or App Store, making it difficult for you to understand the core problem behind the crash.

How to use Flutter with Google Sheets, Apps Script, and Codemagic

Mark has been tracking his company expenses using Google Sheets for the past six months. Lately, it has been difficult to keep up with tracking expenses using the current method. He wants to ease the process for himself and his staff, but it’s necessary for him to use Google Sheets. What should he do? Mark decides to build an interface that can communicate with Google Sheets.

How to deploy game updates with Unity Cloud Content Delivery and Codemagic

TL;DR: The Unity Cloud Content Delivery tool is a solution that helps deliver data to users in a synchronized way, which speeds up patching and enables live game updates. You can set up a project in Unity’s CCD cloud to deliver your game’s assets to customers’ devices. Additionally, you can integrate CCD with a CI/CD service to ensure consistent delivery of all parts of the updated app and to automate deployment, reducing the amount of manual work.