I have a Firefox extension. When I change the source code, every time I have to create the zip file including the source code and then make it as a .xpi file. Can I avoid this making *.xpi
file steps?
Do I need to create an .xpi file to test my Firefox extension?
1.6k views Asked by lasantha dharmasiri At
2
There are 2 answers
0
Santosh
On
With WebExtensions, you don't need to create the .xpi file. You can directly go to about:debugging
in the address bar and load your temporary add-on file. You can also click on debug
to debug your webExtension. Have a look at this for more information on loading your first firefox add-on.
Related Questions in FIREFOX-ADDON
- React Native: detect if UIVisualEffectView is supported
- Prevent Chrome debugger from stealing focus in React Native
- React-native upload image to amazons s3
- react-native update NavigatorIOS component's props
- promise – can't find variable process
- Using React Native within existing iOS app for some views only
- What is a good approach to building and distributing a React Native iOS component that extends iOS functionality?
- error in xcode 6 "is not registered as a URL scheme. Please add it in your Info.plist"
- DeviceEventEmitter stops emitting events to application when screen locked
- How to rename react-native entry file (index.ios.js)
Related Questions in FIREFOX-ADDON-SDK
- React Native: detect if UIVisualEffectView is supported
- Prevent Chrome debugger from stealing focus in React Native
- React-native upload image to amazons s3
- react-native update NavigatorIOS component's props
- promise – can't find variable process
- Using React Native within existing iOS app for some views only
- What is a good approach to building and distributing a React Native iOS component that extends iOS functionality?
- error in xcode 6 "is not registered as a URL scheme. Please add it in your Info.plist"
- DeviceEventEmitter stops emitting events to application when screen locked
- How to rename react-native entry file (index.ios.js)
Related Questions in FIREFOX-ADDON-WEBEXTENSIONS
- React Native: detect if UIVisualEffectView is supported
- Prevent Chrome debugger from stealing focus in React Native
- React-native upload image to amazons s3
- react-native update NavigatorIOS component's props
- promise – can't find variable process
- Using React Native within existing iOS app for some views only
- What is a good approach to building and distributing a React Native iOS component that extends iOS functionality?
- error in xcode 6 "is not registered as a URL scheme. Please add it in your Info.plist"
- DeviceEventEmitter stops emitting events to application when screen locked
- How to rename react-native entry file (index.ios.js)
Related Questions in FIREFOX-ADDON-BOOTSTRAP
- React Native: detect if UIVisualEffectView is supported
- Prevent Chrome debugger from stealing focus in React Native
- React-native upload image to amazons s3
- react-native update NavigatorIOS component's props
- promise – can't find variable process
- Using React Native within existing iOS app for some views only
- What is a good approach to building and distributing a React Native iOS component that extends iOS functionality?
- error in xcode 6 "is not registered as a URL scheme. Please add it in your Info.plist"
- DeviceEventEmitter stops emitting events to application when screen locked
- How to rename react-native entry file (index.ios.js)
Related Questions in FIREFOX-ADDON-OVERLAY
- React Native: detect if UIVisualEffectView is supported
- Prevent Chrome debugger from stealing focus in React Native
- React-native upload image to amazons s3
- react-native update NavigatorIOS component's props
- promise – can't find variable process
- Using React Native within existing iOS app for some views only
- What is a good approach to building and distributing a React Native iOS component that extends iOS functionality?
- error in xcode 6 "is not registered as a URL scheme. Please add it in your Info.plist"
- DeviceEventEmitter stops emitting events to application when screen locked
- How to rename react-native entry file (index.ios.js)
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Popular Tags
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
For all types of Firefox extensions you can test your extension without the need to create an .xpi file for each iteration.
WebExtensions
WebExtensions can be directly loaded as a temporary extension from the directory containing the manifest.json file. This is done from
about:debugging
.You can use
web-ext run
to test your extension in a temporary profile.They can be installed as an unpacked extension (all files not in a .xpi file). In addition, you can use a Firefox extension proxy file to have your extension files located in any directory you choose, not just under the profile's extensions directory.
Add-on SDK extensions
jpm run
to test your extension without directly dealing with the .xpi file.jpm xpi
. However, as an .xpi, they can be loaded as temporary extensions.jpn xpi
, then manually unpacking the extension.Bootstrap/Restartless extensions
Bootstrap/Restartless extensions can be directly loaded as a temporary extension from the directory containing the chrome.manifest and install.rdf files. This is done from
about:debugging
.They can be installed as an unpacked extension (all files not in a .xpi file). In addition, you can use a Firefox extension proxy file to have your extension files located in any directory you choose, not just under the profile's extensions directory.
Overlay/Legacy/XUL based extensions
Overlay/Legacy/XUL based extensions can not be loaded as a temporary extension.
They can be installed as an unpacked extension (all files not in a .xpi file). In addition, you can use a Firefox extension proxy file to have your extension files located in any directory you choose, not just under the profile's extensions directory.
Additional information
I would suggest you read Installing add-ons for development and Installing a Temporary Add-on which cover these issues in more detail.