Debugging WidgetKit install error "Failed to get descriptors for extensionBundleID"

I'm trying to create an iOS 14 WidgetKit widget. It's compiling, but when I try to run it, on either simulator or device, I get the error below:

Any suggestions on how to debug this?

Details

SendProcessControlEvent:toPid: encountered an error: Error Domain=com.apple.dt.deviceprocesscontrolservice Code=8
"Failed to show Widget 'com.myapp.dev.WidgetKitExtension'
error: Error Domain=SBAvocadoDebuggingControllerErrorDomain Code=1
"Failed to get descriptors for extensionBundleID (com.myapp.dev.WidgetKitExtension)"
UserInfo={NSLocalizedDescription=Failed to get descriptors for extensionBundleID (com.myapp.dev.WidgetKitExtension)}."
UserInfo={NSLocalizedDescription=Failed to show Widget 'com.myapp.dev.WidgetKitExtension'
error: Error Domain=SBAvocadoDebuggingControllerErrorDomain Code=1 "Failed to get descriptors for extensionBundleID (com.myapp.dev.WidgetKitExtension)"
UserInfo={NSLocalizedDescription=Failed to get descriptors for extensionBundleID (com.myapp.dev.WidgetKitExtension)}.,
NSUnderlyingError=0x7fc0b0d12540 {Error Domain=SBAvocadoDebuggingControllerErrorDomain
Code=1 "Failed to get descriptors for extensionBundleID (com.myapp.dev.WidgetKitExtension)"
UserInfo={NSLocalizedDescription=Failed to get descriptors for extensionBundleID (com.myapp.dev.WidgetKitExtension)}}}
Domain: DTXMessage
Code: 1
  • -


System Information

macOS Version 10.15.5 (Build 19F101)
Xcode 12.0 (17177)

Replies

Does deleting the app from the device or erasing the simulator help with this issue?

If not, please submit a feedback with Xcode, and simulator or device diagnostics.

Thank you
Thanks! Unfortunately, deleting the app from the device and/or erasing the simulator did not help.

It's likely to be a build configuration issue on my end. I am using bazel to build the extension, starting from a working old-style Today extension and from the "EmojiRangerWidget" sample code. Presumably there's some subtle difference between how old-style extensions are built and how WidgetKit extensions are built.

So far the only difference I've seen is that the Info.plist has a NSExtensionPointIdentifier in the WidgetKit world.
OK, I figured it out. The bazel iosextension rule needs to be updated to generate iOS 14-compatible extensions.

Currently it is using -e
NSExtensionMain when linking, which is correct for pre-iOS 14 extensions.

That needs to be changed (removed) in order for iOS 14 style WidgetKit extensions (that use @main to mark the entrypoint) to be linked correctly.

I'll contact the bazel folks and to let them know they need to update enhance bazel to handle iOS 14-compatible extensions.
(Sorry for the italic formatting in my previous message. The symbol is "ios_extension", which is being interpreted as italics.)
Glad you figured it out!
I have the same problem, I just add a new widget to my old Objective-C project. when run this widget, crash, then give me the same details.
I fixed this issue by change to New Build System settings in File -> Workspace settings:
  • Shared workspace settings: change to New Build System (Default)

  • Per-user workspace settings: change to Use Shared Setting.

Note: using New Build System (Default), I got some error due to duplicated file - just remove those files or change name


@letiendungbk is right, this works for me.
I added a Widget Extension to my app, tried to run the example provided when creating the extension, and did what @letiendungbk suggested and still getting the error:

