AAWelcome, aracınıza bindiğinizde (Bluetooth veya Android Auto üzerinden bağlandığınızda) sizi karşılayan, hava durumu, trafik akışı, batarya durumu ve zaman gibi verileri harmanlayarak size özel yapay zeka destekli sesli asistan deneyimi sunan yenilikçi bir Android uygulamasıdır.
Uygulama, sıradan robotik asistanların aksine seçilen “yapay zeka kişiliklerine” (örneğin; esprili, tatlı, laf sokan bir yol arkadaşı) bürünerek eğlenceli ve tamamen bağlama duyarlı (context-aware) karşılamalar yapar.
Uygulama, modern Android geliştirme standartlarına (Modern Android Development - MAD) uygun olarak geliştirilmiştir.
ServiceInfo.FOREGROUND_SERVICE_TYPE_CONNECTED_DEVICE)androidx.car.app:app)ai/: Google Gemini ve Pollinations AI API isteklerini yöneten modül. İstekleri hazırlama, kişiliği belirleme (Prompt Engineering) işlemleri burada yapılır.weather/: Open-Meteo API üzerinden yüksek doğruluklu hava durumu verilerini çeken yönetici modül.traffic/: TomTom Traffic API v5 kullanarak kullanıcının istikametindeki trafik olaylarını, radyus ve olay büyüklüğüne göre filtreleyen yapı.service/: MainService adlı ön plan servisiyle Bluetooth ve Android Auto bağlantılarını sürekli dinleyen ana omurga.receiver/: Sistem başlama (Boot) ve bağlantı durumlarını (Connection) yakalayan Broadcast Receiver’lar.tts/: Metinden sese çeviri işlemlerini ve ses motorunun konfigürasyonunu yöneten modül.message/: Elde edilen verileri yapay zekaya göndermeden önce derleyen ve işleyen mekanizma.AiManager sınıfı uygulamanın beyni konumundadır. Kullanıcıdan alınan:
gibi veriler, seçilen dilin özel “Kişilik Promptu” ile birleştirilir. Sistem, Google sunucularında yoğunluk veya hata olursa otomatik olarak yedek AI sağlayıcısı olan Pollinations’a geçiş yapar (Fallback Mechanism).
Örnek Türkçe Prompt Yapısı:
“Sen araç içindeki fırlama, cilveli, hafif yırtık, kafa dengi, hazırcevap, esprili, nüktedan ve hafif atarlı kadın yol arkadaşısın… Görevlerin: Sürücüye selam ver, haftanın gününe göre yorum yap, şarj azsa fırlama bir dille uyar, hava ve trafiği araya sıkıştır.”
Projeyi kendi ortamınızda derleyebilmek için aşağıdaki API anahtarlarına ihtiyacınız vardır:
Uygulamanın tam kapasiteyle çalışabilmesi için Android Manifest üzerinde şu izinleri kullanır:
FOREGROUND_SERVICE & FOREGROUND_SERVICE_CONNECTED_DEVICE: Arka planda kesintisiz bağlantı takibi için.ACCESS_FINE_LOCATION & ACCESS_BACKGROUND_LOCATION: Hava ve trafik verilerinin anlık koordinata göre güncellenmesi için.BLUETOOTH_CONNECT & BLUETOOTH_SCAN: Aracın Bluetooth donanımını algılayıp servisi tetikleyebilmek için.POST_NOTIFICATIONS: Ön plan servisinin (Foreground Service) durumunu kullanıcıya bildirmek için.Geliştiriciler İçin Not: Bu uygulama, API’lerin hız sınırlarına (rate limits) takılmamak adına hafızalama (caching) yöntemlerini kullanmakta ve gereksiz isteklerden kaçınmaktadır. Katkıda bulunurken asenkron Coroutine yapılarına ve Foreground Service kısıtlamalarına (Özellikle Android 12+ için) dikkat edilmesi önemlidir.