1

I'm trying to change the fake carrier name in the iPhone simulator as illustrated in the link: http://www.cocoadevnation.com/2009/11/15/change-iphone-simulator-carrier-string/

The problem is I can do it on the 4.0 iOS simulator but on successive iOS versions (say at least 4.3) apparently this trick is not working any more.

Any of you know how to make it work?

Fuzzy Mind
  • 101
  • 7

3 Answers3

4

Actually the problem does have a solution -- it's just changed. The information for the carrier is now read from the Springboard.strings file, located at

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator60.sdk/System/Library/CoreServices/SpringBoard.app/English.lproj/SpringBoard.strings

Note the simulator version part of this path will differ according to the version of XCode you are using -- I'm using 4.5. Note also that the default configuration for this file is binary but you can convert to XCode-editable-form with

plutil -convert xml1 Springboard.strings

Once you've done that, edit and change the value for the key SIMULATOR_CARRIER_STRING to what you want to use. You can use this same technique for non-EN languages--just edit the appropriate .../<lang.lproj>/Springboard.strings file.

jstevenco
  • 2,913
  • 2
  • 25
  • 36
  • I just want to add for newbies like me that I had to copy the file to another folder first and specify an additional output parameter to make it work. e.g plutil -convert xml1 Springboard.strings -o Springboard.txt After that I changed the ending to .strings and copied the file back to the simulator folder. – Henning Schulz Dec 13 '12 at 13:03
  • Just wanted to let you guys know, the new path for iOS 7 is: /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator7.0.sdk/System/Library/CoreServices/SpringBoard.app/en.lproj – KrauseFx Dec 07 '13 at 22:28
1

I wrote a Python script based on krausefx's answer from another thread on the same topic.

It allows you to change the carrier name for certain or all languages with just a short call from the command line. You can also restore all of them to the default. I hope you enjoy it.

PS: It's iOS 7 only but could easily be changed to work with iOS 6.

Community
  • 1
  • 1
flo
  • 686
  • 5
  • 20
0

For anyone interested, I found out that starting from the iOS 4.2 version, the iPhone simulator does not honor SBFakeCarrier nor SBFakeTime and SBFakeTime preferences. So the problem has no solution.

Fuzzy Mind
  • 101
  • 7