I have written an Excel Plugin with Office.js with Microsofts yeoman generator/template.
When sideloading it (npm start), it works wonderful. When I replaced the URLs in the manifest with a link to their place on Azure, it does not load anymore. In a browser, the URLs all load as they should and get me what they should get me. Since it's in Azure I'd expect certificates to also not be the issue (also because that'd give me a different error in Excel).
Currently it reads: "Sorry we can't load the add-in. Please make sure you have network connectivity..." I do. The icon above "Start Plugin" in the Ribbon also doesn't load so at least it fails consistently. We have also tried using a network share or the Office365 Admin center (with adjusted URLs in the Manifest to similar results). Well, with some ways of importing the add-in we get "the Manifest is invalid" despite Microsofts validator saying it is fine.
How to actually get any relevant logs from Excel about what precisely is failing would also be a great help since I found nothing manually or on google about the topic.
This is my manifest:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<OfficeApp xmlns="http://schemas.microsoft.com/office/appforoffice/1.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bt="http://schemas.microsoft.com/office/officeappbasictypes/1.0" xmlns:ov="http://schemas.microsoft.com/office/taskpaneappversionoverrides" xsi:type="TaskPaneApp">
<Id>916751c4-49dd-445f-b668-6ea66c72ce15</Id>
<Version>1.0.0.0</Version>
<ProviderName>Contoso</ProviderName>
<DefaultLocale>en-US</DefaultLocale>
<DisplayName DefaultValue="_Wechselkursdifferenzbesteuerung"/>
<Description DefaultValue="Plugin um die Wechselkursdifferenzberechnung zu automatisieren."/>
<IconUrl DefaultValue="https://kind-moss-07d7a0503.5.azurestaticapps.net/assets/icon-32.png"/>
<HighResolutionIconUrl DefaultValue="https://kind-moss-07d7a0503.5.azurestaticapps.net/assets/icon-64.png"/>
<SupportUrl DefaultValue="https://www.contoso.com/help"/>
<AppDomains>
<AppDomain>https://kind-moss-07d7a0503.5.azurestaticapps.net</AppDomain>
</AppDomains>
<Hosts>
<Host Name="Workbook"/>
</Hosts>
<Requirements>
<Sets DefaultMinVersion="1.1">
<Set Name="CustomFunctionsRuntime" MinVersion="1.1"/>
</Sets>
</Requirements>
<DefaultSettings>
<SourceLocation DefaultValue="https://kind-moss-07d7a0503.5.azurestaticapps.net/taskpane.html"/>
</DefaultSettings>
<Permissions>ReadWriteDocument</Permissions>
<VersionOverrides xmlns="http://schemas.microsoft.com/office/taskpaneappversionoverrides" xsi:type="VersionOverridesV1_0">
<Hosts>
<Host xsi:type="Workbook">
<AllFormFactors>
<ExtensionPoint xsi:type="CustomFunctions">
<Script>
<SourceLocation resid="Functions.Script.Url"/>
</Script>
<Page>
<SourceLocation resid="Functions.Page.Url"/>
</Page>
<Metadata>
<SourceLocation resid="Functions.Metadata.Url"/>
</Metadata>
<Namespace resid="Functions.Namespace"/>
</ExtensionPoint>
</AllFormFactors>
<DesktopFormFactor>
<GetStarted>
<Title resid="GetStarted.Title"/>
<Description resid="GetStarted.Description"/>
<LearnMoreUrl resid="GetStarted.LearnMoreUrl"/>
</GetStarted>
<FunctionFile resid="Commands.Url"/>
<ExtensionPoint xsi:type="PrimaryCommandSurface">
<OfficeTab id="TabHome">
<Group id="CommandsGroup">
<Label resid="CommandsGroup.Label"/>
<Icon>
<bt:Image size="16" resid="Icon.16x16"/>
<bt:Image size="32" resid="Icon.32x32"/>
<bt:Image size="80" resid="Icon.80x80"/>
</Icon>
<Control xsi:type="Button" id="TaskpaneButton">
<Label resid="TaskpaneButton.Label"/>
<Supertip>
<Title resid="TaskpaneButton.Label"/>
<Description resid="TaskpaneButton.Tooltip"/>
</Supertip>
<Icon>
<bt:Image size="16" resid="Icon.16x16"/>
<bt:Image size="32" resid="Icon.32x32"/>
<bt:Image size="80" resid="Icon.80x80"/>
</Icon>
<Action xsi:type="ShowTaskpane">
<TaskpaneId>ButtonId1</TaskpaneId>
<SourceLocation resid="Taskpane.Url"/>
</Action>
</Control>
</Group>
</OfficeTab>
</ExtensionPoint>
</DesktopFormFactor>
</Host>
</Hosts>
<Resources>
<bt:Images>
<bt:Image id="Icon.16x16" DefaultValue="https://kind-moss-07d7a0503.5.azurestaticapps.net/assets/icon-64.png"/>
<bt:Image id="Icon.32x32" DefaultValue="https://kind-moss-07d7a0503.5.azurestaticapps.net/assets/icon-64.png"/>
<bt:Image id="Icon.80x80" DefaultValue="https://kind-moss-07d7a0503.5.azurestaticapps.net/assets/icon-64.png"/>
</bt:Images>
<bt:Urls>
<bt:Url id="Commands.Url" DefaultValue="https://kind-moss-07d7a0503.5.azurestaticapps.net/commands.html"/>
<bt:Url id="Taskpane.Url" DefaultValue="https://kind-moss-07d7a0503.5.azurestaticapps.net/taskpane.html"/>
<bt:Url id="GetStarted.LearnMoreUrl" DefaultValue="https://go.microsoft.com/fwlink/?LinkId=276812"/>
</bt:Urls>
<bt:ShortStrings>
<bt:String id="Functions.Namespace" DefaultValue="CONTOSO"/>
<bt:String id="CommandsGroup.Label" DefaultValue="Commands Group"/>
<bt:String id="TaskpaneButton.Label" DefaultValue="Plugin Starten"/>
</bt:ShortStrings>
<bt:LongStrings>
<bt:String id="GetStarted.Title" DefaultValue=" Wechselkursdifferenzbesteuerungsplugin"/>
<bt:String id="GetStarted.Description" DefaultValue="Einfach auf den Plugin Starten Knopf klicken und dem Handbuch folgen"/>
<bt:String id="TaskpaneButton.Tooltip" DefaultValue=" Wechselkursdifferenzbesteuerungsplugin starten"/>
</bt:LongStrings>
</Resources>
</VersionOverrides>
</OfficeApp>
Answer:
Simply do not trust Microsoft tools.
The manifest was indeed invalid, it's just that Microsofts CLI validator tool didn't catch one string from ShortStrings being in LongStrings even though that crashes the Add-In load.
For the "how to debug": Use the web-based Office clients where you have a console that logs everything from the getgo.