Commit d83e7360 authored by Mygod's avatar Mygod

Only match exported plugins

parent 7b216644
...@@ -29,7 +29,8 @@ class PluginList : ArrayList<Plugin>() { ...@@ -29,7 +29,8 @@ class PluginList : ArrayList<Plugin>() {
init { init {
add(NoPlugin) add(NoPlugin)
addAll(app.packageManager.queryIntentContentProviders( addAll(app.packageManager.queryIntentContentProviders(
Intent(PluginContract.ACTION_NATIVE_PLUGIN), PackageManager.GET_META_DATA).map { NativePlugin(it) }) Intent(PluginContract.ACTION_NATIVE_PLUGIN), PackageManager.GET_META_DATA)
.filter { it.providerInfo.exported }.map { NativePlugin(it) })
} }
val lookup = mutableMapOf<String, Plugin>().apply { val lookup = mutableMapOf<String, Plugin>().apply {
......
...@@ -143,6 +143,7 @@ object PluginManager { ...@@ -143,6 +143,7 @@ object PluginManager {
} }
val providers = app.packageManager.queryIntentContentProviders( val providers = app.packageManager.queryIntentContentProviders(
Intent(PluginContract.ACTION_NATIVE_PLUGIN, buildUri(configuration.selected)), flags) Intent(PluginContract.ACTION_NATIVE_PLUGIN, buildUri(configuration.selected)), flags)
.filter { it.providerInfo.exported }
if (providers.isEmpty()) return null if (providers.isEmpty()) return null
if (providers.size > 1) { if (providers.size > 1) {
val message = "Conflicting plugins found from: ${providers.joinToString { it.providerInfo.packageName }}" val message = "Conflicting plugins found from: ${providers.joinToString { it.providerInfo.packageName }}"
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment