diff options
Diffstat (limited to 'src/android/jar/src/org/qtproject/qt/android/QtServiceLoader.java')
-rw-r--r-- | src/android/jar/src/org/qtproject/qt/android/QtServiceLoader.java | 30 |
1 files changed, 2 insertions, 28 deletions
diff --git a/src/android/jar/src/org/qtproject/qt/android/QtServiceLoader.java b/src/android/jar/src/org/qtproject/qt/android/QtServiceLoader.java index f54627466d..f5b0bf4af9 100644 --- a/src/android/jar/src/org/qtproject/qt/android/QtServiceLoader.java +++ b/src/android/jar/src/org/qtproject/qt/android/QtServiceLoader.java @@ -5,50 +5,24 @@ package org.qtproject.qt.android; import android.app.Service; -import android.content.ComponentName; -import android.content.pm.PackageManager; +import android.content.ContextWrapper; import android.util.Log; -import java.lang.reflect.InvocationTargetException; -import java.lang.reflect.Method; - class QtServiceLoader extends QtLoader { private final Service m_service; public QtServiceLoader(Service service) { - super(service); + super(new ContextWrapper(service)); m_service = service; extractContextMetaData(); } @Override - protected void initContextInfo() { - try { - m_contextInfo = m_context.getPackageManager().getServiceInfo( - new ComponentName(m_context, m_context.getClass()), - PackageManager.GET_META_DATA); - } catch (Exception e) { - e.printStackTrace(); - finish(); - } - } - - @Override protected void finish() { if (m_service != null) m_service.stopSelf(); else Log.w(QtTAG, "finish() called when service object is null"); } - - @Override - protected void initStaticClassesImpl(Class<?> initClass, Object staticInitDataObject) { - try { - Method m = initClass.getMethod("setService", Service.class, Object.class); - m.invoke(staticInitDataObject, m_service, this); - } catch (IllegalAccessException | InvocationTargetException | NoSuchMethodException e) { - Log.d(QtTAG, "Class " + initClass.getName() + " does not implement setService method"); - } - } } |