SendProcessControlEvent:toPid: encountered an error: Error Domain=com.apple.dt.deviceprocesscontrolservice Code=8 "Failed to show Widget 'com.fisher-price.smart-connect.CartwheelWidget' error: Error Domain=SBAvocadoDebuggingControllerErrorDomain Code=1 "Failed to get descriptors for extensionBundleID (com.fisher-price.smart-connect.CartwheelWidget)" UserInfo={NSLocalizedDescription=Failed to get descriptors for extensionBundleID (com.fisher-price.smart-connect.CartwheelWidget)}." UserInfo={NSLocalizedDescription=Failed to show Widget 'com.fisher-price.smart-connect.CartwheelWidget' error: Error Domain=SBAvocadoDebuggingControllerErrorDomain Code=1 "Failed to get descriptors for extensionBundleID (com.fisher-price.smart-connect.CartwheelWidget)" UserInfo={NSLocalizedDescription=Failed to get descriptors for extensionBundleID (com.fisher-price.smart-connect.CartwheelWidget)}., NSUnderlyingError=0x102e0c060 {Error Domain=SBAvocadoDebuggingControllerErrorDomain Code=1 "Failed to get descriptors for extensionBundleID (com.fisher-price.smart-connect.CartwheelWidget)" UserInfo={NSLocalizedDescription=Failed to get descriptors for extensionBundleID (com.fisher-price.smart-connect.CartwheelWidget)}}}

Domain: DTXMessage

Code: 1
  • -





System Information



macOS Version 10.15.6 (Build 19G73)

Xcode 12.0 (17189.4)


Any suggestion?
I have the same problem, cleaning or building with new build system etc - nothing helps.
The problem is present in the newest iOS 14 beta 4 and in the newest build of Xcode.

SendProcessControlEvent:toPid: encountered an error: Error Domain=com.apple.dt.deviceprocesscontrolservice Code=8 "Failed to show Widget '*' error: Error Domain=SBAvocadoDebuggingControllerErrorDomain Code=1 "Failed to get descriptors for extensionBundleID (*)" UserInfo={NSLocalizedDescription=Failed to get descriptors for extensionBundleID (*)}." UserInfo={NSLocalizedDescription=Failed to show Widget '*' error: Error Domain=SBAvocadoDebuggingControllerErrorDomain Code=1 "Failed to get descriptors for extensionBundleID (*)" UserInfo={NSLocalizedDescription=Failed to get descriptors for extensionBundleID (*)}., NSUnderlyingError=0x10f953420 {Error Domain=SBAvocadoDebuggingControllerErrorDomain Code=1 "Failed to get descriptors for extensionBundleID (*)" UserInfo={NSLocalizedDescription=Failed to get descriptors for extensionBundleID (*)}}}
Domain: DTXMessage
Code: 1
System Information
macOS Version 10.15.6 (Build 19G73)
Xcode 12.0 (17189.4) BlockQuote

Someone can help?



I'm using XCode 12 beta 4 and creating a new SwiftUI project. I also get this error trying to run on simulator the first time. I uninstalled the app, checked @letiendungbk suggestion but all the settings are exactly like what he said so I didn't change anything. I reran and it (the sample) works now. Strange

System Information

macOS Version 11.0 (Build 20A5343i)
Xcode 12.0 (17200.1)
I keep getting the same error. It seems that maybe 1 in 5 times it will work.
I managed to solve it in my case. I had recently configured my app to run on Mac as well as a test. To do that, I had to add a Runpath Search Path @executable_path/../Frameworks in the Widget Extension's Build Settings.

Removing that resolved the issue.
I have the same issue. The message that I get is

Code Block
SendProcessControlEvent:toPid: encountered an error: Error Domain=com.apple.dt.deviceprocesscontrolservice Code=8 "Failed to show Widget 'com.ferdinandgoeldner.breadme.release.BreadMe-Widget' error: Error Domain=SBAvocadoDebuggingControllerErrorDomain Code=1


Funny thing is that for my beta and my debug build configuration it works just fine.
I noticed this only after the AppStore Review came to me and said that my widget did not show up in the library on the release build.

Does anyone have an idea where this could come from?
Do I need to specify some value in the info.plist?

P.S.: I recently tried to run the app on iPad but found that I was not yet ready to support iPad. Don't know if it worked before but turning that toggle on and off might have changed some build settings.
Quick check in, I just downloaded Xcode Beta 5 and installed the new iOS Beta 5 and now the issues are gone.