Posso accedere ai valori definiti in un manifest java dal codice?È possibile accedere ai valori definiti in MANIFEST.MF a livello di programmazione?
risposta
Molti dei valori nel MANIFEST.MF sono accessibili a livello di programmazione senza dover trovare e/o aprire il file jar stesso.
La classe java.lang.Package
fornisce l'accesso al ImplementationTitle
, ImplementationVendor
, ImplementationVersion
, SpecificationTitle
, SpecificationVendor
e il SpecificationVersion
.
informazioni sulle classi firmati può essere trovata utilizzando la classe CodeSource
, che può essere recuperato tramite Class
.getProtectionDomain()
.getCodeSource()
Grazie! Ti capita di sapere se questo è disponibile anche per Android? – er4z0r
Personalmente non lo so, ma sembra proprio questo: http://developer.android.com/reference/java/lang/package-summary.html –
Grazie. L'ho controllato di nuovo e ho scoperto che la soluzione di Jon offre maggiore flessibilità ed è disponibile anche su Android. – er4z0r
Provare com.jcabi.manifests.Manifests
classe di utilità da jcabi-manifests. Utilizzando questa classe è possibile leggere tutti i file MANIFEST.MF disponibili con uno di linea:
String name = Manifests.read("Foo-Name");
Inoltre, si veda questo articolo: http://www.yegor256.com/2014/07/03/how-to-read-manifest-mf.html
Usa seguente modo per rilevare Jar esterno/SDK MANIFEST.MF Info. Potremmo utilizzare queste informazioni per rilevare la versione Jar ecc. Utilizzare http://docs.oracle.com/javase/6/docs/api/java/util/jar/Manifest.html
public void getSDKInfo() {
Package pkg = Manifest.class.getPackage();
String specTitle = pkg.getSpecificationTitle();
String vendor = pkg.getSpecificationVendor();
String version = pkg.getSpecificationVersion();
}
- 1. Come accedere a livello di programmazione ai promemoria?
- 2. È possibile accedere a RSA Secure Id a livello di programmazione per l'utilizzo in Test Automation?
- 3. È possibile accedere a livello di programmazione alle stringhe localizzate standard in Cocoa Touch?
- 4. Modifica Info.plista possibile a livello di programmazione?
- 5. È possibile disattivare l'audio di iPhone a livello di programmazione?
- 6. È possibile impostare DrawableLeft a livello di programmazione?
- 7. Kit orologio: è possibile vibrare l'orologio a livello di programmazione?
- 8. xCode 4.3 come accedere a livello di programmazione ai colori della tavolozza del generatore di interfacce?
- 9. Come accedere alle impostazioni del dispositivo a livello di programmazione?
- 10. Come accedere a livello di programmazione nel forum phpBB?
- 11. Come leggere i valori di web.config a livello di programmazione?
- 12. Android: è possibile accedere ai dati di input capacitivi raw?
- 13. Perché non è possibile accedere ai cookie di serviceworker
- 14. Come impostare windowDrawsSystemBarBackgrounds a livello di programmazione?
- 15. È possibile determinare a livello di programmazione se un video è in riproduzione?
- 16. È possibile impostare la priorità BroadcastReceiver al livello di programmazione?
- 17. , verificare a livello di programmazione
- 18. accedere ai valori del seguente JSON
- 19. È possibile accedere ai dati attraverso 2 diverse app iOS?
- 20. È possibile modificare l'indicatore della scheda della barra delle azioni a livello di programmazione
- 21. come accedere ai valori dell'array protetto?
- 22. È possibile determinare a livello di programmazione se un utente è autorizzato per un pacchetto?
- 23. In HTML5, è possibile salvare un'immagine da memorizzare nella cache a livello di programmazione?
- 24. È possibile disattivare la modalità silenziosa a livello di programmazione in Android?
- 25. Groovy: Come accedere ai valori già impostati in DataSource
- 26. Come aprire selezionare a livello di programmazione
- 27. Come nascondere UITabBarController a livello di programmazione?
- 28. Determinare se il backup a livello di sistema è abilitato a livello di programmazione
- 29. Ingrandire un MKMapView a livello di programmazione
- 30. Quando controllare a livello di programmazione le modifiche ai temi in Windows Phone 8.1
Questo è ancora più flessibile. Grazie! – er4z0r