Yıllık Uygulama Satışı Hakkında Tavsiye
-
Merhaba. Android cihazlar için yazdığım bir uygulamayı yıllık olarak satışa çıkartmak istiyorum. Öncelikle uygulamam internete bağlı olarak çalışan bir uygulama değil, kullanacak kesim de genelde tablet kullanacağı için interneti zorunlu kılmak istemiyorum. Uygulamada bir login mekanizması var, sadece ilk çalıştırıldığında kullanıcı internet üzerinden giriş yapıyor. Eğer başarılı giriş yaptıysa session mantığı ile girdi bilgisi telefonda saklanıyor ve sonraki açışlarında login işlemi olmuş şekilde internet kullanmadan uygulamayı kullanabiliyor. Şimdi amacım 1 yıl dolduğu zaman bu kişinin logout olmasını sağlamak. Eğer kullanıcı interneti açarsa oluşturulan token değiştiği için otomatik olarak logout oluyor fakat interneti hiç açmadığını varsayarsak, 10 yıl da 1 yıl için aldığı sürümü kullanma şansı olur. Aklıma birkaç çözüm geldi her ay kullanıcıyı yeniden giriş yapmaya zorlamak gibi ancak local olarak kontrolünü yapabileceğim tek saat/tarih cihazın saati olduğu için kullanıcı saati/tarihi geriye alırsa kullanmaya devam edebilir. Bir service yazıp her 10 günde bir arkaplanda token doğru mu diye işlem yapan bir algoritma da düşündüm ancak bu çözüm de yine interneti hiç açmadığı varsayıldığında yanlış bir çözüm oluyor. Bu konuyla ilgili fikri olan var mı, bir şekilde halledilebilir bir sorun mu yoksa kullanıcıya programı çalıştırabilmesi için interneti mutlaka zorunlu mu kılmak zorundayım ?
-
Eğer arkaplanda çalışan hizmetin varsa dosyaya hizmete her 10dakikada bir 10dakika çalıştığını bildiren bir bilgi ekle. Yani şaşarsada 10dk şaşsın. Sonrada session'u düşürürsün.
Birde mobil aygıtlarda çok yoğun uygulamalar kullandığında arkaplan hizmetlerini geçici süre ile durduruyor ama olsun. Şaşarsa bile o yoğun kullanımlarda 20-300dk şaşsın.
-
PcK0 bunu yazdı
Eğer arkaplanda çalışan hizmetin varsa dosyaya hizmete her 10dakikada bir 10dakika çalıştığını bildiren bir bilgi ekle. Yani şaşarsada 10dk şaşsın. Sonrada session'u düşürürsün.
Birde mobil aygıtlarda çok yoğun uygulamalar kullandığında arkaplan hizmetlerini geçici süre ile durduruyor ama olsun. Şaşarsa bile o yoğun kullanımlarda 20-300dk şaşsın.
Hocam bu yöntemi de düşündüm ama tahminimce şarjı gözle görülür şekilde etkiler, bu da fazlasıyla istenmeyen bir durum kullanıcı kitlem için.
-
:) boşuna kastık :D
30x24 saat yani 1aylık programın aktif çalışma süresinden sonra session'u düşür olsun bitsin. Yani maksimum düzeyde bu olsun. Gene saati kontrol et. Bu da ek yapılanma olsun.
-
PcK0 bunu yazdı
:) boşuna kastık :D
30x24 saat yani 1aylık programın aktif çalışma süresinden sonra session'u düşür olsun bitsin. Yani maksimum düzeyde bu olsun. Gene saati kontrol et. Bu da ek yapılanma olsun.
hocam 30x24 saati kontrol etmek için yine arkaplanda sürekli çalışan bir servis lazım olacak
-
Hocam offline uygulama işi biraz sakat gibi. Bizim insanımız biraz gariptir. Tut ki cihazın saatini ileriye aldı (kimi oyunlarda ileri alınca ekstra can vs yüklendiğinden dolayı sıkça yapılıyor) ve senin uygulama offline çalışırken adam uygulamayı alalı henüz bir ay olmasına karşın geçersiz lisans hatası verdi.. Bunu da düşünmen gerekir.
-
Tabletlerin aktif kullanım süresi 1 yıl olupta internete bağlanmama ihtimali pek mümkün gözükmüyor bence uygulamanı bundan dolayı bekletme
1 yılda ya format yiyor yada bi şekilde internete bağlanıyor.
dandik tabletler 6 ayda pil sorunundan dolayı çöpe gidiyor.
pili yapanlar bile o kadar çalışmayacağını biliyorlar
sen fazla canını sıkma devam et
-
O zaman yine kullaniciya bagli kaldik. Bunun netsiz bir cozumu olmamasi cok garip ya
-
manyaki bunu yazdı
O zaman yine kullaniciya bagli kaldik. Bunun netsiz bir cozumu olmamasi cok garip ya
şöyle yap,
1 - Program ilk açıldığında bir sqlite database'i oluştur,
2 - bu db'de expiry date gibi bir alan olsun
3 - kullanıcı ilk login yaptığında sen onun lisans sözleşmesine göre expiry date'ini o sqlite database'e yazdır, (345 days left gibi bir sistem olacak)
4 - db'yi şifrele, her program açılışında local veriyi denetlersin
a. istersen direk 24 temmuz 2016 diye bir lisans bitme süresini yazarsın db'ye, ardından her gün, date-now ile kontrol yaparsın, içinde bulunduğumuz gün 24 temmuz 2016 ise logout yap şeklinde
b. istersen days left sistemi yap, hani kullanıcı tarihi saati otomatik almaz sistemi kandırır diyorsun ki uğraşamaz çünkü diğer uygulamalar mahvolur. Ama öyle dersen, 24 saatte bir days left kısmından 1 eksiltirsin, 0 olduğunda logout yaptırırsın.