Question: This only allows to get image but i want users to be able to pick documents too.

```
Intent intent = new Intent();
intent.setType("image/*");
intent.setAction(Intent.ACTION_GET_CONTENT);
startActivityForResult(Intent.createChooser(intent, "Select Picture"),PICK_IMAGE); 

```

Answer: 
First, these errors only come out in non-production builds, however they indicate a problem that should be resolved before production release.

The $attrs, $listeners and other warnings are displayed if there's more than one instance of Vue loaded. As I understand it, this can happen usually for one these reasons:

* it is being loaded/packed into the bundle by webpack and also loaded externally (not via webpack)
* it is being loaded by something you include (e.g. [vuetify](https://github.com/vuetifyjs/vuetify/issues/4068), [vue-test-utils](https://github.com/vuejs/vue-test-utils/issues/532), [vue-cli-electron-builder](https://github.com/nklayman/vue-cli-plugin-electron-builder/issues/22)) one way and by your webpack config another way (e.g. absolute vs relative paths, common.js vs esm.js vue files, runtime-only vue vs compiler+runtime vue)

If you click on that line (it was app.js:19302 in your output above) and put a breakpoint where the message is coming out, you can see the list of modules in the stack traceback to see if there's more than one path to Vue listed. For example, see that the top three modules have a different path below (but are all part of Vue):
[![enter image description here](https://i.stack.imgur.com/tuzYg.png)](https://i.stack.imgur.com/tuzYg.png)
If you see Vue showing up in two or more different ways, it demonstrates that more than one instance of Vue is loaded. Vue only supports a single instance, and can produce these error messages if more than one is loaded.

There are several links to issues included above, the Vuetify issue was the one I filed. In that case, Vuetify requires Vue and was loading it differently than I was. Usually the fix is to check your webpack config where Vue is specified (or isn't) and try to make it match the way the other copy is being included (e.g. absolute vs relative path, or packed vs external).
In my case, this error arose after module federating my components.
I solved it by sharing vue in the component receiver to the component supplier.
e.g

```
webpack.config.js 
module.exports = { 
   plugins: [

    new ModuleFederationPlugin({
      name: "dashboard",
      remotes: {
        web_common: "web_common@http://localhost:8081/remoteEntry.js"
      },
      shared: {
        vue: { // this solved my issue.
          eager: true,
          singleton: true,
          requiredVersion: deps.vue
        },
      }
    }),
   ]

}

```