google_maps_polyline 2.2.1
google_maps_polyline: ^2.2.1 copied to clipboard
Google Directions API ile iki nokta arasında rota alır, Google kodlanmış polyline dizelerini çözer ve kodlar. Saf Dart; Flutter ve sunucu tarafında çalışır.
2.2.1 #
- Directions API responses are decoded as UTF-8 even when the
Content-Typeheader has no charset, so non-ASCIIerror_messagetexts (e.g. Turkish) are no longer garbled. - README: "Works well with" section for animated_route_marker, route_simulator and marker_crafter.
- Example app: demo mode without
DIRECTIONS_API_KEY(bundled sample polylines decoded offline), a map-independent route preview, travel mode and detail options disabled in demo mode.
2.2.0 #
- Language support: new
languageparameter onGoogleMapsPolyline(defaulten). It is sent to the Directions API aslanguageand selects the language of the package's own messages (tr→ Turkish, anything else → English). - Behaviour change: package messages are now English by default (previously Turkish). Pass
language: 'tr'to keep Turkish messages.statusvalues are unchanged. - Network error messages no longer include the request URL.
- Timeout messages show milliseconds for sub-second timeouts.
MyPointLatLng.toString()now returnsMyPointLatLng(lat, lng).- API documentation is now in English; README is English first with a Turkish section.
- Example app: modern corporate design, English/Turkish localization following the device language, Maps SDK key read from
local.properties, Windows Kotlin build fix.
2.1.0 #
detailedPolylineseçeneği: rota, sadeleştirilmişoverview_polylineyerine adım (legs[].steps[].polyline) polylineleri birleştirilerek oluşturulabiliyor; adımlar arasındaki ortak nokta tekrarlanmıyor.- Koordinatlar isteğe sabit ondalıkla (en fazla 7 basamak) yazılıyor; sıfıra yakın değerler artık
1e-7gibi üstel gösterimle gidip API tarafından reddedilmiyor. NaN/sonsuz başlangıç veya hedef koordinatı istek atılmadan hata sonucu döndürüyor;MyNetworkUtil.buildUribu durumdaArgumentErrorfırlatıyor.- README: Flutter web'de Directions API'nin CORS nedeniyle çalışmadığı ve önerilen çözüm eklendi.
2.0.0 #
Kırıcı değişiklikler
- Paket saf Dart oldu; Flutter bağımlılığı kaldırıldı. Kökteki gereksiz platform klasörleri silindi.
MyPointLatLng.latitudevelongitudeartık null olamaz (double); sınıfconstkurucuya,==vehashCode'a sahip.- Dart SDK alt sınırı 3.6.
Hata düzeltmeleri
modeparametresi yanlış gönderiliyordu (Mydrivinggibi); artıkdriving,walking,bicycling,transit.avoidHighways/avoidTolls/avoidFerriesAPI'nin tanımadığı parametreler olarak gönderiliyordu; artıkavoid=highways|tolls|ferries.stopOver: falseolan ara noktalarvia:öneki olmadan gönderiliyordu.- HTTP 200 dışı yanıtlarda
statusboş kalıyordu; artık hata durumu ve mesajı dolduruluyor. - Ağ hatası mesajlarında API anahtarı istek adresiyle birlikte loglanabiliyordu; artık maskeleniyor ve
debugPrintyapılmıyor. - Bozuk polyline
RangeErrorile çöküyordu; çözücü artıkFormatExceptionfırlatıyor, ağ katmanı bunu hata sonucuna çeviriyor. - README'deki
result.status == "ok"kontrolü hiçbir zaman doğru olmuyordu (API"OK"döndürür).
Yenilikler
- Tüm public sınıflar ana kütüphaneden dışa aktarılıyor (
src/içe aktarması gerekmiyor). ResultPolyline.isSuccess,ResultPolyline.statusError.PolylineCodec.decode/encodeveGoogleMapsPolyline.encodePolyline;precision(5 veya 6) desteği.GoogleMapsPolyline(client:, timeout:): özelhttp.Clientve zaman aşımı (varsayılan 15 sn).ZERO_RESULTS,OVER_QUERY_LIMIT,REQUEST_DENIEDvb. durumlar için açıklayıcı mesajlar.- Birim ve sahte HTTP istemcili ağ testleri; yenilenmiş örnek uygulama; README'ye Routes API notu.
1.0.3 #
- Basit güncellemeler.
1.0.2 #
- Basit güncellemeler.
1.0.1 #
- İlk sürüm.