Sto sviluppando un'applicazione Android nativa, in cui sto cercando di utilizzare 2 librerie open-source. Il problema è entrambe le librerie utilizzano la classe di applicazione nelle rispettive librerie. Stanno registrando queste classi nel rispettivo codice sorgente nel file manifest utilizzando "android: name" sotto il tag dell'applicazione. La domanda è come gestire uno scenario di questo tipo, poiché come sappiamo, , è possibile utilizzare un solo tag all'interno del file manifest. Possiamo registrare/creare un'istanza della classe dell'applicazione nel codice, in modo che menzioniamo solo UNA libreria nel tag e la seconda che utilizza il codice/pragmaticamente. O ci sono altre alternative. Per favore condividi i tuoi commenti/suggerimenti. Grazie in anticipo.come gestire più classi di applicazioni in Android
risposta
È necessario implementare l'ereditarietà multilivello per risolvere questo scenario.
Questo è lo scenario
public Lib1Application extends Application{
}
public Lib2Application extends Application{
}
public YourApplication extends Application{
}
Come risolvere questo?
public Lib1Application extends Application{
}
public Lib2Application extends Lib1Application{
}
public YourApplication extends Lib2Application{
}
infine nel mainfest.xml
<application
android:name="com.your.packagename.YourApplication"
android:icon="@drawable/ijoomer_luncher_icon"
android:label="@string/app_name"
>
ok, lasciami provare una volta. Ti farò sapere come è andata. Grazie – user2072344
grazie a tonnellate, questo funziona! – user2072344
come posso usare la classe lib2Application .. per favore mi dia un esempio? – Sunny
elementi Solo il manifesto e applicazioni sono richiesti, ciascuno devono essere presenti e possono avvenire solo una volta. La maggior parte degli altri può accadere molte volte o non esserlo affatto - sebbene almeno alcuni di loro debbano essere presenti per manifest per realizzare qualcosa di significativo. Vedi questo link: http://developer.android.com/guide/topics/manifest/manifest-intro.html#filec
- 1. Come gestire più clic di layout in recyclerView in Android
- 2. Come gestire le classi più comuni mancanti su J2ME
- 3. Come gestire le richieste di applicazioni Facebook?
- 4. Come gestisci più ambienti mentre sviluppi applicazioni Android?
- 5. UML - Come gestire diagrammi di grandi classi?
- 6. Come gestire le applicazioni di erlang di terze parti?
- 7. applicazioni di monitoraggio Android
- 8. Come gestire più thread in una classe?
- 9. Maven - come gestire le classi generate
- 10. Come installare più applicazioni Android (dai file apk) nel dispositivo?
- 11. come gestire più edizioni della stessa app per android
- 12. Download di più file contemporaneamente nelle applicazioni Android
- 13. Come posso gestire più sottoprocessi in Perl?
- 14. Come gestire più risorse nidificate in ActiveAdmin?
- 15. Android OkHttp come gestire ETag
- 16. Come eseguire applicazioni Android in background
- 17. Come gestire grandi applicazioni multi-modulo su GWT
- 18. Gestire due applicazioni: openURL: sourceApplication: annotation
- 19. Come gestire più file di schemi JSON?
- 20. Android: gestire più notifiche push nel dispositivo di un'app
- 21. Gestire più finestre in Python
- 22. Come gestire EditText Cambia listener in android
- 23. Android - Come gestire Webservice in XML?
- 24. Estensione di più classi
- 25. Importazione di due classi con lo stesso nome. Come gestire?
- 26. Come gestire più posizioni dei pacchetti (cartelle) in R?
- 27. Compilazione di più classi (console) in Java
- 28. Come gestire i campi JSON opzionali in Retrofit per Android?
- 29. Capistrano per distribuire applicazioni rails: come gestire le migrazioni lunghe?
- 30. Condivisione e persistenza dei dati tra più applicazioni Android
lo scenario è come "ApplicationLib1 estende Application", "ApplicationLib2 estende Applicazione" e "YourApplication estende Applicazione"? –
È necessario implementare l'ereditarietà multilivello per risolvere questo scenario. –
@BirajZalavadia E cosa possiamo fare se le librerie fossero jar ?! In questo caso non possiamo scrivere qualcosa di simile: pubblica Lib2Application estende Lib1Application! –