Implementierung der Liste der verwendeten Bibliotheken in der Android-Anwendung. Versuch Nummer 2

Vor kurzem bin ich auf einen Artikel über Habr gestoßen, in dem es darum geht, ein Dialogfeld mit einer Liste der verwendeten Bibliotheken zu implementieren. Die vorgeschlagene Option erschien mir zu kompliziert, und die Liste selbst sah schief aus. In diesem Zusammenhang habe ich beschlossen, eine einfachere und elegantere Methode zur Implementierung dieser Funktionalität zu verwenden.

Wir schreiben die Abhängigkeit in das build.gradle unseres Moduls:

compile('de.psdev.licensesdialog:licensesdialog:1.8.0')

Nun müssen wir eine Liste mit den verwendeten Bibliotheken erstellen. Erstellen Sie dazu eine license.xml- Datei im Ordner res / raw (Sie können auch andere Namen verwenden). Ein Beispiel:



Application Crash Reporting for Android (ACRA)http://acra.ch/Copyright 2010 Emmanuel Astier & Kevin GaudinApache Software License 2.0Android ViewPagerIndicatorhttp://viewpagerindicator.com/Copyright (C) 2011 The Android Open Source Project
Copyright (C) 2012 Jake Wharton
Apache Software License 2.0
OrmLitehttp://ormlite.com/Copyright Gray WatsonISC LicensePhotoViewhttps://github.com/chrisbanes/PhotoViewCopyright 2011, 2012 Chris Banes.Apache Software License 2.0

Wie Sie sehen, müssen wir keinen großen Text der Lizenz schreiben, sondern können nur deren Namen angeben. Basierend auf dieser Datei generiert die Bibliothek HTML-Code, der dann im Dialogfeld angezeigt wird. Die folgenden Lizenzen werden zum Zeitpunkt des Schreibens unterstützt:

  • Apache Software License 2.0
  • BSD 2/3 Klausellizenz
  • Gnu General Public License 2.0 / 3.0
  • GNU Lesser General Public License 2.1 / 3
  • MIT
  • Mozilla Public License 1.1

Sie können auch Ihre eigene Lizenz, geerbt von Klasse erstellen Lizenz und Implementierung der abstrakten Methoden.

Wenn die Bibliothek nicht urheberrechtlich geschützt ist, schreiben Sie einfach:


Es bleibt der Code in unserer Aktivität zu schreiben:

new LicensesDialog.Builder(this)
            .setNotices(R.raw.license)
            .build()
            .showAppCompat();

Hier ist die Ausgabe:

Bild

Sie können eine Lizenz auch direkt in Java erstellen:

final String name = "LicensesDialog";
final String url = "http://psdev.de";
final String copyright = "Copyright 2013 Philip Schiffer ";
final License license = new ApacheSoftwareLicense20();
final Notice notice = new Notice(name, url, copyright, license);
new LicensesDialog.Builder(this)
            .setNotices(notice)
            .build()
            .showAppCompat();

Den Quellcode des Beispiels finden Sie hier . Vielen Dank für Ihre Aufmerksamkeit.

Jetzt auch beliebt: