Desidero aggiungere il mio codice di framework che viene eseguito su Android "system_server" (gestisce tutti i servizi a livello di sistema). Il mio servizio carica una libreria JNI che parla con un driver che ho aggiunto al kernel. Il servizio è progettato per consentire a un'app di registrare un listener con esso per ottenere aggiornamenti dal driver. Ho trovato un post del blog abbastanza buono (http://www.androidenea.com/2009/12/adding-system-server-to-android.html) che spiega come aggiungere un servizio di sistema, ma non riesco a farlo funzionare completamente.Come aggiungere un servizio di sistema a Android Framework
Prima di tutto, il post afferma che un file Android.mk "appropriato" dovrebbe essere usato per scrivere l'applicazione client/test, ma non ne fornisce un esempio. Quando provo a crearlo, ricevo errori di compilazione che dicono che non riesco a trovare il servizio che ho aggiunto. Qualcuno potrebbe dare un esempio di come potrebbe essere?
Inoltre, vorrei implementarlo nella directory del produttore (o nella directory del dispositivo in froyo) piuttosto che nel codice open source Android. Il post sul blog menziona che il posto giusto per questo è la directory del venditore, ma non fornisce un esempio di come dovrebbe essere. Qualcuno sa?
QUALSIASI informazione aggiuntiva sull'implementazione del proprio servizio di sistema in Android sarebbe utile. Anche in questo caso il mio flusso di lavoro specifico è:
Android App -> System Service -> JNI (nativo) library -> driver di periferica
Grazie per aver postato questo. Non ero a conoscenza del fatto che TI avesse pubblicato questa documentazione. Non ho davvero avuto la possibilità di affrontarlo, ma per ora accetterò la tua risposta dato che sembra fornire alcune buone informazioni. – ashughes
Nel caso in cui qualcun altro finisca qui, la funzione vendorServices è stata rimossa in CyanogenMod diversi anni fa con l'aggiornamento a ICS. – bmaupin