From 0f726843a6baa87ba0a0eac566b53414f0cf5229 Mon Sep 17 00:00:00 2001 From: sifacaii Date: Sat, 27 Aug 2022 16:35:09 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E7=99=BB=E5=BD=95=E6=A1=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/org/sifacai/vlcjellyfin/MainActivity.java | 12 ++++++------ app/src/main/java/org/sifacai/vlcjellyfin/Utils.java | 11 +++++++++++ 2 files changed, 17 insertions(+), 6 deletions(-) diff --git a/app/src/main/java/org/sifacai/vlcjellyfin/MainActivity.java b/app/src/main/java/org/sifacai/vlcjellyfin/MainActivity.java index 1ea0e1d..636dc49 100644 --- a/app/src/main/java/org/sifacai/vlcjellyfin/MainActivity.java +++ b/app/src/main/java/org/sifacai/vlcjellyfin/MainActivity.java @@ -313,9 +313,8 @@ public class MainActivity extends BaseActivity { if (valid) { String publicUrl = url + "/system/info/public"; String publicInfo = Utils.okhttpSend(publicUrl); - if (publicInfo != null && publicInfo.length() > 0) { - JsonObject serverInfo = null; - serverInfo = new Gson().fromJson(publicInfo, JsonObject.class); + JsonObject serverInfo = Utils.JsonToObj(publicInfo,JsonObject.class); + if (serverInfo != null) { String ServerId = serverInfo.get("Id").getAsString(); if (ServerId == null || ServerId.length() == 0) { return false; @@ -339,9 +338,10 @@ public class MainActivity extends BaseActivity { String url = "/Users/authenticatebyname"; String reqjson = "{\"Username\":\"" + username + "\",\"Pw\":\"" + password + "\"}"; String userinfo = Utils.okhttpSend(url, reqjson); - if (userinfo.length() > 0) { - JsonObject userObj = new Gson().fromJson(userinfo, JsonObject.class); - String userId = userObj.getAsJsonObject("User").get("Id").getAsString(); + Log.d(TAG, "authenticateByName: userinf:" + userinfo); + JsonObject userObj = Utils.JsonToObj(userinfo,JsonObject.class); + if (userObj != null) { + String userId = Utils.getJsonString(userObj,"User").getAsJsonObject().get("Id").getAsString(); String Token = userObj.get("AccessToken").getAsString(); if (Token != null) { Utils.UserId = userId; diff --git a/app/src/main/java/org/sifacai/vlcjellyfin/Utils.java b/app/src/main/java/org/sifacai/vlcjellyfin/Utils.java index b21c32f..82f4618 100644 --- a/app/src/main/java/org/sifacai/vlcjellyfin/Utils.java +++ b/app/src/main/java/org/sifacai/vlcjellyfin/Utils.java @@ -116,6 +116,17 @@ public class Utils { return url; } + public static T JsonToObj(String jsonStr,Class tClass){ + if(jsonStr != null && jsonStr.length() > 0){ + try { + return new Gson().fromJson(jsonStr,tClass); + }catch (Exception e){ + return null; + } + } + return null; + } + /** * 获取Json项 * @param jo