Site icon Mobilhanem

Volley ile Rest Api Kullanımı ( POST, GET, PUT, DELETE )

Merhaba arkadaşlar,

Bugün dersimizde sizlere Volley kütüphanesi kullanarak PHP ile hazırlanan Rest Api leri android uygulamamızda nasıl kullanacağımıza bakacağız.  Bu dersimizde Rest Api leri oluşturma ile ilgili ayrıntılı bilgiyi bulabilirsiniz. Şimdi hazırlanan rest api leri kullanarak Volley ile Rest Api Kullanımı dersimizi incelemeye başlayalım.

Volley kullanımı ile ilgili sitemizde bulunan bu dersi de ayrıca inceleyebilirsiniz.

Şimdi gelelim kodlarımızı oluşturmaya ; volley kütüphanesinin projeye dahil edilmesi ile ilgili diğer derslerimizde ayrıntılı bilgi vermiştik fakat tekrardan adımlara bir daha bakalım; öncelikle volley kütüphanesinin build.gradle dosyamıza ekliyoruz ve projemizi sync ediyoruz.

compile 'com.mcxiaoke.volley:library:1.0.19'

Daha sonra kendi Application sınıfımızı yaratıyoruz Volley isteklerinin kontrolünü kolaylaştırmak için:

AppController.java

package com.mobilhanem.phprestapivolleyexample;

import android.app.Application;
import android.content.Context;
import android.support.multidex.MultiDex;
import android.text.TextUtils;

import com.android.volley.Request;
import com.android.volley.RequestQueue;
import com.android.volley.toolbox.Volley;

/**
 * Created by alper on 14/06/2017.
 */

public class AppController extends Application {

    public static final String TAG = AppController.class.getSimpleName();

    private RequestQueue mRequestQueue;

    private static AppController mInstance;

    @Override
    public void onCreate() {
        super.onCreate();
        mInstance = this;
    }

    public static synchronized AppController getInstance() {
        return mInstance;
    }

    public RequestQueue getRequestQueue() {
        if (mRequestQueue == null) {
            mRequestQueue = Volley.newRequestQueue(getApplicationContext());
        }

        return mRequestQueue;
    }

    public <T> void addToRequestQueue(Request<T> req, String tag) {
        req.setTag(TextUtils.isEmpty(tag) ? TAG : tag);
        getRequestQueue().add(req);
    }

    public <T> void addToRequestQueue(Request<T> req) {
        req.setTag(TAG);
        getRequestQueue().add(req);
    }

    public void cancelPendingRequests(Object tag) {
        if (mRequestQueue != null) {
            mRequestQueue.cancelAll(tag);
        }
    }

    @Override
    protected void attachBaseContext(Context base) {
        super.attachBaseContext(base);
        MultiDex.install(this);

    }
}

Şimdi ilk kullanıcı eklemek için kullanacağımız POST isteğini oluşturalım ; aşağıdaki kaynak kodları incelediğimizde butona basıldığı anda StringRequest istediğinde bulunuyoruz ve sunucuya getParams methodunu ile gerekli parametre değerlerini gönderiyoruz. Php kodlarınıda incelerseniz neden bu şekilde değerler gönderdiğimi daha iyi anlayacaksınız. Aslında burada hangi değerleri göndereceğimiz hangi değerleri alacağımız servisin ne şekilde oluşturulduğuna bağlı. Bizden servisin istediği değerleri kullanıcı tek tek girdikten sonra butona basarak istekle bulunuyor. Burada dikkat etmemiz bir diğer konu ise; HashMap oluşturup değerleri gönderdiğimiz için bir key-value ilişkisi içerisinde olmak zorunda ve bizden beklenen key değerleri sunucu tarafında ne ise karşılığı android tarafında da o olmalıdır. Örn: kullaniciAdi yerine kullaniciadi yazmanız bile hatalı bir istek yapmanıza neden olacaktır. ( kullaniciAdi, adSoyad, posta, telefon, sifre ) StringRequest methodunda POST isteği yaptığımız ve hangi url e bu isteği gönderdiğimizde kodda açık bir şekilde belirtilmiştir. Eğer servisten hatasız bir şekilde bir cevap dönerse onResponse methoduna düştüğünü göreceksiniz eğer debug ederseniz ki kaynak kodları indirip çalıştırdıktan sonra debug etmeniz faydalı olacaktır. onResponse da bize gelen cevap String olduğu için biz onu önce JsonObject e çevirdik daha sonra içerisinde bize dönen cevaplardan “mesaj” kısmını alıp ekranda kullanıcıya gösterdik.

