Zum Inhalt

Integration der IOMB Lib Android

Die Integration der IOMb Library Android erfolgt in wenigen Schritten über Maven:

Voraussetzungen

Die IOMb Library wird über GitHub Packages bereitgestellt. Für den Zugriff benötigen Sie ein GitHub Classic Personal Access Token mit dem Scope read:packages.

Classic Token erforderlich

Fine-grained Personal Access Tokens werden von GitHub Packages für Maven derzeit nicht unterstützt. Verwenden Sie ein Classic Token.

  1. Erstellen Sie ein Classic Personal Access Token unter: https://github.com/settings/tokens/new
  2. Wählen Sie als Scope mindestens read:packages
  3. Speichern Sie das Token sicher ab

Konfiguration

~/.gradle/gradle.properties (empfohlen):

1
2
gpr.user=IHR_GITHUB_USERNAME
gpr.token=IHR_GITHUB_TOKEN

Hinweis

Die Datei ~/.gradle/gradle.properties existiert möglicherweise noch nicht und muss ggf. erst erstellt werden.

Alternativ können Sie die Credentials auch in der projekt-spezifischen gradle.properties im Projektverzeichnis speichern.

Sicherheitshinweis bei projekt-spezifischer gradle.properties

Committen Sie niemals Ihre gradle.properties mit echten Zugangsdaten in ein Repository. Fügen Sie die Datei zu .gitignore hinzu oder nutzen Sie Umgebungsvariablen.

Repository hinzufügen

Je nach Projektstruktur gibt es zwei Varianten, das GitHub Packages Repository einzubinden:

Öffnen Sie die build.gradle.kts im Projekt-Root und fügen Sie das Repository unter allprojects > repositories hinzu:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
allprojects {
    repositories {
        google()
        mavenCentral()
        maven {
            url = uri("https://maven.pkg.github.com/INFOnline-sg/libs-appsensor-iomb-android")
            name = "GitHubPackages"
            credentials {
                username = project.findProperty("gpr.user") as String? ?: System.getenv("GITHUB_USERNAME")
                password = project.findProperty("gpr.token") as String? ?: System.getenv("GITHUB_TOKEN")
            }
        }
    }
}

Bei neueren Projekten mit dependencyResolutionManagement fügen Sie das Repository in der settings.gradle.kts hinzu:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
dependencyResolutionManagement {
    repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
    repositories {
        google()
        mavenCentral()
        maven {
            url = uri("https://maven.pkg.github.com/INFOnline-sg/libs-appsensor-iomb-android")
            name = "GitHubPackages"
            credentials {
                username = providers.gradleProperty("gpr.user").orNull ?: System.getenv("GITHUB_USERNAME")
                password = providers.gradleProperty("gpr.token").orNull ?: System.getenv("GITHUB_TOKEN")
            }
        }
    }
}

Welche Variante?

  • settings.gradle.kts: Empfohlen für neue Projekte (Android Studio Flamingo+). Verwendet providers.gradleProperty().
  • build.gradle.kts: Für bestehende Projekte ohne dependencyResolutionManagement. Verwendet project.findProperty().

Dependency hinzufügen

Unter "dependencies" in der build.gradle.kts des App-Moduls die IOMb Library referenzieren:

1
2
3
4
dependencies {
    implementation("de.infonline:iomb-library:1.1.2") // Versionsnummer bei Updates anpassen
    ...
}

Letztes Update: January 27, 2026