Comment passer un contexte d'activité dans une application à un service dans une autre application

J'ai donc une activité dans une application qui démarre un service:

private void startService() {
    if (started) {
        Toast.makeText(Main.this, "Service already started",
                Toast.LENGTH_SHORT).show();
    } else {
        Intent i = new Intent();
        i.setClassName("com.enorbitas.daemon.service",
                "com.enorbitas.daemon.service.DaemonService");
        startService(i);
        started = true;
        updateServiceStatus();
        Log.d(getClass().getSimpleName(), "startService()");
    }

}

L'activité est lancé par la suite intention:

<intent-filter>
            <action android:name="android.hardware.usb.action.USB_DEVICE_ATTACHED" />
        </intent-filter>

Le service de la journalisation et se connecte avec ce périphérique usb personnalisées. Pour ce faire, il a besoin du contexte d'activité:

        mUsbManager = (UsbManager) parent.getSystemService(Context.USB_SERVICE);
        HashMap<String, UsbDevice> deviceList = mUsbManager.getDeviceList();
        Iterator<UsbDevice> deviceIterator = deviceList.values().iterator();
        while(deviceIterator.hasNext()){
            UsbDevice device = deviceIterator.next();
        }

        Intent intent = parent.getIntent();
        String action = intent.getAction();
        UsbDevice device = (UsbDevice) intent
                .getParcelableExtra(UsbManager.EXTRA_DEVICE);
        if (UsbManager.ACTION_USB_DEVICE_ATTACHED.equals(action)) {
            setDevice(device);
            Log.i(TAG, "usb conectado");
        } else if (UsbManager.ACTION_USB_DEVICE_DETACHED.equals(action)) {
            if (mDevice != null && mDevice.equals(device)) {
                setDevice(null);
                Log.i(TAG, "usb NO conectado");
            }
        }

mère devrait être l'activité qui démarre le service. Cette approche utilisée pour le travail, parce que le code utilisé pour être dans la même application, mais maintenant, je veux que ce soit un service, afin que d'autres applications peuvent se connecter à elle.

Est-il un moyen de passer le contexte de l'activité du service? J'ai lu beaucoup de choses sur les intentions et les faisceaux, parcelable et la sérialisation, mais aucune ne fonctionne pour moi. J'ai besoin de passer du contexte.

Des idées?

OriginalL'auteur matiaslezin | 2012-09-20