Bize dönen json stringini alıp bu linke yapıştırdığımızda eğer istek başarılı ise aşağıdaki cevabı aldığınızı göreceksiniz.

 

 

 

 

 

 

Eğer herhangi bir nedenden dolayı istek başarısız olursa onErrorResponse methoduna düşecektir ve kodlara baktığımızda sunucudan gelen cevabı parse edip ekranda gösteriyoruz.

POST ile ilgili ekran görüntümüz aşağıdadır:

PostRegisterUser.java

package com.mobilhanem.phprestapivolleyexample;

import android.app.ProgressDialog;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

import com.android.volley.AuthFailureError;
import com.android.volley.DefaultRetryPolicy;
import com.android.volley.NetworkResponse;
import com.android.volley.Request;
import com.android.volley.Response;
import com.android.volley.VolleyError;
import com.android.volley.toolbox.StringRequest;

import org.json.JSONException;
import org.json.JSONObject;

import java.util.HashMap;
import java.util.Map;

public class PostRegisterUser extends AppCompatActivity {

    private Button executeBtn;
    private ProgressDialog progress;
    private EditText userName, userEmail, userPhone, userPassword, name;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        getSupportActionBar().setTitle("POST İSTEĞİ");

        executeBtn = (Button)findViewById(R.id.executeBtn);
        userName = (EditText)findViewById(R.id.userName);
        userEmail = (EditText)findViewById(R.id.emailAddress);
        userPassword = (EditText)findViewById(R.id.password);
        userPhone = (EditText)findViewById(R.id.phoneNumber);
        name = (EditText)findViewById(R.id.nameSurname);

        executeBtn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {


                progress = ProgressDialog.show(PostRegisterUser.this,"",
                        "Lütfen Bekleyiniz", true);



                StringRequest jsonForPostRequest = new StringRequest(
                        Request.Method.POST,UrlConnection.BASE_URL,
                        new Response.Listener<String>() {
                            @Override
                            public void onResponse(String response) {

                                progress.dismiss();
                                Log.i("log",response.toString());

                                JSONObject jsonObject = null;
                                try {
                                    jsonObject = new JSONObject(response);
                                    Toast.makeText(getApplicationContext(),""+jsonObject.getString("mesaj"),Toast.LENGTH_LONG).show();
                                } catch (JSONException e) {
                                    e.printStackTrace();
                                }

                            }


                        }, new Response.ErrorListener() {

                    @Override
                    public void onErrorResponse(VolleyError error) {

                        progress.dismiss();

                        NetworkResponse response = error.networkResponse;
                        if(response != null && response.data != null){
                            JSONObject jsonObject = null;
                            String errorMessage = null;

                            switch(response.statusCode){
                                case 400:
                                    errorMessage = new String(response.data);

                                    try {

                                        jsonObject = new JSONObject(errorMessage);
                                        String serverResponseMessage =  (String)jsonObject.get("hataMesaj");
                                        Toast.makeText(getApplicationContext(),""+serverResponseMessage,Toast.LENGTH_LONG).show();


                                    } catch (JSONException e) {
                                        e.printStackTrace();
                                    }
                            }
                        }
                    }


                }) {

                    @Override
                    protected Map<String, String> getParams() throws AuthFailureError {
                        Map<String,String> params = new HashMap<String, String>();

                        params.put("kullaniciAdi",userName.getText().toString());
                        params.put("adSoyad",name.getText().toString());
                        params.put("posta",userEmail.getText().toString());
                        params.put("telefon",userPhone.getText().toString());
                        params.put("sifre",userPassword.getText().toString());


                        return params;
                    }

                    @Override
                    public Map<String, String> getHeaders() throws AuthFailureError {

                        Map<String, String> param = new HashMap<String, String>();

                        return param;
                    }


                };

                jsonForPostRequest.setRetryPolicy(new DefaultRetryPolicy(10000,DefaultRetryPolicy.DEFAULT_MAX_RETRIES,DefaultRetryPolicy.DEFAULT_BACKOFF_MULT));

                AppController.getInstance().addToRequestQueue(jsonForPostRequest);


            }
        });
    }
}

