Zum Hauptinhalt springen

Android-App

Diese Anleitung richtet sich an Entwickler, die die LeadHub-Android-Begleit-App erstellen oder anpassen möchten. Der Quellcode der App ist in Kotlin geschrieben und folgt den standardmäßigen Android-Entwicklungsmustern.


Anforderungen

  • Android Studio (neueste stabile Version)
  • JDK 17 oder höher
  • Android SDK — minimales API-Level 26 (Android 8.0)
  • Eine LeadHub-Instanz mit einer gültigen HTTPS-URL und einem aktiven API-Schlüssel

Projekteinrichtung

  1. Öffnen Sie den Ordner android/ aus Ihrem LeadHub-Kauf in Android Studio.
  2. Lassen Sie Gradle synchronisieren und Abhängigkeiten automatisch herunterladen.
  3. Öffnen Sie app/src/main/res/values/config.xml (oder die entsprechende Konfigurationsdatei im Projekt) und setzen Sie Ihre Standard-Instanz-URL, wenn Sie sie für Benutzer vorausfüllen möchten.

Architektur

Die App verwendet eine standardmäßige Android-Architektur:

  • Retrofit für HTTP-Aufrufe an die LeadHub REST-API
  • ViewModel + LiveData für das UI-State-Management
  • Room für lokales Caching von Leads zwischen Sitzungen
  • Firebase Cloud Messaging (FCM) für Push-Benachrichtigungen

Alle API-Aufrufe verwenden das Header-Muster Authorization: Bearer {api_key}. Der API-Schlüssel wird in Androids EncryptedSharedPreferences gespeichert.


Authentifizierungsablauf

  1. Der Benutzer gibt seine LeadHub-Instanz-URL und den API-Schlüssel auf dem Anmeldebildschirm ein.
  2. Die App ruft GET /api/v1/health auf, um zu prüfen, ob die Instanz erreichbar ist.
  3. Dann ruft sie GET /api/v1/users/me (oder äquivalent) auf, um zu prüfen, ob der Schlüssel gültig ist, und holt das Benutzerprofil.
  4. URL und Schlüssel werden für nachfolgende Starts in EncryptedSharedPreferences gespeichert.

Push-Benachrichtigungen

Push-Benachrichtigungen werden über Firebase Cloud Messaging zugestellt. So aktivieren Sie sie:

  1. Erstellen Sie ein Firebase-Projekt unter console.firebase.google.com.
  2. Fügen Sie dem Projekt eine Android-App mit dem Paketnamen Ihrer App hinzu.
  3. Laden Sie google-services.json herunter und legen Sie es im app/-Verzeichnis ab.
  4. Setzen Sie in der LeadHub-Backend-Konfiguration FCM_SERVER_KEY auf Ihren Firebase-Server-Schlüssel.

Die App registriert ihr FCM-Token beim LeadHub-Backend, wenn sich der Benutzer anmeldet.


Build für die Veröffentlichung

  1. Generieren Sie einen Signing-Keystore: keytool -genkey -v -keystore leadhub.keystore -alias leadhub -keyalg RSA -keysize 2048 -validity 10000
  2. Fügen Sie die Signing-Konfiguration zu app/build.gradle hinzu.
  3. Erstellen Sie ein signiertes APK oder AAB über Build → Generate Signed Bundle/APK.
  4. Laden Sie das AAB in die Google Play Console hoch.

Verwendete API-Endpunkte

Die App verwendet diese LeadHub-API-Endpunkte. Alle erfordern ein gültiges Bearer-Token:

EndpunktZweck
GET /api/v1/healthInstanz-Konnektivität prüfen
GET /api/v1/leadsLead-Liste laden
GET /api/v1/leads/{id}Lead-Detail laden
PATCH /api/v1/leads/{id}Lead-Status oder -Stufe aktualisieren
POST /api/v1/leads/{id}/tagsTag zu einem Lead hinzufügen
GET /api/v1/pipelinesPipeline-Liste für die Stufenauswahl laden

Mindest-Scopes für den API-Schlüssel

ScopeGrund
read:leadsLeads anzeigen
write:leadsLead-Status, -Stufe und -Tags aktualisieren
read:pipelinesPipeline-Stufenauswahl befüllen