"Failed to set plugin placeholders" message?
Asked Answered
D

14

44

Xcode 9.1 Simulator 10.0 OSX 10.12.6

I would like to upload a new build of my sticker pack to iTunes Connect. But Product > Archive is grayed out. So I ran the Simulator and got ""Failed to set plugin placeholders for (name)."

Only one answer anywhere in the whole world -- delete Derived Data Folder. I did and got same error message.

BTW Under General in Xcode the Version is 1. The build is 1.4. Does the build number have to be changed somewhere else as well?

Doubleedged answered 17/11, 2017 at 5:57 Comment(2)
No one? I'm the only one this is happening to?Doubleedged
Did you found a solution for this?Demagogue
K
120

What worked for me, Go to your target Build Phases and on "Embedded App Extensions" check the "Copy only when installing" checkbox.

enter image description here

Ketchum answered 3/9, 2018 at 21:45 Comment(3)
What does that flag do?Whoop
Thank you, James. Much appreciated.Madisonmadlen
this doesn't work for widgets. please let me know if there is any fix for widgets.Antionetteantioxidant
A
31

I had the same problem today. In my situation I had a different identifier in my original app than in the extension identifier "base". The extension has to have the same identifier as the original app plus something else.

E.g:

  • Dummy App: com.company.dummy-app
  • Dummy App Extension: com.company.dummy-app.extensionName

After Xcode told me that, I changed my wrong names to look like above and then the problem occurred: The problem was, that I had "automatic manage signing" turned on but Xcode didn't recognize that I changed the identifier.

Solution: Just change the identifier again and check if "automatic manage signing" has created a new provisioning profile. Deleting derived data may also helps.

Alfrediaalfredo answered 4/1, 2018 at 11:47 Comment(1)
This worked for me. Even though Xcode labeled the correct bundle id in the provisioning profile info modal. I just had to continually add and remove letters from my bundle ID until the certificates were correctly assigned.Marmion
T
7

It took me a while to find the fix for this. First go to build phases click the X beside the embedded and delete it. This should fix the problem it is what worked for me.

Trusting answered 28/11, 2017 at 23:43 Comment(1)
Thank you - much appreciatedSidon
K
7

You must have different bundleIds for your project and extension.

Example:

  • App bundleId: com.companyName.appName
  • Extension bundleId: com.companyName.appName.extensionName

I got this error when I set one configuration file for my project and notification service.

I changed the notification service configuration file to the correct one and this fixed my problem. enter image description here

Kraigkrait answered 23/12, 2019 at 10:42 Comment(0)
C
5

This is the solution:

app bundle identifier: com.SohaibSiddique.ShopApp
extension bundle identifier: com.SohaibSiddique.ShopApp.Notification

It may work for you.

Closer answered 10/3, 2019 at 17:10 Comment(1)
Perfectly explained. Worked for meEyeopening
I
4

It may also happen if the bundle identifier of the extension doesn't have the app identifier as a prefix.

E.g. this would raise the OP issue:

  • com.example.App
  • com.example.AppExtension

Instead:

  • com.example.App
  • com.example.App.Extension

will work as expected.

Illbred answered 8/9, 2019 at 8:11 Comment(0)
S
3

Click details button in Error prompt and check the error log. In mycase it was "bundleVersion must be set in placeholder attributes for a plugin placeholder", Build version was empty in one of my target led me into this error.

Schnur answered 12/11, 2019 at 9:29 Comment(0)
S
2

A clean and rebuild will often fix this issue. If that doesn't work, try removing appex files which often cache items which xcode should have rebuilt:

find ~/Library/Developer/Xcode/DerivedData -name "*.appex" -exec rm -fr {} \;
Stormi answered 17/2, 2018 at 14:25 Comment(0)
S
2

Product->Clean Build Folder

Solved it for me.

Selfdelusion answered 22/3, 2019 at 10:24 Comment(1)
Solved it for me too. Thank you!Salangi
E
1

In my case, even though I was respecting the your.bundle.identifiex.<+extensionSuffixHere> format, I had both the Widget and AppExtension with the same bundle Id.

Apparently, even though on build time it doesn't create any problem, on runtime it gave me this error. So remember to set differently in case you're in the same situation!

Eisteddfod answered 22/9, 2020 at 10:45 Comment(0)
T
1

First make sure your Bundle ID

com.apple.product

com.apple.product.topshelf

Then create a certificates from developer site and install

Now Clean Build folder and Run

It works now...!

Tyranny answered 10/8, 2021 at 7:38 Comment(0)
B
1

Widgets Extensions

This can happen with embedded widgets when the NSExtension property is not set correctly in the Info.plist for the widget.

NSExtension property of type Dictionary with the sub-property NSExtensionPointIdentifier of type String set to com.apple.widgetkit-extension.

Burson answered 10/10, 2021 at 4:52 Comment(0)
I
0

For me, one of my build targets had the wrong bundle identifier set (it was set to the bundle identifier of another target), hence the conflict / duplicate. I changed it to reflect its own Display Name and then the build worked again.

Isopod answered 13/6, 2022 at 7:8 Comment(0)
R
0

My Problem was that i malformed the info.plist from ShareExtension. Go line by line through your .plist script and check for wrong syntax or similar.

Roughish answered 18/9, 2022 at 22:33 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.