POST ile ekleme işlemini tamamladıysak şimdi eklediğimiz kullanıcı ile ilgili bilgileri GET isteğini kullanarak ekranda gösterelim. Kaynak kodlarını incelediğimizde StringRequest istediğinde bulunuyoruz ve sunucuya “user_id” değeri ile görüntülemek istediğimiz kullanıcının id sini gönderiyoruz. GET isteğinde bulunduğumuz içinde ilgili url ile birlikte bu değeri eklemiş oluyoruz. Yine aynı şekilde herhangi bir sorun yok ise onResponse methoduna düşüyor ve dönen string değerini JsonObject sine çevirip ilgili değerleri çekerek ekranda gösteriyoruz. Yine herhangi bir hata oluşması durumunda onErrorResponse methoduna düşerek gerekli işlemleri yaptırıyoruz.

not: ( GET methodu ile yapılan istekler tarayıcının adres satırında görünür. )

( örnek: http://vehbiakdogan.com/mobilhanem/index.php?user_id=1 )

GET  isteği sonucu bize dönen json örneği aşağıdaki gibidir.

GET ile ilgili ekran görüntümüz aşağıdadır.

 

GetListUser.java

package com.mobilhanem.phprestapivolleyexample;

import android.app.ProgressDialog;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;

import com.android.volley.AuthFailureError;
import com.android.volley.DefaultRetryPolicy;
import com.android.volley.NetworkResponse;
import com.android.volley.Request;
import com.android.volley.Response;
import com.android.volley.VolleyError;
import com.android.volley.toolbox.JsonObjectRequest;
import com.android.volley.toolbox.StringRequest;

import org.json.JSONException;
import org.json.JSONObject;

import java.util.HashMap;
import java.util.Map;

public class GetListUser extends AppCompatActivity {

    private Button bttn;
    private ProgressDialog progress;
    private EditText userIdInput;
    private TextView txtId, txtNameSurname, txtUserName, txtEmail, txtPassword, txtPhone;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_get_list_user);

        getSupportActionBar().setTitle("GET İSTEĞİ");

        bttn = (Button)findViewById(R.id.button);
        txtId = (TextView) findViewById(R.id.userId);
        txtNameSurname = (TextView)findViewById(R.id.nameSurname);
        txtUserName = (TextView)findViewById(R.id.userName);
        txtEmail = (TextView)findViewById(R.id.userEmail);
        txtPassword = (TextView)findViewById(R.id.userPassword);
        txtPhone = (TextView)findViewById(R.id.userPhone);
        userIdInput = (EditText)findViewById(R.id.userIdText);


        bttn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {

                if(userIdInput.getText().length()>0){
                    clearUserInfos();
                    executeGetMethod();
                }else{
                    Toast.makeText(getApplicationContext(),"Lütfen Bilgilerini Getirmek İstediğiniz Kullanıcının ID sini giriniz!",Toast.LENGTH_SHORT).show();
                }
            }
        });
    }

    private void clearUserInfos() {

        txtId.setText("");
        txtNameSurname.setText("");
        txtUserName.setText("");
        txtEmail.setText("");
        txtPassword.setText("");
        txtPhone.setText("");
    }

    private void executeGetMethod() {

        progress = ProgressDialog.show(GetListUser.this,"",
                "Lütfen Bekleyiniz", true);


        int userID = Integer.parseInt(userIdInput.getText().toString());

        StringRequest jsonForGetRequest = new StringRequest(
                Request.Method.GET,"http://vehbiakdogan.com/mobilhanem/index.php?user_id=" + userID,
                new Response.Listener<String>() {
                    @Override
                    public void onResponse(String response) {

                        progress.dismiss();
                        Log.i("log",response.toString());
                        try {
                            JSONObject obj = new JSONObject(response);
                            JSONObject jsonBody = obj.getJSONObject("uye-bilgileri");
                            txtId.setText(jsonBody.getString("id"));
                            txtUserName.setText(jsonBody.getString("kullaniciAdi"));
                            txtNameSurname.setText(jsonBody.getString("adSoyad"));
                            txtPassword.setText(jsonBody.getString("sifre"));
                            txtEmail.setText(jsonBody.getString("posta"));
                            txtPhone.setText(jsonBody.getString("telefon"));

                        } catch (JSONException e) {
                            e.printStackTrace();
                        }


                    }


                }, new Response.ErrorListener() {

            @Override
            public void onErrorResponse(VolleyError error) {

                progress.dismiss();

                NetworkResponse response = error.networkResponse;
                if(response != null && response.data != null){
                    JSONObject jsonObject = null;
                    String errorMessage = null;

                    switch(response.statusCode){
                        case 400:
                            errorMessage = new String(response.data);

                            try {

                                jsonObject = new JSONObject(errorMessage);
                                String serverResponseMessage =  (String)jsonObject.get("hataMesaj");
                                Toast.makeText(getApplicationContext(),""+serverResponseMessage,Toast.LENGTH_LONG).show();


                            } catch (JSONException e) {
                                e.printStackTrace();
                            }
                    }
                }
            }


        }) {

            @Override
            public Map<String, String> getHeaders() throws AuthFailureError {

                Map<String, String> param = new HashMap<String, String>();

                return param;
            }


        };

        jsonForGetRequest.setRetryPolicy(new DefaultRetryPolicy(10000,DefaultRetryPolicy.DEFAULT_MAX_RETRIES,DefaultRetryPolicy.DEFAULT_BACKOFF_MULT));

        AppController.getInstance().addToRequestQueue(jsonForGetRequest);

    }
}

