Can a local/shared folder can be accessed from website in chrome using chrome extension- native messaging?
if so how?
Related
We have chrome and FF extensions which works with a native messaging app. Recently we developed edge extension and a UWP app which works in the same way. Now the user has to install two separate native messaging apps if they want use any chrome/FF/Edge browsers.
My question is, is it possible for Chrome/FF extension talk to windows UWP app?
Unfortunately no. On Windows, both Chrome and Firefox use the registry to locate the native applications manifest, and Windows Store apps are forbidden from writing to the registry. (ref: Prepare to package an app (Desktop Bridge)
If something changes (Store apps gain the ability to alter the registry, or Chrome and Firefox introduce an alternative way to locate the manifest), then it might be possible. Though likely not via the UWP app directly. UWP apps appear to support standard input and output, but the way they are run prevents access to it. It might however be possible to create an intermediary Win32 app that can communicate with the UWP app via the AppService and the browser extension via stdio.
Afterthought: Enpass Password Manager (win32) was ported to the Windows Store reportedly because of API issues, and has a browser extension for Chrome and Firefox. Might be worth asking them how they pulled it off. I did some more digging, and figured it out. localhost loopback, a custom url scheme, web sockets, and browser verifications is how they are doing it. Not an ideal solution, but it seems to work.
This could be layman question. I use the postman application which i got from the chrome extension. It was soo good. I really want to know in which language it is written? Is it written completely in javascript and packaged using some tools like cardova? Or any native language is used?
It is a "chrome app" written in HTML5, CSS, and JavaScript.
About Chrome apps
Google through Chrome allows this application to run in a native container that work on any operating system example: Mac OS, Linux.
In order to publish the app , developers can package and upload the app source files to chrome web store. refer the link for further details
Check the Postman Legacy Repo which is available in GitHub.
https://github.com/postmanlabs/postman-chrome-extension-legacy/tree/develop/chrome
They used the following technologies
JS Framework: AngularJS
CSS Framework: Bootstrap
Template Engine: Handlebar
DOM: jQuery, jQuery UI and many more jQuery Plugins.
Other: vkBeautify, Underscore and many more.
In General about Chrome Extension. This is chrome plugin which is built with manifest.json (Configuration file) and Chrome API.
You can include your HTML, JS and other JS Library or Framework as per your Extension Scope.
How to build the Chrome Plugin ?
1. Enable Developer Mode
2. Load your extension
Finally once you are done with extension development, you can pack it as CRX file to upload it to Chrome Web Store through pack extension button
I have a Chrome extension that uses the chrome.management API to get a list of installed Chrome extensions and apps. The problem starts because I also want to use the chrome.syncFileSystem API which only seems to be available to Chrome apps.
If I switch the extension to an app, I can no longer use the chrome.management API. I haven't been able to find an API to access the installed extensions from an app. Any tips?
I don't think you can, not without having both an extension and an app.
Google has a private API to do that, but for public API, they want apps to be as independent as possible from the browser.
I am developing a GWT based client server web application.
The application installs a web site on the IIS.
When clients first browse to the web site, they need to run a local installation, which installs a local process and a NPAPI plugin on the client computer.
The client runs in browsers such as IE, Chrome and Firefox,
and uses the NPAPI plugin to send messages to the local process.
The local process is used for accessing the file system, registry, etc.
In order to prevent other web sites from using the NPAPI plugin,
When a user first login, the server sends him a hash of a string which contains the URL of the site + some other data.
The NPAPI plugin has access to the current URL of the browser, and also creates the same hash and compares the two.
Due to Chrome upcoming end of support of NPAPI plugins, I am trying to replace the plugin with a Chrome extension, and a native messaging host.
The extension can't be limited to a certain domain because it can be used from many domains.
I am trying to figure out a way to prevent other web sites from using the extension to send messages to the native host but can't find a way to do it.
Does anyone have an idea how I can accomplish that?
Any advice would be greatly appreciated, thanks.
Have you considered having the extension be limited to a specific domain, and then having the other domains iframe that domain and communicate via postMessage? You could have a whitelist of domains in the JS of the iframe, and validate the message origin against that list.
I'm writing an extension.
A part of this extension contains an html page.
I'd call that page, also as a Google Apps,
inserting an icon between applications of chrome.
It's possible create a manifest file to integrate the chrome app with chrome extension?
No. You'd create both an app an an extension, then encourage the user to install both if you detected that one wasn't installed.
There is an outstanding feature request to allow bundled installations of multiple apps/extensions.