Trên thực tế, tôi muốn tìm nạp dữ liệu từ MySQL bằng cách sử dụng Retrofit trong Android. Đây là kịch bản của tôi, tôi đang chuyển dữ liệu chuỗi từ hoạt động này sang hoạt động khác, bây giờ tôi muốn sử dụng biến này để chọn cùng một dữ liệu trong cơ sở dữ liệu cho chuỗi của tôi có giá trị 2 bây giờ tôi muốn xem trong cơ sở dữ liệu giống nhau 2 là trong dB hoặc không thích nó một số loại sò.
Đây là mã MySQL
Bây giờ đây là mã của apinterface.java
import retrofit2.Call;
import retrofit2.http.Field;
import retrofit2.http.FormUrlEncoded;
import retrofit2.http.POST;
import retrofit2.http.Query;
public interface Apinterface {
// @FormUrlEncoded
@POST["login.php"]
Call sendnum[@Query["Mobile_Number"] String Mobile_Number];
}
Bây giờ đây là mã của apiclient.java
import retrofit2.Retrofit;
import retrofit2.converter.gson.GsonConverterFactory;
public class ApiClient {
private static final String BASE_URL = "//192.168.10.4/android_register_login/";
private static Retrofit retrofit;
private static ApiClient mInstance;
public static Retrofit getApiClient[] {
retrofit = new Retrofit.Builder[].baseUrl[BASE_URL].addConverterFactory[GsonConverterFactory.create[]].build[];
return retrofit;
}
}
Đây là tệp để khởi tạo các biến
public class MobileNumber {
@SerializedName["response"]
@Expose
private String response;
@SerializedName["Mobile_Number"]
@Expose
private String mobileNumber;
public String getResponse[] {
return response;
}
public void setResponse[String response] {
this.response = response;
}
public String getMobileNumber[] {
return mobileNumber;
}
public void setMobileNumber[String mobileNumber] {
this.mobileNumber = mobileNumber;
}
}
Đây là tệp chính của tôi
protected void onCreate[Bundle savedInstanceState] {
super.onCreate[savedInstanceState];
setContentView[R.layout.activity_school_mobile_code];
apiInterface = ApiClient.getApiClient[].create[Apinterface.class];
}
private void sendnum[]{
Bundle bundle = getIntent[].getExtras[];
final String Mobile_Number= bundle.getString["Mobile"];
Call call =apiInterface.sendnum[Mobile_Number];
call.enqueue[new Callback[] {
@Override
public void onResponse[Call call, Response response] {
if[response.body[].getResponse[].equals["ok"]]{
Toast.makeText[SchoolMobileCode.this, "Success", Toast.LENGTH_SHORT].show[];
}
else if[response.body[].getResponse[].equals["failed"]]{
Toast.makeText[SchoolMobileCode.this, "Error", Toast.LENGTH_SHORT].show[];
}
}
@Override
public void onFailure[Call call, Throwable t] {
//display errror message
Toast.makeText[SchoolMobileCode.this, "F"+t.getMessage[], Toast.LENGTH_SHORT].show[];
}
}];
}
Một điều nữa phản hồi đến từ JSON rất tốt, vấn đề là trong biến "Mobile_number" mà tôi gửi đến để thực hiện tìm kiếm cùng một
Tiếp tục với hướng dẫn trước đây & nbsp; Android Post Data bằng cách sử dụng Retrofit & nbsp; & nbsp; Chúng tôi sẽ tìm nạp dữ liệu bằng cách sử dụng cùng một thư viện Retrofit. Thư viện Retrofit được coi là thư viện nhanh nhất vì vậy chúng tôi sẽ sử dụng nó.
Bây giờ trong hướng dẫn này về dữ liệu tìm nạp Android bằng thư viện Retrofit, chúng tôi sẽ tìm nạp dữ liệu mà chúng tôi đã đăng trước đây giới thiệu hướng dẫn trước đây để có thêm thông tin.
Bắt đầu nào
Dữ liệu tìm nạp Android bằng thư viện Retrofit
Thêm trang bị thêm vào dự án của bạn, vui lòng xem phiên bản phụ thuộc mới nhất trong khi thêm chúng vào dự án của bạn để tránh các tệp mã không dùng nữa có thể dẫn đến sự cố bất thường.
Build.Gradle[Module:App]
dependencies { implementation 'com.squareup.retrofit2:converter-gson:2.2.0' implementation 'com.squareup.retrofit2:retrofit:2.3.0' }
activity_main.xml
Thêm bốn trường để hiển thị các giá trị được tìm nạp từ API được cung cấp
Api.java
Tạo một tệp API và chỉ định đường dẫn ở đây, cũng định cấu hình tệp POJO của bạn với nó.
** Nhận tham số để tìm nạp dữ liệu
** Đăng tham số để đăng dữ liệu
Và chúng được cấu hình với các tệp lớp mô hình tương ứng của chúng để tìm nạp phản hồi và phân tích chúng để tạo dữ liệu trong các đối tượng Java được sử dụng trực tiếp sau.
import java.util.List; import retrofit2.Call; import retrofit2.http.GET; /** * Created by Android on 1/6/2018. */ public interface Api { String BASE_URL = "//10.0.2.2/Data/"; @GET["fetch_data.php"] Call getstatus[]; }
Details_Pojo.java
Và bây giờ đến tệp pojo được sử dụng để tuần tự hóa và tuần tự hóa các biến.
package retrieve.android.com.retrievedatausingretrofit; import com.google.gson.annotations.Expose; import com.google.gson.annotations.SerializedName; /** * Created by Android on 1/6/2018. */ public class Details_Pojo { @SerializedName["Name"] @Expose private String Name; @SerializedName["Age"] @Expose private String Age; @SerializedName["Phone"] @Expose private String Phone; @SerializedName["Email"] @Expose private String Email; public String getName[] { return Name; } public void setName[String name] { Name = name; } public String getAge[] { return Age; } public void setAge[String age] { Age = age; } public String getPhone[] { return Phone; } public void setPhone[String phone] { Phone = phone; } public String getEmail[] { return Email; } public void setEmail[String email] { Email = email; } }
MainActivity.java
Sử dụng dữ liệu Fetch Builder Fetch sử dụng thư viện Retrofit
Retrofit retrofit = new Retrofit.Builder[] .baseUrl[Api.BASE_URL] // Specify your api here .addConverterFactory[GsonConverterFactory.create[]] .build[];
Khởi tạo lớp API
import retrofit2.Call;
import retrofit2.http.Field;
import retrofit2.http.FormUrlEncoded;
import retrofit2.http.POST;
import retrofit2.http.Query;
public interface Apinterface {
// @FormUrlEncoded
@POST["login.php"]
Call sendnum[@Query["Mobile_Number"] String Mobile_Number];
}
0Tìm nạp các giá trị vào tệp pojo
import retrofit2.Call;
import retrofit2.http.Field;
import retrofit2.http.FormUrlEncoded;
import retrofit2.http.POST;
import retrofit2.http.Query;
public interface Apinterface {
// @FormUrlEncoded
@POST["login.php"]
Call sendnum[@Query["Mobile_Number"] String Mobile_Number];
}
1Bây giờ tìm nạp dữ liệu bằng thư viện Retrofit về thành công và về các điều kiện thất bại được chỉ định ở đây. Trên thành công, chúng tôi đang lưu trữ phản hồi cho tệp lớp mô hình của chúng tôi và về thất bại, chúng tôi đang chỉ ra lý do cho sự thất bại
import retrofit2.Call;
import retrofit2.http.Field;
import retrofit2.http.FormUrlEncoded;
import retrofit2.http.POST;
import retrofit2.http.Query;
public interface Apinterface {
// @FormUrlEncoded
@POST["login.php"]
Call sendnum[@Query["Mobile_Number"] String Mobile_Number];
}
2Sau khi thành công, hãy đặt các giá trị thành các trường như bạn muốn là ví dụ, tôi đang làm nó theo cách đơn giản
import retrofit2.Call;
import retrofit2.http.Field;
import retrofit2.http.FormUrlEncoded;
import retrofit2.http.POST;
import retrofit2.http.Query;
public interface Apinterface {
// @FormUrlEncoded
@POST["login.php"]
Call sendnum[@Query["Mobile_Number"] String Mobile_Number];
}
3Nếu cuộc gọi dẫn đến thất bại, tôi sẽ hiển thị bánh mì nướng
import retrofit2.Call;
import retrofit2.http.Field;
import retrofit2.http.FormUrlEncoded;
import retrofit2.http.POST;
import retrofit2.http.Query;
public interface Apinterface {
// @FormUrlEncoded
@POST["login.php"]
Call sendnum[@Query["Mobile_Number"] String Mobile_Number];
}
4Mã đầy đủ:
Cung cấp mã đầy đủ cho dữ liệu tìm nạp bằng thư viện Retrofit
import retrofit2.Call;
import retrofit2.http.Field;
import retrofit2.http.FormUrlEncoded;
import retrofit2.http.POST;
import retrofit2.http.Query;
public interface Apinterface {
// @FormUrlEncoded
@POST["login.php"]
Call sendnum[@Query["Mobile_Number"] String Mobile_Number];
}
5ManifestActivity.xml
Đề cập đến Internet và access_network_state tại đây để tìm nạp dữ liệu bằng thư viện RetrofitINTERNET and ACCESS_NETWORK_STATE here to Fetch Data Using Retrofit Library
import retrofit2.Call;
import retrofit2.http.Field;
import retrofit2.http.FormUrlEncoded;
import retrofit2.http.POST;
import retrofit2.http.Query;
public interface Apinterface {
// @FormUrlEncoded
@POST["login.php"]
Call sendnum[@Query["Mobile_Number"] String Mobile_Number];
}
6Đầu ra:
Chế độ xem cuối cùng cho dữ liệu tìm nạp Android bằng thư viện Retrofit được mô tả trong các màn hình bên dưới. Để biết thêm về hướng dẫn trang bị thêm có thể truy cập
Nếu bạn đang có bất kỳ truy vấn nào trong hướng dẫn này về dữ liệu tìm nạp bằng thư viện Retrofit, hãy cho chúng tôi biết trong phần bình luận bên dưới. Nếu bạn thích hướng dẫn này, hãy thích và chia sẻ chúng tôi để cập nhật thú vị hơn.