GET isteği yaparak ekli olan kullanıcı ile ilgili bilgileride ekrana getirip gösterdiğimize göre şimdi kullanıcı id sine göre istediğimiz kullanıcıya ait bilgileri nasıl güncelleyeceğimize bakalım. Güncelleme içinde  JsonObjectRequest methodunu kullanarak PUT isteğimizi gerçekleştiriyoruz. Kaynak kodlara bakarsak eğer; güncelleme için sunucunun bizden istediği değerleri JsonObject kullanarak base url e gönderdiğimizi göreceksiniz. ( kullanici_adi, ad_soyad, posta, telefon, user_id değerlerini kullanıyoruz ve kullanıcı tarafından girilen verileri bu değerler ile ilişkilendirip gönderiyoruz. )

PUT  isteği sonucu bize dönen json örneği aşağıdaki gibidir.

 

 

 

 

 

PUT ile ilgili ekran görüntümüz aşağıdadır.

PutUpdateUser.java

package com.mobilhanem.phprestapivolleyexample;

import android.app.ProgressDialog;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

import com.android.volley.AuthFailureError;
import com.android.volley.DefaultRetryPolicy;
import com.android.volley.NetworkResponse;
import com.android.volley.Request;
import com.android.volley.Response;
import com.android.volley.VolleyError;
import com.android.volley.toolbox.JsonObjectRequest;
import com.android.volley.toolbox.StringRequest;

import org.json.JSONException;
import org.json.JSONObject;

import java.util.HashMap;
import java.util.Map;

public class PutUpdateUser extends AppCompatActivity {

