Can't change iPhone watch app complication picker app name

I have an objective-c watch app and have added a swift widget style compilation to it and am having problems. The complication works fine but the name in the iPhone watch app complication picker stubbornly remains as the watchkit app name despite me trying various ways of changing it.

Here are the various CF bundle name and display name values I am using:

phone app values

CFBundleIdentifier - com.Distribution-Systems-Associates.Tennis-Watch-v1

CFBundleName - $(PRODUCT_NAME)

CFBundleDisplayName - Tennis Scorekeeper

watchkit app

CFBundleIdentifier - com.Distribution-Systems-Associates.Tennis-Watch-v1.watchkitapp

CFBundleName - Tennis Scorekeeper

CFBundleDisplayName - Tennis Scorekeeper

WatchKit extension

CFBundleIdentifier - com.Distribution-Systems-Associates.Tennis-Watch-v1.watchkitapp.watchkitextension

CFBundleName - Tennis Scorekeeper

CFBundleDisplayName - Tennis Scorekeeper

__Watchkit complication __

CFBundleIdentifier - com.Distribution-Systems-Associates.Tennis-Watch-v1.watchkitapp.watchkitextension.Tennis-Watch-V1-Complication

Changing the values in the complication doesn't seem to matter. Every other name in both my iPhone and watch apps are as expected.

ChatGPT suggested that I try adding a localized name in the watchkit app but that didn't seem to do much of anything useful. I have run this though Chat quite a bit to see if I could get any accidental insights that way and while it has been interesting, it has also been not terribly helpful.

I didn't post any of the complication code because that seems to be fine. However, I can do that if needed. The complication works as intended (starts the app). The various names everywhere else show up as intended. It's just that this one name refuses to be overridden. Thoughts?

Which versions of Xcode, iOS and watchOS are you using?

There was a version of iOS where this happened, regardless of what you entered into those info.plist strings.

Also, I highly recommend against using ChatGPT or any other AI tools for this sort of thing. They miss the nuances that a human will pick up in your questions, and - as you've experienced - they lead you down a bunch of rabbit holes that get you nowhere and just waste your time.

You are far better off asking your questions to real humans in the forums.

The name should be the bundle display name of the watchOS app, and I just confirmed that with the Transferring data with Watch Connectivity sample and the following steps:

  1. Download the sample and manage to run the app on my iPhone and paired Apple Watch.
  2. In the iOS Watch app, find the section name shown in the first screenshot in the original post, and confirm it is "SimpleWatchConnectivity Watch App".
  3. In the Xcode project, find the Bundle display name entry in the Info.plist of the watchOS app, confirm that the value is "SimpleWatchConnectivity Watch App" as well.
  4. Change the value of the entry to "SimpleWatchConnectivity", then run the app again.
  5. In the iOS Watch app, confirm that the section name is now "SimpleWatchConnectivity", consistent with the new bundle display name.

I tested with iPhone 16 Pro + iOS 18.4.1 and Apple Watch Serial 10 + watchOS 11.4(22T251). The project was built with Xcode 16.2 (16C5032a) on macOS 15.4.1 (24E263).

If you see a different result with the same test, I'd be curious if there is anything you do differently.

Best,
——
Ziqiao Chen
 Worldwide Developer Relations.

Another thing I noticed after looking at the download Apple app is that it has a Watchkit App and a widget and no Watchkit Extension. Don't know if that matters or not.

I believe that is highly relevant. The sample app was updated to adopt the modern watchOS app technologies, as discussed in the following technote:

Changed the bundle name of my apps watchkit App and that changed the name of the app in the iPhone water app. I guess this boils down to my Cfbundledisplayname entries being ignored Or overridden.

Given that your value of CFBundleDisplayName does come to play in the other places, this may be worth a feedback report. However, since the sample app does work, you might consider updating your watchOS app to make it single-target. That will be aligned to the configuration of the Apple sample app, which hopefully fixes your issue.

Best,
——
Ziqiao Chen
 Worldwide Developer Relations.

Can't change iPhone watch app complication picker app name
 
 
Q