Custom un-signed xpi plugin is not detected by embed object even with type set?
Hello
I have a custom xpi plugin which has a custom type, on FF 45 Beta version the embed object is no longer able to auto detect this plugin and load it. This plugin is not signed, I am setting the xpinstall.signature.require option to false. Were there any changes in FF that would not allow auto detection of plugin if it is not signed. This use to work on FF 38 ESR stream.
embed object example: <embed width="1" height="1" helptextfontname="Tahoma" isrtllayout="False" alt="Plugin" type="application/x-my-plugin-type" name="MyPlugin">
If you have any additional information regarding this, let me know. Thanks
所有回复 (11)
Signing is about extensions and not about plugins.
If Firefox doesn't detect a plugin then this is usually because of missing registry keys.
You posted with a 32 bit Firefox 46 version.
Does it work in the current release (Firefox 44, 32 bit version)?
Do you see this plugin in about:addons (Tools > Add-ons > Plugins) and on the about:plugins page with application/x-my-plugin-type?
Correction this is an extension, it shows up under: Tools > Add-ons > Extensions
I used a similar script, with my mimeType specified and it was able to find the extension I was looking for. var mimetype = navigator.mimeTypes["application/x-shockwave-flash"]; if (mimetype) {
var plugin = mimetype.enabledPlugin; if (plugin) { // Yes, so show the data in-line document.writeln("Here\'s a movie: <object data='mymovie.swf' height='100' width='100'></object>"); } else { // No, so provide a link to the data document.writeln("<a href='mymovie.swf'>Click here</a> to see a movie."); }
}
I posted with a different browsers then the one that has the issue. I see the issues on 45.0b2.
I tried on FF 44 32 bit and it also has the same issue.
on the about:plugins page I do see it with the mime type, the path and version and is also enabled. The file is also correct.
The xpi extension that I have is based of the 38 version of the XULRunner SDK, Should I switch over to another version of the XULRunner SDK? I see that the latest version is 41.0.2, would this version be compatible with FF 45, or should I use the firefox SDK from FF 45?
Did you check various navigator arrays in the Web Console (3-bar Menu button or Tools > Web Developer) to see how this plugin shows?
I checked: navigator.plugins and navigator.mimeTypes and I do see my plugin listed there and I can also get using the mimeType: navigator.mimeTypes['application/x-my-plugin-type'] and navigator.plugins['Name'] are both able to fetch the plugin.
I'm not seeing the "src" attribute in your embed code sample.
Is that attribute added later via JavaScript?
<embed width="1" height="1" helptextfontname="Tahoma" isrtllayout="False" alt="Plugin" type="application/x-my-plugin-type" name="MyPlugin">
No the src attribute is not added at all, relay on type attribute to pick it up. According to: https://developer.mozilla.org/en-US/docs/Plugins/Guide/Plug-in_Basics#Using_the_embed_Element_for_Plug-in_Display
it says that: You must include either the src attribute or the type attribute in an embed element. If you do not, then there is no way of determining the media type, and so no plug-in loads.
If I was to add the src, what would be in that attribute, location to the full extension or just the name of the file
That is the file name. Without a file name Firefox won't know what file to open in the embed, so nothing will happen.
Is this a new requirement that was added in FF 45, because and <embed> element does not need to have src and if it just has type set the browser is suppose automatically find a plugin that matches this type and load it into the embed element. As mentioned on https://developer.mozilla.org/en-US/docs/Plugins/Guide/Plug-in_Basics#Using_the_embed_Element_for_Plug-in_Display and also according to the W3C standards: http://www.w3.org/TR/html5/embedded-content-0.html#the-embed-element
"If the element has no src attribute set
The user agent should find and instantiate an appropriate plugin based on the value of the type attribute. The embed element now represents this plugin instance."
I added the src attribute and still the same issues, are you aware if I can use the XULRunner version 38 on FF 45 or is there another one that I need to use.
The latest one is 41.0.2, I updated my plugin to this compiler but still doe not work.
Any idea? Or do I need to use the firefox SDK