From ea6ce17bf3272259295adccbad85583079b5bac0 Mon Sep 17 00:00:00 2001 From: Runt <qingingrunt2010@qq.com> Date: Wed, 22 Feb 2023 14:14:41 +0000 Subject: [PATCH] api调用 --- app/src/main/java/com/auto/lyric/base/model/BaseViewModel.java | 39 +++++++++++++++++++++++++++++++++++++++ 1 files changed, 39 insertions(+), 0 deletions(-) diff --git a/app/src/main/java/com/auto/lyric/base/model/BaseViewModel.java b/app/src/main/java/com/auto/lyric/base/model/BaseViewModel.java index 83badfd..d0c186f 100644 --- a/app/src/main/java/com/auto/lyric/base/model/BaseViewModel.java +++ b/app/src/main/java/com/auto/lyric/base/model/BaseViewModel.java @@ -4,10 +4,23 @@ import com.auto.lyric.base.activities.BaseActivity; import com.auto.lyric.retrofit.AndroidScheduler; +import com.auto.lyric.retrofit.api.FieldData; import com.auto.lyric.retrofit.observable.HttpObserver; +import com.auto.lyric.util.DeviceIdUtils; +import com.auto.lyric.util.NetWorkUtils; +import com.auto.lyric.util.SHA1UTIL; +import com.google.gson.Gson; + +import java.util.Date; +import java.util.HashMap; +import java.util.Map; +import java.util.UUID; import io.reactivex.Observable; import io.reactivex.schedulers.Schedulers; +import okhttp3.FormBody; +import okhttp3.MediaType; +import okhttp3.RequestBody; /** * Created by Administrator on 2021/11/11 0011. @@ -18,6 +31,10 @@ public void onCreate(BaseActivity activity){ this.activity = activity; + } + + protected RequestBody createJsonBody(Object obj){ + return FormBody.create(MediaType.parse("application/json; charset=utf-8"),obj instanceof String?obj.toString(): new Gson().toJson(obj)); } /** @@ -32,6 +49,28 @@ .subscribe(observer); } + public Map getApiFileds(String userId,String activeKey){ + FieldData data = new FieldData(); + data.userID = userId; + data.ip = NetWorkUtils.getNetIp(); + data.random = UUID.randomUUID().toString(); + data.timeStamp = new Date().getTime()/1000+""; + data.phoneID = DeviceIdUtils.getAndroidId(activity); + data.activeKey = activeKey; + String sign = String.format("%s%s%s%s%s%s",activeKey,data.ip,data.phoneID ,data.random,data.timeStamp,userId); + data.sign = SHA1UTIL.MD5(SHA1UTIL.getSHA(sign)); + Gson gson = new Gson(); + return gson.fromJson(gson.toJson(data), Map.class); + } + + public Map<String, RequestBody> getApiMultiFileds(String userId, String activeKey){ + Map<String,String> fileds = getApiFileds(userId,activeKey); + Map<String, RequestBody> multiMap = new HashMap<>(); + for(String key : fileds.keySet()){ + multiMap.put(key,RequestBody.create(fileds.get(key),null)); + } + return multiMap; + } } -- Gitblit v1.9.1