Android Uygulaması
Android Geliştirici Kılavuzu
Bu belge, Kotlin ile yazılmış LeadHub yerel Android uygulamasını kapsar. Uygulama, REST API aracılığıyla LeadHub örneğinize bağlanır. Uygulamayı derlemesi, özelleştirmesi veya dağıtması gereken geliştiriciler için hazırlanmıştır.
Gereksinimler
Başlamadan önce aşağıdakilerin mevcut olduğundan emin olun:
| Gereksinim | Detay |
|---|---|
| Android Studio | Hedgehog (2023.1.1) veya daha yeni |
| JDK | 17 veya üzeri |
| Minimum API Seviyesi | 26 (Android 8.0) |
| LeadHub Örneği | Geçerli SSL sertifikasıyla HTTPS üzerinden erişilebilir |
| API Anahtarı | Kullanıcı panosunda oluşturulmuş |
Proje Kurulumu
1. Projeyi Açın
Android Studio'da android/ klasörünü açın. Gradle bağımlılıkları otomatik olarak senkronize eder.
2. Temel URL'yi Yapılandırın
app/src/main/assets/config.xml dosyasını açın ve örnek URL'nizi ayarlayın:
<config>
<base_url>https://yourdomain.com</base_url>
</config>
3. Senkronize Edin ve Derleyin
Her şeyin doğru şekilde derlendiğini doğrulamak için Build → Make Project çalıştırın.
Mimari
Uygulama standart Android MVVM modelini kullanır:
| Katman | Teknoloji |
|---|---|
| Ağ | Retrofit + OkHttp |
| UI Durumu | ViewModel + LiveData |
| Yerel Depolama | Room (SQLite veritabanı) |
| Push Bildirimleri | Firebase Cloud Messaging (FCM) |
| Kimlik Bilgisi Depolama | EncryptedSharedPreferences |
Kimlik Doğrulama Akışı
- Kullanıcı giriş ekranına örnek URL ve API anahtarını girer.
- Uygulama, örneğe erişilebilirliği doğrulamak için
GET /api/healthçağrısı yapar. - Uygulama, API anahtarını Bearer token olarak kullanarak
GET /api/users/meçağrısı yapar. - Başarı durumunda API anahtarı EncryptedSharedPreferences'a kaydedilir ve kullanıcı kimliği doğrulanmış kabul edilir.
Push Bildirimleri
Uygulama, yeni lead bildirimleri için Firebase Cloud Messaging kullanır.
- Firebase Console'da bir proje oluşturun.
- Uygulamanızın paket adıyla bir Android uygulaması ekleyin.
google-services.jsondosyasını indiripapp/klasörüne yerleştirin.- Backend'in bildirim gönderebilmesi için FCM sunucu anahtarını (
FCM_SERVER_KEY) LeadHub sunucu yapılandırmasına ekleyin.
Yayın Sürümü Oluşturma
1. Keystore Oluşturun
keytool -genkey -v -keystore leadhub.keystore -alias leadhub -keyalg RSA -keysize 2048 -validity 10000
2. İmzalamayı Yapılandırın
Uygulamanızın build.gradle dosyasındaki signingConfigs bölümüne keystore ayrıntılarını ekleyin.
3. Yayın APK / AAB Derleyin
Android Studio'da Build → Generate Signed Bundle / APK kullanın veya şunu çalıştırın:
./gradlew bundleRelease
Çıktı AAB dosyası app/build/outputs/bundle/release/ konumunda olacaktır.
4. Google Play'e Yükleyin
AAB dosyasını Google Play Console'daki Üretim → Yeni sürüm oluştur bölümüne yükleyin.
Kullanılan API Uç Noktaları
| Uç Nokta | Amaç |
|---|---|
GET /api/health | Örnek erişilebilirliğini doğrula |
GET /api/users/me | API anahtarını doğrula ve kullanıcı bilgilerini al |
GET /api/leads | Lead listesini getir |
GET /api/leads/{id} | Lead ayrıntılarını al |
PUT /api/leads/{id} | Lead güncelle |
GET /api/pipelines | Pipeline'ları ve aşamaları getir |
Gereken Minimum API Anahtarı Kapsamları
| Kapsam | Neden |
|---|---|
read:leads | Leadleri görüntüle |
write:leads | Uygulamadan lead güncelle |
read:pipelines | Pipeline aşamalarını göster |