Site icon Mobilhanem

Android Splash Screen (Giriş Ekranı) Yapımı(Thread veya HttpPost)

Merhaba Arkadaşlar bu dersimizde Androidde Splash Screen nasıl yapılır nerede  ve ne için kullanılır bundan bahsedeceğim.Splash Screen uygulama açıldığında ilk açılacak sayfadır(activity) ve genelde bir image den oluşur.Kullanıcını herhangi bir işlem yapmasına gerek kalmadan anasayfaya kendisi geçiş yapar.

Kullanılmasının iki ana amacı vardır.Ben bu iki örneğide yazdığım uygulamalarla anlatmaya çalışacağım.İkisi içinde farklı uygulamalar yazıp kaynak kodlarını paylaşacağım. 1.sinde uygulama açılır açılmaz Splash Screen açılacak ve 4 saniye sonra Ana Sayfaya(Activity)e yönlenecek 2.sinde ise kullanıcının ruhu duymadan sunucuyla bağlantı kurup gelen cevaba göre Ana Sayfaya yönleneceğiz.
[wpdm_file id=4]

1-Firmanın ismi uygulamanın ismi gibi bilgilere yer verilip bir image ve ya slaytla uygulamaya renk katmak ve belli bir zaman boyunca gösterip ana activity e geçiş yapmak.(Thread)

import android.app.*;
import android.os.*;
import android.content.Intent;

public class SplashScreen extends Activity
{
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState)
	{
        super.onCreate(savedInstanceState);
        setContentView(R.layout.splash);
		Thread mSplashThread;//thread classdan obje olustrduk uygulamann 4 saniye uyutulmasi icin
		mSplashThread = new Thread(){
			@Override public void run(){ 
				try { 
					
					synchronized(this){ 
						wait(4000); 
					} 
				}catch(InterruptedException ex){ 

				}
				finally{
					
					Intent i=new Intent(getApplicationContext(),MainActivity.class);
					startActivity(i);
					finish();
				}
				
			} 
		};//thread objesini olustrduk ve istedmz sekilde sekillendrdik
		mSplashThread.start();// thread objesini calistriyoruz
		
    }
}

2-Uygulamayla sunucu arasında bağlantı kurup gerekli bilgi alışverişini sağlamak ve uygulamayı posttan cevap gelip gerekli işlemlerden sonra açmak.Burdaki gerekli bilgi alışverişi ne olabilirki derseniz uygulamanın güncellemesinin olup olmadığını kontrol etmek diyebilirim. Tabi bu sadece bir örneği daha yüzlerce gerekli işlem olabilir.(HttpPost)

import java.util.ArrayList;
import java.util.List;

import org.apache.http.NameValuePair;
import org.apache.http.message.BasicNameValuePair;
import android.app.*;
import android.os.*;
import android.util.Log;
import android.content.Intent;

public class SplashScreen extends Activity
{
	String url = "http://www.mobilhanem.com/test/splashscreen.php";
	String veri_string;
	PostClass post = new PostClass();  //Post Class dan post adında nesne olusturduk.Post classın içindeki methodu kullanabilmek için

    @Override
    public void onCreate(Bundle savedInstanceState)
	{
        super.onCreate(savedInstanceState);
        setContentView(R.layout.splash);
        new Post().execute(); //Asynctask Classı Çağırıyoruz
    }
    
    class Post extends AsyncTask<Void, Void, Void> {

		protected void onPreExecute() { // Post tan önce yapılacak işlemler. 
 	       
	    }
	 
	    protected Void doInBackground(Void... unused) { // Arka Planda yapılacaklar. Yani Post işlemi  
	    	
            List<NameValuePair> params = new ArrayList<NameValuePair>(); //Post edilecek değişkenleri ayarliyoruz.
            //Bu değişkenler bu uygulamada hiçbir işe yaramıyor.Sadece göstermek amaçlı
            params.add(new BasicNameValuePair("isim", "taha"));
    		params.add(new BasicNameValuePair("mail", "taha@xxxx.com"));
    		
            veri_string = post.httpPost(url,"POST",params,20000); //PostClass daki httpPost metodunu çağırdık.Gelen string değerini aldık
            
            Log.d("Gelen Veri",""+veri_string);
            return null;     	
	    }       
	 
	    protected void onPostExecute(Void unused) { //Posttan sonra
	    	Intent i=new Intent(getApplicationContext(),MainActivity.class);
			startActivity(i);
			finish();

	    }
	}
}

İkinci örnek de Post u nasıl yaptığımızı anlamayan arkadaşlar Android Http Post ve AsyncTask Kullanımı dersimizi incelemesini tavsiye ederim.
Arkadaşlar bu derste anlatmak istediklerim bu kadar. Destek için lütfen yazımızı aşağıdaki linklerden paylaşın.

Tüm Android Ders, Proje ve Kaynak Kodlar için tıklayınız.
[wpdm_file id=4] 0

Exit mobile version