    private Button updateBttn;
    private ProgressDialog progress;
    private EditText userName, userEmail, userPhone, name, userId;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_put_update_user);

        getSupportActionBar().setTitle("PUT İSTEĞİ");

        updateBttn = (Button)findViewById(R.id.updateBttn);
        userId = (EditText)findViewById(R.id.userId);
        userName = (EditText)findViewById(R.id.userName);
        userEmail = (EditText)findViewById(R.id.emailAddress);
        userPhone = (EditText)findViewById(R.id.phoneNumber);
        name = (EditText)findViewById(R.id.nameSurname);

        updateBttn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {

                if(userName.getText().length()>0 && userEmail.getText().length()>0
                        && userPhone.getText().length()>0 && name.getText().length()>0
                        && userId.getText().length()>0){

                    executePutMethod();
                }else{

                    Toast.makeText(getApplicationContext(),"Lütfen Gerekli Alanları Doldurunuz!",Toast.LENGTH_SHORT).show();
                }

            }
        });
    }

    private void executePutMethod() {


        progress = ProgressDialog.show(PutUpdateUser.this,"",
                "Lütfen Bekleyiniz", true);


        JSONObject jsonObject = new JSONObject();
        try {
            jsonObject.put("kullanici_adi", userName.getText().toString());
            jsonObject.put("ad_soyad", name.getText().toString());
            jsonObject.put("posta", userEmail.getText().toString());
            jsonObject.put("telefon", userPhone.getText().toString());
            jsonObject.put("user_id", userId.getText().toString());
        } catch (JSONException e) {
            // handle exception
        }


        JsonObjectRequest jsonForPutRequest = new JsonObjectRequest(
                Request.Method.PUT,UrlConnection.BASE_URL,jsonObject,
                new Response.Listener<JSONObject>() {
                    @Override
                    public void onResponse(JSONObject response) {

                        progress.dismiss();
                        Log.i("log",response.toString());
                        try {
                            Toast.makeText(getApplicationContext(),""+response.getString("mesaj"),Toast.LENGTH_LONG).show();
                        } catch (JSONException e) {
                            e.printStackTrace();
                        }

                    }


                }, new Response.ErrorListener() {

            @Override
            public void onErrorResponse(VolleyError error) {

                progress.dismiss();

                NetworkResponse response = error.networkResponse;
                if(response != null && response.data != null){
                    JSONObject jsonObject = null;
                    String errorMessage = null;

                    switch(response.statusCode){
                        case 400:
                            errorMessage = new String(response.data);

                            try {

                                jsonObject = new JSONObject(errorMessage);
                                String serverResponseMessage =  (String)jsonObject.get("hataMesaj");
                                Toast.makeText(getApplicationContext(),""+serverResponseMessage,Toast.LENGTH_LONG).show();


                            } catch (JSONException e) {
                                e.printStackTrace();
                            }
                    }
                }
            }


        }) {


            @Override
            public Map<String, String> getHeaders() throws AuthFailureError {

                Map<String, String> param = new HashMap<String, String>();

                return param;
            }


        };

        jsonForPutRequest.setRetryPolicy(new DefaultRetryPolicy(10000,DefaultRetryPolicy.DEFAULT_MAX_RETRIES,DefaultRetryPolicy.DEFAULT_BACKOFF_MULT));

        AppController.getInstance().addToRequestQueue(jsonForPutRequest);


    }
}

PUT isteği yaparak ekli olan kullanıcı ile ilgili bilgileride güncellediğimize göre şimdi kullanıcı id sine göre istediğimiz kullanıcıyı nasıl sileceğimize bakalım. Silmek içinde  StringRequest methodunu kullanarak DELETE isteğimizi gerçekleştiriyoruz. Kaynak kodlarını incelediğimizde sunucuya “user_id” değeri ile silmek istediğimiz kullanıcının kullanıcı id sini gönderdiğimizi göreceksiniz. GET isteğinde bulunduğumuz içinde ilgili url ile birlikte bu değeri eklemiş oluyoruz.

DELETE  isteği sonucu bize dönen json örneği aşağıdaki gibidir.

 

 

 

 

 

DELETE ile ilgili ekran görüntümüz aşağıdadır.

 

package com.mobilhanem.phprestapivolleyexample;

import android.app.ProgressDialog;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

import com.android.volley.AuthFailureError;
import com.android.volley.DefaultRetryPolicy;
import com.android.volley.NetworkResponse;
import com.android.volley.Request;
import com.android.volley.Response;
import com.android.volley.VolleyError;
import com.android.volley.toolbox.JsonObjectRequest;
import com.android.volley.toolbox.StringRequest;

import org.json.JSONException;
import org.json.JSONObject;

import java.util.HashMap;
import java.util.Map;

public class DeleteUser extends AppCompatActivity {

