Ürün Haberleri

Jetpack Navigation 3 kararlı sürümde

Okuma süresi: 3 dakika
Don Turner
Geliştirici İlişkileri Mühendisi

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

Navigation 3, Jetpack Compose durumunu desteklemek için sıfırdan oluşturulmuş yeni bir gezinme kitaplığıdır. Geri yığın üzerinde tam kontrol sahibi olmanızı sağlar, gezinme durumunu korumanıza yardımcı olur ve uyarlanabilir liste-ayrıntı düzenleri kolayca oluşturmanıza olanak tanır. JetBrains'in platformlar arası bir sürümü de vardır.

Neden yeni bir kitaplık?

Orijinal Jetpack Navigation kitaplığı (şimdi Nav2) 7 yıl önce tasarlanmıştı. Orijinal hedeflerine iyi hizmet etse ve yinelemeli olarak iyileştirilmiş olsa da uygulamaların oluşturulma şekli temelden değişti. 

Bildirim temelli kullanıcı arayüzüyle reaktif programlama artık standarttır. Nav3 bu yaklaşımı benimser. Örneğin, NavDisplay (Nav3 kullanıcı arayüzü bileşeni, ekranlarınızı gösterir) yalnızca Compose durumuyla 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ğru kaynağa sahip olmayı da zorlaştırabilir. Nav3 ile kendi durumunuzu sağlarsınız ve bu sayede tam kontrol sahibi olursunuz.

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

Bu yaklaşım sayesinde: 

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

Navigation 2'den taşıma

Zaten Nav2'yi, özellikle Navigation Compose'u kullanıyorsanız Nav3'e geçmeyi düşünebilirsiniz. Bu konuda size yardımcı olması için bir taşıma kılavuzu hazırladık. Temel adımlar şunlardır: 

  1. Navigation 3 bağımlılıklarını ekleyin.
  2. NavKey'i uygulamak için gezinme rotalarınızı güncelleyin. Rotalarınızın Nav3'ü kullanmak için bu arayüzü uygulaması gerekmez. Ancak bu arayüzü uygularlarsa kalıcı bir geri 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. Bu sınıflar, eski yığınlarınızın tutulduğu yerdir.
  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 denemeleri

Taşıma kılavuzunu okumak ve projenizdeki adımları uygulamak için yapay zeka ajanı kullanmayı deneyebilirsiniz. Bu özelliği Android Studio'nun Temsilci Modu'nda Gemini ile denemek için:

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

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

Sizin veya temsilcinizin performansı hakkında geri bildirimlerinizi buradan gönderebilirsiniz.

Sık karşılaşılan senaryolar için kullanışlı gezinme tarifleri

Yaygın ancak ayrıntılı kullanım alanları için bir tarif deposu oluşturduk. Bu örnekte, Nav3 API'lerinin belirli bir şekilde nasıl birleştirileceği gösterilmektedir. Böylece, tarifi kendi ihtiyaçlarınıza göre seçebilir veya değiştirebilirsiniz. Bir tarif popüler olursa tarifin ayrıntılı olmayan kısımlarını temel Nav3 kitaplığına veya eklenti kitaplıklarına ekleyebiliriz. 

code-recipes.png

Şu anda aşağıdakiler de dahil olmak üzere 19 tarif bulunmaktadır: 

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

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

Özet

Nav3'ü kullanmaya başlamak için dokümanlara ve tariflere göz atın. Ayrıca, aşağıdakiler de dahil olmak üzere bir hafta boyunca teknik içerikler paylaşılacak: 

  • Modülerleştirme, animasyonlar ve uyarlanabilir düzenleri kapsayan API hakkında ayrıntılı bir video.
  • Nav3'ü geliştiren mühendislerle canlı "Bana istediğinizi sorun" (BİS) oturumu

Nav3 Spotlight Week 1 Aralık 2025'te başlıyor. 


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

Yazan:

Okumaya devam edin