Tüm etkinliklerim için kullanmak istediğim bir GameStateManager singleton'um var. Özellikle, bireysel bir Etkinlik Bağlamı yerine Uygulama Bağlamı'nı kullanarak EventManager ile çıkan Olayları dinlemesini istiyorum.RoboGuice 2.0 ile Android uygulaması - Uygulama içeriğiyle birlikte bir Singleton nasıl enjekte edilir
GameStateManager ben Application.OnCreate sırasında GameStateManager enjekte etmeye çalıştı
tekil ek açıklama ile işaretlenir (üzgün, kopyalanıp yapıştırılan değil bellek, aşağıda pasajı yazmış, bu yüzden yanlış olabilir)
public void OnCreate(){
GameStateManager gameStateManager = RoboGuice.InjectMembers(this.getApplicationContext(), new GameStateManager())
}
GameStateManager örneğinin uygulama bağlamıyla oluşturulacağını ve tek birton olarak açıklandığı için uygulama bağlamında daha sonra kullanılabileceğini düşündüm. Fark ettiğim şey, GameStateManager'ı bir etkinliğe enjekte ettiğimde, gerçekte etkinlik bağlamına bağlı yeni bir tekil var. Yani özünde 2 tane bekar var :)
Uygulama içeriğine bağlı gerçek bir 'singleton' a nasıl sahip olacağınıza dair bir fikir var mı?
Teşekkürler! RoboGuice Guicealtında inşa edilmiştir
Bunu denedim ve işe yaramadı. Eğer yanılmıyorsam, ContextSingleton size bağlam başına bir tekil vermez, bu aslında Singleton ile de gördüğüm deneyimdir. – Erds
javadoc, bağlam için singelton olması gerektiğini söylüyor. Daha fazla aramak için gidiyor. O zaman bu cevabı şu ana kadar silmemize izin verin. –
silmek için çekinmeyin, bu seçeneği kullanmıyorum – Erds