• 1401/07/30

وصل نشدن برنامه به دیتا بیس قسمت 108 :

سلام 

تعیرات singup و Login در دیتابیس ذخیره نمیشه 

مشکل از دیتابیس است یا کد ها ؟

هیچ کدی هم برنمیگردونه.

اینترفیس api

import io.reactivex.rxjava3.core.Single;
import retrofit2.http.Field;
import retrofit2.http.FormUrlEncoded;
import retrofit2.http.POST;

public interface Api {
    @FormUrlEncoded
    @POST("Login.php")
    public Single<Integer> login(@Field("number") String number , @Field("password") String password);



    @FormUrlEncoded
    @POST("SignUp.php")
   public Single<Integer> singup(@Field("number") String number ,@Field("password") String password
    ,@Field("name") String name);




}

کلاس Repositort

import androidx.lifecycle.LiveData;
import androidx.lifecycle.MutableLiveData;

import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers;
import io.reactivex.rxjava3.annotations.NonNull;
import io.reactivex.rxjava3.core.SingleObserver;
import io.reactivex.rxjava3.disposables.CompositeDisposable;
import io.reactivex.rxjava3.disposables.Disposable;
import io.reactivex.rxjava3.schedulers.Schedulers;

public class Repository {

    private static Repository instance=null;

    public static final Repository getInstance(){

        if (instance==null){
            instance=new Repository();
        }
        return instance;

    }

    public LiveData<Integer> login(String number, String password, CompositeDisposable disposable){
        MutableLiveData<Integer> liveData=new MutableLiveData<>();
        Retrofitinstans.getinstanc().login(number,password)
                .subscribeOn( Schedulers.io())
                .observeOn( AndroidSchedulers.mainThread() )
                .subscribe( new SingleObserver<Integer>() {
                    @Override
                    public void onSubscribe(@NonNull Disposable d) {
                        disposable.add(d);

                    }

                    @Override
                    public void onSuccess(@NonNull Integer integer) {
                        liveData.setValue(integer);

                    }

                    @Override
                    public void onError(@NonNull Throwable e) {

                    }
                } );
        return liveData;

    }

    public LiveData<Integer> singUp(String number, String password,String name, CompositeDisposable disposable){
        MutableLiveData<Integer> liveData=new MutableLiveData<>();
        Retrofitinstans.getinstanc().singup(number,password,name)
                .subscribeOn( Schedulers.io())
                .observeOn( AndroidSchedulers.mainThread() )
                .subscribe( new SingleObserver<Integer>() {
                    @Override
                    public void onSubscribe(@NonNull Disposable d) {
                        disposable.add(d);

                    }

                    @Override
                    public void onSuccess(@NonNull Integer integer) {
                        liveData.setValue(integer);

                    }

                    @Override
                    public void onError(@NonNull Throwable e) {

                    }
                } );
        return liveData;

    }



}



کلاس Retrofit instans

import hu.akarnokd.rxjava3.retrofit.RxJava3CallAdapterFactory;
import retrofit2.Retrofit;
import retrofit2.converter.gson.GsonConverterFactory;

public class Retrofitinstans {
    private static final String BASE_URL= "http://http://192.168.56.5/miniproject/";

    private static Retrofit instans=null;
    public static final synchronized Api getinstanc(){
        if (instans==null){
            instans=new Retrofit.Builder().baseUrl(BASE_URL)
                    .addCallAdapterFactory( RxJava3CallAdapterFactory.create() )
                    .addConverterFactory( GsonConverterFactory.create() )
                    .build();

        }
        return instans.create(Api.class);


    }



}
  • 1401/08/01
  • ساعت 18:38

سلام.

قسمت ۱۱۷ مشاهده کنین.


logo-enamadlogo-samandehi