Ürün Haberleri

Jetpack Navigation 3 kararlı sürümde

Okuma süresi: 3 dk.
Don Turner'ın profilini görüntüle
Don Turner Geliştirici İlişkileri Mühendisi

Jetpack Navigation 3'ün 1.0 sürümü kararlı 🎉. Hemen üretim uygulamalarınızda kullanmaya başlayabilirsiniz. JetBrains, bu özelliği KotlinConf uygulamasında kullanıyor.

Navigation 3, Jetpack Compose durumunu benimsemek için sıfırdan oluşturulmuş yeni bir gezinme kitaplığıdır. Eski yığınınız üzerinde tam kontrol sahibi olmanızı sağlar, gezinme durumunu korumanıza yardımcı olur ve kolayca uyarlanabilir düzenler (ör. liste-ayrıntı düzeni) oluşturmanıza olanak tanır. JetBrains'in platformlar arası bir sürümü bile var.

Neden yeni bir kitaplık?

Orijinal Jetpack Navigation kitaplığı (artık Nav2) 7 yıl önce tasarlandı. Orijinal hedeflerine iyi hizmet etmesine ve kademeli olarak iyileştirilmesine rağmen uygulamaların oluşturulma şekli temelden değişti. 

Bildirim temelli kullanıcı arayüzüyle reaktif programlama artık standart haline geldi. Nav3 bu yaklaşımı benimser. Örneğin, NavDisplay (ekranlarınızı gösteren Nav3 kullanıcı arayüzü bileşeni), Compose durumu tarafından desteklenen bir anahtar listesini (her biri bir ekranı temsil eder) gözlemler ve bu liste değiştiğinde kullanıcı arayüzünü günceller.

nav-display.png

Nav2, kendi dahili durumuna sahip olduğundan gezinme durumunuz için tek bir doğruluk kaynağına sahip olmayı da zorlaştırabilir. Nav3 ile kendi durumunuzu sağlayarak tam kontrol sahibi olursunuz.

Son olarak, daha fazla esneklik ve özelleştirme olanağı istediniz. Nav3, tek ve monolitik bir API yerine, karmaşık işlevler oluşturmak için birleştirilebilen daha küçük, ayrılmış API'ler (veya "yapı taşları") sağlar. Nav3, iyi tanımlanmış gezinme kullanım alanları için mantıklı varsayılanlar sağlamak amacıyla bu yapı taşlarını kullanır. 

Bu yaklaşım sayesinde: 

Tasarımı ve özellikleri hakkında daha fazla bilgi için lansman blogunu okuyun. 

Navigation 2'den taşıma

Nav2'yi, özellikle de Navigation Compose'u kullanıyorsanız Nav3'e geçiş yapabilirsiniz. Bu konuda size yardımcı olacak bir geçiş rehberi de hazırladık. Temel adımlar şunlardır: 

  1. navigation 3 bağımlılıklarını ekleyin.
  2. NavKey'i uygulamak için navigasyon rotalarınızı güncelleyin. Nav3'ü kullanmak için rotalarınızın bu arayüzü uygulaması gerekmez. Ancak uygularlarsa kalıcı bir eski yığın oluşturmak için Nav3'ün rememberNavBackStack işlevinden yararlanabilirsiniz.
  3. Gezinme durumunuzu tutmak ve değiştirmek için sınıflar oluşturun. Eski yığınlarınız burada tutulur.
  4. NavController'ı bu sınıflarla değiştirin.
  5. Hedeflerinizi NavHost'un NavGraph'ından bir entryProvider'a taşıyın.
  6. NavHost'u NavDisplay ile değiştirin.

Yapay zeka ajanı taşıma işlemini deneme

Geçiş rehberini okumak ve projenizdeki adımları uygulamak için bir yapay zeka ajanı kullanmayı deneyebilirsiniz. Bunu Android Studio'da Gemini'ın Temsilci Modu ile denemek için:

  • Kılavuzun bu Markdown sürümünü projenize kaydedin.
  • Bu istemi temsilciye yapıştırın (ancak Enter tuşuna basmayın): "Bu projeyi Navigation 3'e taşımak için şunu kullan: ".
  • @migration-guide.md yazın. Bu, kılavuzu temsilciye bağlam olarak sağlar. 

Her zaman olduğu gibi, yapay zeka ajanının yaptığı değişiklikleri dikkatlice inceleyin. Yapay zeka ajanı hata yapabilir.

Sizin veya temsilcinizin nasıl bir performans sergilediğini öğrenmek isteriz. Lütfen geri bildiriminizi buradan gönderin.

Yaygın senaryolar için lezzetli gezinme tarifleri

Yaygın ancak ayrıntılı kullanım alanları için tarifler depomuz bulunmaktadır. Bu örnekte, Nav3 API'lerinin belirli bir şekilde nasıl birleştirileceği gösterilmektedir. Bu sayede, tarifi kendi ihtiyaçlarınıza göre seçebilir veya değiştirebilirsiniz. Popüler olan tariflerin ayrıntılı olmayan kısımlarını temel Nav3 kitaplığına veya eklenti kitaplıklarına "mezun etmeyi" düşüneceğiz. 

code-recipes.png

Şu anda 19 tarif bulunmaktadır. Bunlardan bazıları: 

Şu anda derin bağlantılarla ilgili bir tarif ve Koin entegrasyonu üzerinde çalışıyoruz. Ayrıca planladığımız daha birçok tarif var. JetBrains'den bir mühendis de tariflerin Compose Multiplatform sürümünü yayınladı.

Tarifini görmek istediğiniz yaygın bir kullanım alanınız varsa lütfen tarif isteğinde bulunun. 

Özet

Nav3'ü kullanmaya başlamak için belgelere ve tariflere göz atın. Ayrıca, bir hafta boyunca teknik içerikler de paylaşılacak: 

  • Modülerleştirme, animasyonlar ve uyarlanabilir düzenleri kapsayan API hakkında ayrıntılı inceleme videosu.
  • Nav3'ü geliştiren mühendislerle canlı "İstediğinizi Sorun" (AMA) oturumu.

Nav3 Spotlight Week, 1 Aralık 2025'te başlayacak. 


Her zaman olduğu gibi, herhangi bir sorunla karşılaşırsanız lütfen buradan bildirin. 

Yazan:
Okumaya devam et