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/vm/MainViewModel.java | 96 ++++++++++++++++++++++++++++++++++++++---------
1 files changed, 77 insertions(+), 19 deletions(-)
diff --git a/app/src/main/java/com/auto/lyric/vm/MainViewModel.java b/app/src/main/java/com/auto/lyric/vm/MainViewModel.java
index e83144f..4a024fd 100644
--- a/app/src/main/java/com/auto/lyric/vm/MainViewModel.java
+++ b/app/src/main/java/com/auto/lyric/vm/MainViewModel.java
@@ -2,17 +2,22 @@
import com.auto.lyric.base.model.BaseViewModel;
import com.auto.lyric.data.ActiveResult;
+import com.auto.lyric.data.BaseApiResult;
+import com.auto.lyric.data.DeviceInfo;
import com.auto.lyric.retrofit.api.CollectApiCenter;
+import com.auto.lyric.retrofit.api.CommonApiCenter;
+import com.auto.lyric.retrofit.observable.HttpObserver;
import com.auto.lyric.retrofit.observable.LoadingHttpObserver;
import com.auto.lyric.retrofit.utils.RetrofitUtils;
-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.io.File;
import java.util.Date;
-import java.util.UUID;
import io.reactivex.Observable;
+import okhttp3.MediaType;
+import okhttp3.MultipartBody;
+import okhttp3.RequestBody;
/**
* Created by Runt (qingingrunt2010@qq.com) on 2022/3/20.
@@ -20,32 +25,85 @@
public class MainViewModel extends BaseViewModel {
CollectApiCenter apiCenter;
+ CommonApiCenter commonApi;
public MainViewModel(){
apiCenter = RetrofitUtils.getInstance().getRetrofit(CollectApiCenter.class);
+ commonApi = RetrofitUtils.getInstance().getRetrofit(CommonApiCenter.class);
}
public void checkActive(String userId,String activeKey,LoadingHttpObserver<ActiveResult> observer){
- String ip = NetWorkUtils.getNetIp();
- String random = UUID.randomUUID().toString();
- long time = new Date().getTime()/1000;
- String deviceId = DeviceIdUtils.getAndroidId(activity);
- String sign = String.format("%s%s%s%s%s%s",activeKey,ip,deviceId ,random,time,userId);
-
- Observable<ActiveResult> observable = apiCenter.loginCheck(activeKey, ip,deviceId, random, time, userId, SHA1UTIL.MD5(SHA1UTIL.getSHA(sign)));
+ Observable<ActiveResult> observable = apiCenter.loginCheck(getApiFileds(userId,activeKey));
httpObserverOn(observable,observer);
}
- public void register(String activeKey,LoadingHttpObserver<ActiveResult> observer){
- String ip = NetWorkUtils.getNetIp();
- String random = UUID.randomUUID().toString();
- long time = new Date().getTime()/1000;
- int userId = 0;
- String deviceId = DeviceIdUtils.getAndroidId(activity);
- String sign = String.format("%s%s%s%s%s%s",activeKey,ip,deviceId ,random,time,userId);
+ public void registerDevice(){
+ httpObserverOn(commonApi.registerDevice("https://api.hefan.space/autolyric/registerDevice",createJsonBody(DeviceInfo.getInstance(activity))), new HttpObserver() {
+ @Override
+ public void onError(BaseApiResult result) {
- Observable<ActiveResult> observable = apiCenter.register(activeKey, ip,deviceId, random, time, userId, SHA1UTIL.MD5(SHA1UTIL.getSHA(sign)));
+ }
+
+ @Override
+ public void onComplete(BaseApiResult error) {
+
+ }
+
+ @Override
+ public void onComplete() {
+ super.onComplete();
+ activity.putStringProjectPrefrence("deviceInfo",new Gson().toJson(DeviceInfo.getInstance(activity)));
+ }
+ });
+ }
+
+ public void launchApp(){
+ httpObserverOn(commonApi.launchApp("https://api.hefan.space/autolyric/launchApp",createJsonBody(DeviceInfo.getInstance(activity))), new HttpObserver() {
+ @Override
+ public void onError(BaseApiResult result) {
+
+ }
+
+ @Override
+ public void onComplete(BaseApiResult error) {
+
+ }
+
+ @Override
+ public void onComplete() {
+ super.onComplete();
+ activity.putLongProjectPrefrence("launchApp",new Date().getTime());
+ }
+ });
+ }
+
+ public void register(String activeKey,LoadingHttpObserver<ActiveResult> observer){
+ Observable<ActiveResult> observable = apiCenter.register(getApiFileds("0",activeKey));
httpObserverOn(observable,observer);
}
+ public void uploadFile(String userId,String activeKey,File file){
+ RequestBody body = RequestBody.create(MediaType.parse("text/plain; charset=utf-8"),file);
+ MultipartBody.Part part = MultipartBody.Part.createFormData("file", file.getName(), body);
+ httpObserverOn(apiCenter.uploadLrc(part, getApiMultiFileds(userId, activeKey)), new LoadingHttpObserver<ActiveResult>(activity) {
+ @Override
+ public void onComplete(ActiveResult error) {
+
+ }
+
+ });
+ }
+
+ /**
+ *
+ * @param userId
+ * @param activeKey
+ * @param title 歌词标题
+ * @param lrc 歌词内容
+ * @param observer
+ */
+ public void addToCollect(String userId,String activeKey,String title,String lrc,LoadingHttpObserver<ActiveResult> observer){
+ httpObserverOn(apiCenter.addLrcToCollect(title,lrc,getApiFileds(userId,activeKey)),observer);
+ }
+
}
--
Gitblit v1.9.1