Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

OnNightfall

macrumors regular
Original poster
May 13, 2010
234
0
Hey guys, question... My brother has an iPhone 3G on 3.1.2. He wants to go 4.1 but I'm sorry, iPhone 3G's run like $h1t on 4.1. So I told him to stick at 3.1.2 cause the phone will run the fastest on that firmware. The problem is all the kool new software only run on 4.0 or above nowadays. So is their any way to trick the App Store into thinking he's on 4.1 to allow him to download an App? or is their another way he can download Apps that are only 4.0 and above compatable on firmware 3.1.2? He is jail broken btw. Thanks!
 
If he's jailbroken, yes. But remember, most if not all apps that require will crash the iPhone and not work at all. So, it just isn't worth the hassle.
 
If he's jailbroken, yes. But remember, most if not all apps that require will crash the iPhone and not work at all. So, it just isn't worth the hassle.

Really? well out of total curiosity, even if it'll crash the phone, how do you do it?
 
Once your iDevice is jailbroken you can manually change the SystemVersion.plist file in CoreServices or by using one of the firmware version changers in Cydia.
 
Once your iDevice is jailbroken you can manually change the SystemVersion.plist file in CoreServices or by using one of the firmware version changers in Cydia.

I tried manually changing the version with iFile in the plist and it did not work. I thought it would too =-( I looked for firmware version changers on Cydia but none would would with 3.1.2 to spoof 4.0. Maybe you know of a repo I don't? please let me know?
 
Here's what to change for a 4.1 plist: ProductBuildVersion: 8B117, ProductVersion 4.1 Don't forget to reboot your iPhone.
 
iPhone binaries link to Frameworks that exist within the OS. If the app requires 4.x+, the app was linked with those newer versions of the framework. I would be extremely surprised to see any such apps actually work.

The more useful thing to do would be to ask the developer to link to the older OS version if they're not using iOS 4 specific features. I typically build for the oldest iOS version I'm permitted to by Apple. If they are using 4.0+ features, then you can be assured that simply changing the version string is not going to work anyway.
 
You can usually get away with doing this with minor revisions (3.1.2 to 3.1.3 or 4.0.1 to 4.0.2) because often they are just bug fix revisions. Major revisions, like 3.1.3 to 4.0 or 4.1 often involve major "under the hood" changes that you can't just ignore by changing a version number in a configuration file. As the person above mentions, often Frameworks and libraries have changed completely.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.