Android Programlama - İnternet ve GPS Kontrolü

Başlatan Fuul oyun, 12 Nisan 2016, 03:42:14

« önceki - sonraki »

0 Üyeler ve 1 Ziyaretçi konuyu incelemekte.


                        
Mobil uygulama geliştirirken platformdan bağımsız olarak ilk işimiz uygulama başlangıcında gerekli kontrolleri yapmak olmalıdır. Uygulamanızı 5 yaşındaki bir çocuğun bile kullanacağı şekilde tasarlamak en doğrusu olacaktır. Hatta test aşamasında 5 yaşındaki bir çocuğa verin ve kurcalasın. Elbet sizin gözünüzden kaçan bir çok hatayı tesadüfen bulacaktır.
   
   Ne demek istediğimi biraz daha açayım. Bir mobil uygulama yaptınız ve bu mobil uygulama internet ve gps erişimini gerektiriyor. GPS üzerinden konumumuzu bulacak ve bize çevremizdeki kafeleri gösterecek diyelim. Uygulamanız kullanıcının GPS ve internet erişimi aktifse hiç bir hata vermeden çalışacaktır. Peki ya kullanıcı GPS'ini kapattıysa? Ya internet erişimi yoksa ?
   
   Şimdi gelin hep birlikte android üzerinde internet ve gps erişimi kontrolünü nasıl yapacağımıza bakalım. (internet ve gps tamamen bir örnek, sadece kafanızda bir fikir oluşması açısından. Sizin yapacağınız uygulama neye gereksinim duyuyorsa onun kontrolünü uygulama başında kontrol etmelisiniz.)
   
   İlk olarak manifest dosyamıza gerekli izinleri vermeliyiz.
   
   internet erişimi için;
   
   
[Seç][/url]<uses-permission android:name="android.permission.INTERNET" />
   <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
   GPS erişimi için;
   
   
[Seç][/url]<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
   Bu izinleri manifest dosyamıza ekledikten sonra kontrolü yapacağımız sayfayı açalım.
   
   İnternet erişimini kontrol edeceğimiz fonksiyonu yazalım.
   
   
[Seç][/url]public boolean internetErisimi(){
          ConnectivityManager baglanti = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
          if(baglanti.getActiveNetworkInfo()!=null){
          if(baglanti.getActiveNetworkInfo().isConnected ())
          return true;
          }
         
          return false;
          }
   Bu fonksiyonu çağırdığımız her yerde uygulamanın yüklü olduğu cihazın internet erişimini kontrol edebiliriz. Erişimi varsa true, yoksa false değer döndürecektir.
   
   Şimdi nasıl kullanacağımıza bakalım. Mesela bir başlangıç ekranı yaptınız ve bu ekranda kontrolü yapacaksınız, eğer internet erişimi varsa uygulamanızın anasayfasına gidecek, yoksa kullanıcıya uyarı verecek.
   
   
[Seç][/url]if(internetErisimi()){
          
          {   
             startActivity(new Intent (BaslangicSayfasi.this,AnaSayfa.class));
          }
       }
         else{
            
           AlertDialog alertDialog = new AlertDialog.Builder(this).create();
     
           alertDialog.setMessage("Uygulamayı kullanabilmek için internet bağlantınızın aktif olması gerekmektedir");
           alertDialog.setButton("Tamam", new DialogInterface.OnClickListener() {
            public void onClick(DialogInterface dialog, int which) {
              System.exit(0);
            }
           });
     
           Linklerin Görülmesine İzin Verilmiyor Üye ol Veya Giriş Yap();
         }
   Yazmış olduğumuz kod ile telefonda internet erişimi var ise Anasayfa ya yönlendirdik. (tabiki sayfanızı activity olarak manifest dosyanızda belirtmeniz gerekiyor.)
   
   Activitymizin onCreate methoduna yukarıdaki kodları yazdığımızda gerekli kontrolleri yapacak ve eğer uygunsa uygulama başlayacaktır.
   
   Şimdi hem GPS hem internet kontrolü yapalım bakalım;
   
   
   
[Seç][/url]public void kontrol(){
         
         LocationManager locManager = (LocationManager) getSystemService(LOCATION_SERVICE);
   
       if (locManager.isProviderEnabled(LocationManager.GPS_PROVIDER)){
         
          if(internetErisimi()){
          
          {   
             startActivity(new Intent (BaslangicSayfasi.this,Anasayfa.class));
          }
       }
         else{
            
           AlertDialog alertDialog = new AlertDialog.Builder(this).create();
     
           alertDialog.setMessage("Uygulamayı kullanabilmek için internet bağlantınızın aktif olması gerekmektedir");
           alertDialog.setButton("Tamam", new DialogInterface.OnClickListener() {
            public void onClick(DialogInterface dialog, int which) {
              System.exit(0);
            }
           });
     
           Linklerin Görülmesine İzin Verilmiyor Üye ol Veya Giriş Yap();
         }
          
     }
       
       else{
   
             AlertDialog alertDialog2 = new AlertDialog.Builder(this).create();
     
           alertDialog2.setMessage("Uygulamayı kullanabilmek için GPS'in aktif olması gerekmektedir");
           alertDialog2.setButton("Tamam", new DialogInterface.OnClickListener() {
            public void onClick(DialogInterface dialog, int which) {
              System.exit(0);
            }
           });
     
           Linklerin Görülmesine İzin Verilmiyor Üye ol Veya Giriş Yap();
             
       }
         
      }
   Artık her iki erişimide kontrol etmiş olduk. Ve ikiside aktif ise gerekli yönlendirmelerimizi yaptık. onCreate methodunda kontrol() fonksiyonunu çağırmanız yeterli olacaktır.
   
   Yazı tamamen bana aittir lütfen paylaşırken kaynak belirtiniz.
   
   Kaynak: Linklerin Görülmesine İzin Verilmiyor Üye ol Veya Giriş Yap
                     
                  
                  

Linkback: Android Programlama - İnternet ve GPS Kontrolü
  • Gösterim 1,713 
  • Android Eğitim
  • 0 Yanıtlar




Paylaş whatsappPaylaş facebookPaylaş linkedinPaylaş twitterPaylaş myspacePaylaş redditPaylaş diggPaylaş stumblePaylaş technoratiPaylaş delicious

Benzer Konular (5)


İçerik sağlayıcı paylaşım sitesi olarak hizmet veren Replikacep.com sitemizde 5651 sayılı kanunun 8. maddesine ve T.C.Knın 125. maddesine göre tüm üyelerimiz yaptıkları paylaşımlardan kendileri sorumludur.Replikacep.com hakkında yapılacak tüm hukuksal şikayetleri İletişim sayfamızdan bize bildirdikten en geç 3 (üç) iş günü içerisinde ilgili kanunlar ve yönetmelikler çerçevesinde tarafımızca incelenerek gereken işlemler yapılacak ve site yöneticilerimiz tarafından bilgi verilecektir.
Footer menü
Hakkımızda
Bize Ulaşın
Biz Kimiz
Hizmetlerimiz