mirror of
https://github.com/KDE/kdeconnect-android
synced 2025-09-02 15:15:09 +00:00
Stop using ClassIndex, it seems to be causing problems
This commit is contained in:
@@ -1,8 +1,8 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
package="org.kde.kdeconnect_tp"
|
package="org.kde.kdeconnect_tp"
|
||||||
android:versionCode="11210"
|
android:versionCode="11220"
|
||||||
android:versionName="1.12-nosms">
|
android:versionName="1.12.2-nosms">
|
||||||
|
|
||||||
<supports-screens
|
<supports-screens
|
||||||
android:anyDensity="true"
|
android:anyDensity="true"
|
||||||
|
@@ -27,6 +27,27 @@ import android.util.Log;
|
|||||||
import org.atteo.classindex.ClassIndex;
|
import org.atteo.classindex.ClassIndex;
|
||||||
import org.atteo.classindex.IndexAnnotated;
|
import org.atteo.classindex.IndexAnnotated;
|
||||||
import org.kde.kdeconnect.Device;
|
import org.kde.kdeconnect.Device;
|
||||||
|
import org.kde.kdeconnect.Plugins.BatteryPlugin.BatteryPlugin;
|
||||||
|
import org.kde.kdeconnect.Plugins.ClibpoardPlugin.ClipboardPlugin;
|
||||||
|
import org.kde.kdeconnect.Plugins.ContactsPlugin.ContactsPlugin;
|
||||||
|
import org.kde.kdeconnect.Plugins.FindMyPhonePlugin.FindMyPhonePlugin;
|
||||||
|
import org.kde.kdeconnect.Plugins.FindRemoteDevicePlugin.FindRemoteDevicePlugin;
|
||||||
|
import org.kde.kdeconnect.Plugins.MousePadPlugin.MousePadPlugin;
|
||||||
|
import org.kde.kdeconnect.Plugins.MprisPlugin.MprisPlugin;
|
||||||
|
import org.kde.kdeconnect.Plugins.MprisReceiverPlugin.MprisReceiverPlugin;
|
||||||
|
import org.kde.kdeconnect.Plugins.NotificationsPlugin.NotificationsPlugin;
|
||||||
|
import org.kde.kdeconnect.Plugins.PhotoPlugin.PhotoPlugin;
|
||||||
|
import org.kde.kdeconnect.Plugins.PingPlugin.PingPlugin;
|
||||||
|
import org.kde.kdeconnect.Plugins.PresenterPlugin.PresenterPlugin;
|
||||||
|
import org.kde.kdeconnect.Plugins.ReceiveNotificationsPlugin.ReceiveNotificationsPlugin;
|
||||||
|
import org.kde.kdeconnect.Plugins.RemoteKeyboardPlugin.RemoteKeyboardPlugin;
|
||||||
|
import org.kde.kdeconnect.Plugins.RunCommandPlugin.RunCommandPlugin;
|
||||||
|
import org.kde.kdeconnect.Plugins.SMSPlugin.SMSPlugin;
|
||||||
|
import org.kde.kdeconnect.Plugins.SftpPlugin.SftpPlugin;
|
||||||
|
import org.kde.kdeconnect.Plugins.SharePlugin.SharePlugin;
|
||||||
|
import org.kde.kdeconnect.Plugins.SystemvolumePlugin.SystemvolumePlugin;
|
||||||
|
import org.kde.kdeconnect.Plugins.TelephonyPlugin.TelephonyPlugin;
|
||||||
|
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
import java.util.HashSet;
|
import java.util.HashSet;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
@@ -109,13 +130,36 @@ public class PluginFactory {
|
|||||||
|
|
||||||
private static final Map<String, PluginInfo> pluginInfo = new ConcurrentHashMap<>();
|
private static final Map<String, PluginInfo> pluginInfo = new ConcurrentHashMap<>();
|
||||||
|
|
||||||
|
static Class pluginClasses[] = {
|
||||||
|
BatteryPlugin.class,
|
||||||
|
ClipboardPlugin.class,
|
||||||
|
ContactsPlugin.class,
|
||||||
|
FindMyPhonePlugin.class,
|
||||||
|
FindRemoteDevicePlugin.class,
|
||||||
|
MousePadPlugin.class,
|
||||||
|
MprisPlugin.class,
|
||||||
|
MprisReceiverPlugin.class,
|
||||||
|
NotificationsPlugin.class,
|
||||||
|
PhotoPlugin.class,
|
||||||
|
PingPlugin.class,
|
||||||
|
PresenterPlugin.class,
|
||||||
|
ReceiveNotificationsPlugin.class,
|
||||||
|
RemoteKeyboardPlugin.class,
|
||||||
|
RunCommandPlugin.class,
|
||||||
|
SftpPlugin.class,
|
||||||
|
SharePlugin.class,
|
||||||
|
//SMSPlugin.class,
|
||||||
|
SystemvolumePlugin.class,
|
||||||
|
TelephonyPlugin.class,
|
||||||
|
};
|
||||||
|
|
||||||
public static PluginInfo getPluginInfo(String pluginKey) {
|
public static PluginInfo getPluginInfo(String pluginKey) {
|
||||||
return pluginInfo.get(pluginKey);
|
return pluginInfo.get(pluginKey);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void initPluginInfo(Context context) {
|
public static void initPluginInfo(Context context) {
|
||||||
try {
|
try {
|
||||||
for (Class<?> pluginClass : ClassIndex.getAnnotated(LoadablePlugin.class)) {
|
for (Class<?> pluginClass : pluginClasses) {
|
||||||
Plugin p = ((Plugin) pluginClass.newInstance());
|
Plugin p = ((Plugin) pluginClass.newInstance());
|
||||||
p.setContext(context, null);
|
p.setContext(context, null);
|
||||||
PluginInfo info = new PluginInfo(p.getDisplayName(), p.getDescription(), p.getIcon(),
|
PluginInfo info = new PluginInfo(p.getDisplayName(), p.getDescription(), p.getIcon(),
|
||||||
|
Reference in New Issue
Block a user