I’ve used and created many different CI pipelines in the past, everything from
make to TFS. Travis CI is my current favourite, but it is always useful to use new services or technologies to solve familiar problems. There’s a difference between Windows Workflow Foundation and
Introducing transparent-png, a simple Python script for creating a transparent PNG of a given size.
An important concept in app development is the D in SOLID, the Dependency inversion principle. While using this technique together with the Interface segregation principle you end up with a lot of interfaces. And with cross-platform Xamarin apps, you’ll sometimes have different implementations on iOS and Android with some fake service implementations for testing too.
When creating iOS apps using Xamarin, another good practice is to enable
linking. Enabling linking will remove unused code before compilation and decreases the size of your app manyfold. There’s a difference between 80 and 20 MB, even in 2019.
Xamarin Forms has a built-in DependencyService to help manage the interfaces and their implementations, but I prefer the always excellent LightInject. And after adding LigthInject to my latest Xamarin Forms app and enabling linking, this error message appeared on startup:
VTable setup of type LightInject.ServiceContainer failed
I created an API internal to our organization today. The API needed to access an SQL Server database and worked perfectly running on my local machine on the corporate network.
Then the time came to run it in a Docker container. And it failed. The API could not connect to the SQL database.
One of my favorite professional activities is educating students on technical topics they’ve not yet encountered at the university.
Yesterday I gave a talk on cross-platform mobile development using C# and Xamarin for a group of students from NORD University in Bodø, Norway. The goal of the talk was to show how easy it is to create a cross-platform app using modern tools and give them a baseline from which they can create their own app.
Most workout trackers are demanding. They require you to enter a lot of information just to track your progress and many shame you if you do not work out regularly. Simplest Workout Tracker has another philosophy: If you’ve exercised, that’s great! If not, there’s always another day.
Book Scanner version 1.7.2 is finally completed and it’s the most awesome version of Book Scanner yet!
Book Scanner now works and looks good on all supported iOS devices and plays nicely with iOS 12.
Book Scanner version 1.7.2 was coded to perfection and ready for shipping. Or so I thought:
ERROR ITMS-90362: “Invalid Info.plist value. The value for the key ‘CFBundleExecutable’ in bundle BookScanneriOS.app/PlugIns/BookScanneriOSLatestBookExtension.appex is invalid. CFBundleExecutable must match the name of the bundle directory minus its extension.”
Can you add the source code for this extension and instructions on building it?
I’ve used Xamarin.UITest for both verifying the UI of my apps and automate screenshot taking for the App Store. This has worked, but with every iOS release, I’ve to tweak my tests to get them to run again.
This is what I had to do to get the default UITest template to run with Golden Ratio Calculator for iOS 12.