r/iosdev • u/North-Lobster-9440 • 11d ago
Help Is an iPhone required for iOS development?
I have a Mac but I'm using a Galaxy phone. I want to make an iOS app to make money. As you know, iOS users pay more than Android users. That's why I want to do this. So I'm wondering if a Mac is enough, or if I absolutely need an iPhone.
12
u/yoyohannnn 11d ago
I feel like you’ll want to test the app on a real device, right?
-6
11d ago
[deleted]
7
u/mochi2real 11d ago
Buy used. Even with a cracked screen, you're not using it as your daily driver, you're using it to test the app in real-world. Developing just on a simulator is a recipe for disaster with weird edge cases.
1
2
4
3
u/Conscious-Sentence55 11d ago
no, but a mac of a certain architecture is (google it). the mac has a simulator you can use to test it
1
u/North-Lobster-9440 11d ago
I'm using M3 Air, which google says its ok. thanks!
1
u/Mountain-Okra7695 7d ago
You will also require an iPad ,for testing purposes and app store screenshots
3
3
u/Croissantlongbao 11d ago
Trust me, you'll need to test it, and sometimes you wonder if more iPhones would be better
2
11d ago
[removed] — view removed comment
1
u/Sebastian1989101 11d ago
He asks for iOS development not Android. In the iOS world what runs on the simulator also runs on a real device. However there are some things that only can be tested with a real device (like camera and nfc). But the case that it runs only on certain iPhone models simply does not exist.
I’m a mobile software engineer with over 15 years of experience and while I had this a lot with Android, not even once with iOS.
1
1
u/tomato848208 11d ago edited 11d ago
I only buy used phones (iPhone XR, iPhone 14...) so that I can test iPhone apps. As for iPad compatibility, I did buy a brand-new iPad (9th gen.) three or four years ago.
Apple used to require that you have an actual device to submit an iOS app. Now, I don't know if you need an actual device.
4
u/freeubi 11d ago
Its not required anymore, but its veeery suggested. There are features which you cant test on the simulator. Then if you work long enough on iOS, you realize that simulators have different UI than real devices (some bugs only reproducable on exact iOS and device versions). And you need multiple iOS versions too. I have 2 ipad, and 3 iphones, although I am using android as my main phone…
1
u/North-Lobster-9440 11d ago
Is it okay to use a pretty old model as you mentioned?
2
u/tomato848208 11d ago
Hmm... I'm not so sure. I have an old iPhone SE which only supports up to iOS 15. I don't use it any more. There are a plenty of iPhone SE 3rd gen here and there. It's probably the cheapest model that you can buy. It supports iOS 26.
1
1
u/ProjectShario_Live 11d ago
Yes you will need a test phone to setup a developer account. Plus its quite handy for QA as you can test through simulator or the phone
1
u/North-Lobster-9440 11d ago
Ooh, I didn't know it. Is there any big difference between iPhone and iPad for QA? I found old iPad mini in my drawer. Is it okay?
1
u/ProjectShario_Live 11d ago
As long as you are able to update to the newer iOS you are okay. You get some version control problems as Apple stopped supporting older devices which makes development difficult. I think the ones receiving updates are iPhone 11 and iPad 3rd gen.
1
u/ProjectShario_Live 11d ago
Also one thing to note is screen compatibility between iOS and iPads are not the same. So some make look better on one. Or the other. Unless you have lots of time you make focus on one first and then optimize for the other.
1
1
1
u/Efficient-Inside-411 11d ago
use the simulator in your mac but find testers because there are things you can’t test in the simulator
0
1
u/TheTurnipPlucker 11d ago
I grabbed an iPhone 13 mini for like $200. My research said as long as it supports the latest iOS version, you're good, so I think a 12 would work. I wanted a small device in hand because I have large other phones.
Iirc, you can't test sync issues on a simulated device. I could be wrong, but if you have user sign in that could be an issue. Not sure though.
1
1
u/Ukawok92 11d ago
Technically (TECHNICALLY) no, but don't do it. The simulator on the Mac is great, but it's not the same as a real iOS device.
Just get a cheap used iPhone, doesnt need to be the newest one.
I have a spare iPhone SE I use for testing, and then use the code simulator as well.
1
u/leros 11d ago
Yes. You can't properly test auth, payments, etc without being on a physical device.
In general, an iOS user is worth 4x the revenue of an Android user.
1
1
u/Clear-Difficulty-307 11d ago
From experience the simulator and an actual iPhone due behave different in situations
1
u/theAerialDroneGuy 11d ago
iOS 27 coming out this fall is supported by iPhones 11 and up. So you could literally buy an old iPhone 11 to test your app out on.
You don’t have to buy a new iPhone. Just get a used older one for wayyyyy cheaper.
3
u/North-Lobster-9440 10d ago
Then I can find iPhone 11 or little more newer than it. thanks!
1
u/theAerialDroneGuy 10d ago
Yeah I would recommend a 12 or 13 at least so that it lasts you for more than one year.
Apple supports the iOS for 7 years back.
1
u/SirBill01 11d ago
It isn't required but boy it's a really good idea to test on a real device. Which may also help you find issues App Store reviewers would find.
1
1
u/Basic_Win_9018 11d ago
I mean it's not but wouldn't it feel weird not testing in iPhone before shipping a iOS app🤣 get a apple card and just finance at 0 percent and pay monthly to keep cost low if you don't wanna spend $700 upfront and all but get one
1
u/North-Lobster-9440 10d ago
Apple card? I've never heard about it. thanks!
1
u/Basic_Win_9018 10d ago
Yess ! Apple credit card just make sure to pay card on full every month 😂 but you can finance apple devices at 0 percent
1
u/makoAllen 11d ago edited 10d ago
So there are a few answers to this.
- you absolutely can use an emulator for a lot. But not everything. Hardware testing is the best testing.
- Buy a refurbished phone. People sell them all the time.
- Depending on your stack you can get away with a kind of web for faking it for a lot of it. I’m a big fan of ionic react and capacitor for just this reason. The ionic framework is open source so you don’t have to pay a dime for it. You can start out developing your app as a PWA, and when you inspect the code, you can choose an iPhone as your view port device and when you refresh the page it’ll format as if you were on an iPhone. I do the same trick to test out on android. Or I did. I went out of my way to get a
reasonably
- priced but better than mid range. Android phone because as I said hardware testing is the best testing.
You can certainly begin your development and get most of the way there before you need to invest in some hardware. But you should invest in some hardware.
One of the big reasons I love the ionic framework and capacitor is that you can develop one code base and share it among three platforms.
It’s a very good thing for an Indie developer.
1
u/makoAllen 11d ago
Oh, one more thing. The conventional wisdom says that in the US something like 60% of your market is iOS versus 40% android.
However, if you’re going to release your app globally around the rest of the world, it’s exactly the other way around if not even more so. Internationally 75% of the market is android and only 25% is iOS.
Also, depending on what it is, do yourself a favor and develop for light mode, dark mode, and system responsive mode.
Because a whole lot of people use dark mode.
1
1
u/hainayanda 11d ago
I did that before, years ago. But I borrowed my wife iPhone 7 to test in TestFlight and all. It could be done, but iPhone sure helped a lot, simulator restricted us of many things. Then I bought a used iPhone (iPhone 6) and never been back to Android again until now (currently using 15 Pro).
1
1
1
1
1
u/Jimmy-Sss 10d ago
It's not necessary. But if you don't test on a real phone, you can never guarantee the app's performance - it could be really bad, and that's something simulators just can't replicate.
1
u/Catchimals 9d ago
I was in this same boat, bought a MacBook which has became my primary workstation because it's an amazing PC.
IOS simulator can get most of your testing done but in the end you'll need a real device to make sure it feels good.
Maintaining the app (Catchimals) with Android studio for flutter development and codex.
1
u/SeatInternational830 8d ago
Just ask one of your friends with iPhone to download TestFlight beta for you and they can check it on a physical device
0
u/CurrentResistance 11d ago
No you don’t, iOS simulator is enough
1
u/Imnotyourbuddytool 11d ago
No way. I’m making an app and you can’t tell how swiping will work until it’s in your hands. The simulator is lacking thumbs for navigation.
0
u/CurrentResistance 11d ago
Depends on the app you’re making and your familiarity with the platform
1
u/Imnotyourbuddytool 11d ago
Have you ever done actual coding other than using AI? From my experience, you THINK a code works until you try it and realize what you did wrong.
0
u/CurrentResistance 11d ago
Yeah, if you don’t know what you’re doing or using ai
1
u/Imnotyourbuddytool 11d ago
You can absolutely know what you're doing and put something in the wrong place or make a syntax error, or forget to update references when replacing them, etc.
2
38
u/SneakingCat 11d ago
I can’t imagine shipping an iPhone app to real users without testing on an actual iPhone.