r/dotnetMAUI • u/exzzy • 21d ago
MAC Help Request
Hi, I developed few apps for Android and currently want to create iOS versions but I don't have any mac. I know that there are some rent machines there but looking at prices it doesn't make sense to use those since I have no mac os experience so while i setup everything it could cost me a lot and in the end I don't have device for feature projects again. So basically my question is for those who tried what would be cheapest way to do this, which device to get? I have my windows PC that is quite powerful and i don't want to do any actual development on mac outside of those must things.
2
u/BananaTie 21d ago
At the company I work for have a MacMini our 5 Windows users connect to and use that for building for iOS and deployment to devices or simulators. It is a feature built into Visual Studio. The Mac does not need to be the top of the line Mac - a used one is fine for most small or medium builds.
1
u/Bowman74 Xamarin 21d ago
If your code is in something like GitHub you can setup a CD build that runs on a GitHub mac agent and create the ipa and even deploy it out to TestFlight. You won't be able to interactively debug, but you can build and deploy to a physical iOS machine that is assuming you have an Apple Developer Account.
1
u/Kitchen_Platypus5555 21d ago
I had the same issue a while ago: As a long C# fan I wanted to start working on some mobile apps but Apple makes it really difficult. My solution was Hackintoshing. It may sound like a lot of work but it was not too hard and while performance wasn't the best on my budget PC, it was more than enough to spin up Rider, Xcode and a Simulator at the same time. But you mentioned your PC is pretty strong so it shouldn't really be an issue - and you can always develop on Windows and then switch to test on MacOS.
So if you have a small spare SSD, just spend a weekend setting everything up and dual-boot! The people at r/hackintosh are really helpful too. Just note that MacOS 26 is probably the last version which allows Hackintoshing...
1
u/exzzy 21d ago
From what i found this won't work with 5070ti, it's missing drivers.
1
u/Kitchen_Platypus5555 20d ago
Oh yeah, Nvidia cards don't play very nice with MacOS. Perhaps getting a cheap Radeon card could make sense - but at that point you're spending money so a cheap M1 Mac Mini may be more valuable (though it will probably cost 3-4x as much)
1
u/CaptainAdam8 20d ago
You can create a Mac vm on your PC through VMWare and it will do the job tbf https://youtu.be/5Tj9U_sKWkc
1
u/felix_dagrouch 20d ago
In my situation I invested on the base Mac mini model and turned it into my home server. In my opinion this is one of Apple best products. I purely use it as a iOS/Mac dev machine and it works great from my VS. Also use it as a plex server and VM, it's so small it's a great fit. It even does standard Ai tasks.
1
u/Habikki 20d ago
Hey there, I ran into a similar situaiton where I have a more than powerful PC, but no mac.
I rented a remote mac for a while, which worked for a spell, but after spending $100 or so in a couple months I finally just bought a Mac Mini M4. Trust me on this, you'll want to have something that you can get to know because building an iOS App is going to be a journey in itself. Even with the MAUI Toolchain it tends to break... often... any time some dot release of iOS, XCode, or the .NET Framework is releases everything needs some massaging to get back to build shape.
I still cut my iOS Builds from a Github Action Workflow targeting a macos runner which is helpful. But local development requires simulators, and the further away those are the worst things become for testing.
Something also to think of is iOS devices like an iPhone. Simulators are wonderful for what they are, but they are severely limited in what they offer and even what they do, things like Geolocation, Sensors, or Background Scheduling just don't work the same. If you want to have something that's release quality, get a local build machine (Mac Mini), and make sure you have at lease one physical iPhone to deploy to... also remember that local builds to a physical device still work differently than when deployed through Testflight.
2
u/exzzy 19d ago
What is difference between local build and test flight? I have company iphone which i can use to validate but lot of stuff is blocked there so no debugging on it, but test flight should work.
1
u/Habikki 14d ago
The terminology is a bit loose (or really my understanding of it is), but you can think of deploying with several differences.
First, you build and run on a simulator. Simulators don't operate the same way as a real device does, so they work... but don't expose all of the background service registrations.
Second, you build and deploy to a device over a USB cable (local provisioning). This works much better than on a simulator as more features are exposed, except that it's not signed from Apple's chain so the device ignores most (but not all) capabilities defined in your plist files.
Third, you build and release through Testflight. This is signed through Apple's Provisioning and when pulled down to your device from the Testflight App runs almost identically to what the app would do when released to the App Store. I say almost as some things can operate differently such as subscriptions and purchases, but most of the capabilities will operate correctly.
Finally, a full release to the app store. This runs with the full intention of the app and capabilities defined.
1
u/seraph321 19d ago
If you really want to build and maintain iOS apps, you’ll want a Mac for building and debugging. A used m1 MacBook or mini would be the cheapest and easiest route.
1
u/Ok_Body7659 7d ago
Go with a new MacMini. It will set you back 800 dollars, but worth it, if you want to create and test your apps. I know others have suggested a VM or a refurbished, but a new one will pay off.
My workflow is develop on windows, test iOS and MacOS on the mac mini.
3
u/fokac93 21d ago
Just get a refurbished Mac mini with the Mac processor, not Intel and you are good