3

I have tried this in info plist which does not work: CFBundleDisplayName~ipad = "Full app name"

The iPad still displays only the CFBundleDisplayName which is abbreviated for iPhone.

Is there another approach to get a different bundle display name for iPad in a universal app?

iamjustaprogrammer
  • 1,634
  • 2
  • 17
  • 34

3 Answers3

4

It can be done as stated in the apple document link

In iOS 3.2 and later, apps can designate keys in the Info.plist file as being applicable only to specific types of devices. To create a device-specific key, you combine the key name with some special qualifiers using the following pattern:

key_root-platform~device

In this pattern, the key_root portion represents the original name of the key. The and portions are both optional endings that you can use to apply keys to specific platforms or devices. For the platform key, you can specify a value of iphoneos or macos depending on the platform you are targeting.

I think what you have done is right. Just try to delete the app from the device and build and run again.

Community
  • 1
  • 1
LebRon
  • 755
  • 4
  • 24
2

As @LebRon suggested I solved it by setting a separate key for iPad and iPhone,

here is a screenshot which solved it for me,

enter image description here

zaheer
  • 893
  • 13
  • 27
0

No, there is not a way to do it. In order to understand from a code whether the device is iPhone or iPad, you need runtime. And Bundle Display Name cannot be changed at the runtime.

It was explained here: Dynamically set iOS Bundle Display Name in Xcode 4 on Build

Community
  • 1
  • 1
ismailgulek
  • 1,029
  • 1
  • 11
  • 8