diff --git a/src/main/java/com/hiczp/bilibili/api/BilibiliAPI.java b/src/main/java/com/hiczp/bilibili/api/BilibiliAPI.java index e25256d..f5bc25e 100644 --- a/src/main/java/com/hiczp/bilibili/api/BilibiliAPI.java +++ b/src/main/java/com/hiczp/bilibili/api/BilibiliAPI.java @@ -120,7 +120,7 @@ public class BilibiliAPI implements BilibiliServiceProvider, BilibiliCaptchaProv okHttpClientBuilder .addInterceptor(new AddFixedHeadersInterceptor( "Buvid", bilibiliClientProperties.getBuvId(), - "User-Agent", "Mozilla/5.0 BiliDroid/5.15.0 (bbcallen@gmail.com)", + "User-Agent", String.format("Mozilla/5.0 BiliDroid/%s (bbcallen@gmail.com)", bilibiliClientProperties.getSimpleVersion()), "Device-ID", bilibiliClientProperties.getHardwareId() )) .addInterceptor(new AddDynamicHeadersInterceptor( diff --git a/src/main/java/com/hiczp/bilibili/api/BilibiliClientProperties.java b/src/main/java/com/hiczp/bilibili/api/BilibiliClientProperties.java index 981dbab..54eb164 100644 --- a/src/main/java/com/hiczp/bilibili/api/BilibiliClientProperties.java +++ b/src/main/java/com/hiczp/bilibili/api/BilibiliClientProperties.java @@ -8,19 +8,22 @@ public class BilibiliClientProperties { private String hardwareId = "JxdyESFAJkcjEicQbBBsCTlbal5uX2Y"; private String scale = "xxhdpi"; private String version = "5.15.0.515000"; + private String simpleVersion; private String build; private String buvId = "JxdyESFAJkcjEicQbBBsCTlbal5uX2Yinfoc"; private BilibiliClientProperties() { - generateBuildProperty(); + onVersionChange(); } public static BilibiliClientProperties defaultSetting() { return new BilibiliClientProperties(); } - private void generateBuildProperty() { - this.build = version.substring(version.lastIndexOf(".") + 1); + private void onVersionChange() { + int lastIndexOfDot = version.lastIndexOf("."); + this.simpleVersion = version.substring(0, lastIndexOfDot); + this.build = version.substring(lastIndexOfDot + 1); } public String getAppKey() { @@ -65,10 +68,14 @@ public class BilibiliClientProperties { public BilibiliClientProperties setVersion(@Nonnull String version) { this.version = version; - generateBuildProperty(); + onVersionChange(); return this; } + public String getSimpleVersion() { + return simpleVersion; + } + public String getBuild() { return build; }