    private ProgressDialog progress;
    private Button deleteBttn;
    private EditText inputUserId;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_delete_user);

        getSupportActionBar().setTitle("DELETE İSTEĞİ");

        deleteBttn = (Button)findViewById(R.id.deleteBtn);
        inputUserId = (EditText)findViewById(R.id.userIdInput);

        deleteBttn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                if(inputUserId.getText().length()>0){
                    deleteRequest();
                }else{
                    Toast.makeText(getApplicationContext(),"Lütfen Silmek İstediğiniz Kullanıcının ID sini giriniz!",Toast.LENGTH_SHORT).show();
                }
            }
        });


    }

    private void deleteRequest() {


        progress = ProgressDialog.show(DeleteUser.this,"",
                "Lütfen Bekleyiniz", true);


        int userID = Integer.parseInt(inputUserId.getText().toString());

        StringRequest jsonForPutRequest = new StringRequest(
                Request.Method.DELETE,"http://vehbiakdogan.com/mobilhanem/index.php?user_id=" + userID,
                new Response.Listener<String>() {
                    @Override
                    public void onResponse(String response) {

                        progress.dismiss();
                        Log.i("log",response.toString());
                        try {
                            JSONObject json = new JSONObject(response);
                            Toast.makeText(getApplicationContext(),""+json.getString("mesaj"),Toast.LENGTH_LONG).show();
                        } catch (JSONException e) {
                            e.printStackTrace();
                        }


                    }


                }, new Response.ErrorListener() {

            @Override
            public void onErrorResponse(VolleyError error) {

                progress.dismiss();

                NetworkResponse response = error.networkResponse;
                if(response != null && response.data != null){
                    JSONObject jsonObject = null;
                    String errorMessage = null;

                    switch(response.statusCode){
                        case 400:
                            errorMessage = new String(response.data);

                            try {

                                jsonObject = new JSONObject(errorMessage);
                                String serverResponseMessage =  (String)jsonObject.get("hataMesaj");
                                Toast.makeText(getApplicationContext(),""+serverResponseMessage,Toast.LENGTH_LONG).show();


                            } catch (JSONException e) {
                                e.printStackTrace();
                            }
                    }
                }
            }


        }) {


            @Override
            public Map<String, String> getHeaders() throws AuthFailureError {

                Map<String, String> param = new HashMap<String, String>();

                return param;
            }


        };

        jsonForPutRequest.setRetryPolicy(new DefaultRetryPolicy(10000,DefaultRetryPolicy.DEFAULT_MAX_RETRIES,DefaultRetryPolicy.DEFAULT_BACKOFF_MULT));

        AppController.getInstance().addToRequestQueue(jsonForPutRequest);
    }
}

Daha sonra bu söylediğim istekleri gerçekleştirmek için ekrana dört adet buton koyuyoruz ve tıklandığında ilgili sayfalara yönlendiriyoruz ; ilk çalışacak olan activity miz aşağıdadır.

HomeActivity.java

package com.mobilhanem.phprestapivolleyexample;

import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;

public class HomeActivity extends AppCompatActivity implements View.OnClickListener{

    private Button postBttn, getBttn, putBttn, deleteBttn;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_home);

        postBttn = (Button)findViewById(R.id.postBttn);
        getBttn = (Button)findViewById(R.id.getBttn);
        putBttn = (Button)findViewById(R.id.putBttn);
        deleteBttn = (Button)findViewById(R.id.deleteBtn);

        postBttn.setOnClickListener(this);
        getBttn.setOnClickListener(this);
        putBttn.setOnClickListener(this);
        deleteBttn.setOnClickListener(this);
    }

    Intent intent = null;
    @Override
    public void onClick(View v) {
        switch (v.getId()){
            case R.id.postBttn:
                intent = new Intent(getApplicationContext(),PostRegisterUser.class);
                startActivity(intent);
                break;

            case R.id.getBttn:
                intent = new Intent(getApplicationContext(),GetListUser.class);
                startActivity(intent);
                break;

            case R.id.putBttn:
                intent = new Intent(getApplicationContext(),PutUpdateUser.class);
                startActivity(intent);
                break;

            case R.id.deleteBtn:
                intent = new Intent(getApplicationContext(),DeleteUser.class);
                startActivity(intent);
                break;
        }
    }
}

Gördüğünüz gibi Volley ile Rest Api Kullanımı nı gerçekleştirdik. ( POST, GET, PUT, DELETE ) isteklerini hangi senaryolarda gerçekleştirdiğimizi gördük. Kullanıcı ekleyebilmek için POST methodunu kullandık daha sonra eklediğimiz kullanıcı bilgileri gösterebilmek için GET methodunu kullandık, kullanıcıda güncelleme yapabilmek için PUT methodunu kullandık ve son olarak kullanıcıyı silebilmek için DELETE methodunu kullandık.

Tüm Android Ders, Proje ve Kaynak Kodlar için tıklayınız.

Mobilhanem.com üzerinden anlattığımız mobil uygulama geliştirme derslerine devam edeceğiz. Konu hakkında sorunuzu yorum alanından sorabilirsiniz. Konu dışı sorularınızı ve tüm yazılımsal sorularınızı sorucevap.mobilhanem.com sitemizden de sorabilirsiniz.

Bir dahaki dersimizde görüşmek dileğiyle..

2
Exit mobile version