增加获取patch接口,未测试

This commit is contained in:
2025-04-14 20:00:46 +08:00
parent a878bf8c40
commit a6b910ee31
6 changed files with 33 additions and 9 deletions

View File

@@ -2,7 +2,8 @@ FROM eclipse-temurin:17-jdk-jammy
MAINTAINER TongTongStudio <tongtongstudios@gmail.com>
RUN mv /etc/apt/sources.list /etc/apt/sources.list.bak
VOLUME /tmp
RUN cd /tmp
ADD bsdiff .
ADD target/*.jar app.jar
EXPOSE 65534
EXPOSE map[65534/tcp:{}]
ENTRYPOINT ["java", "-jar", "/app.jar"]

View File

@@ -1,13 +1,25 @@
package com.mir4updater.backend.controller.apk;
import com.mir4updater.backend.entity.PatchFileInfo;
import com.mir4updater.backend.result.Result;
import com.mir4updater.backend.service.DiffPathService;
import org.apache.logging.log4j.LogManager;
import org.springframework.web.bind.annotation.RestController;
import org.apache.logging.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class CheckPatchController {
public static Logger logger = LogManager.getLogger(CheckPatchController.class);
@Autowired
DiffPathService diffPathService;
@GetMapping("/android/check_patch")
public Result checkPatch(@RequestParam("pkg") String pkg, @RequestParam(value = "version_code") Long versionCode) {
PatchFileInfo patchFileInfo = diffPathService.getPatchInfo(pkg, versionCode);
return Result.success(patchFileInfo);
}
}

View File

@@ -20,7 +20,7 @@ public class PatchFileInfo implements Serializable {
String packageName;
@Column(name = "old_version", nullable = false)
long old_version;
long oldVersion;
@Column(name = "old_md5", nullable = false)
String old_md5;
@@ -32,7 +32,7 @@ public class PatchFileInfo implements Serializable {
String old_sha256;
@Column(name = "new_version", nullable = false)
long new_version;
long newVersion;
@Column(name = "new_md5", nullable = false)
String new_md5;

View File

@@ -1,7 +1,9 @@
package com.mir4updater.backend.repository;
import com.mir4updater.backend.entity.ApkInfo;
import com.mir4updater.backend.entity.PatchFileInfo;
import org.springframework.data.jpa.repository.JpaRepository;
//public class PatchInfoRepository extends JpaRepository<ApkInfo, Long> {
//}
public interface PatchInfoRepository extends JpaRepository<PatchFileInfo, Long> {
public PatchFileInfo findPatchFileInfoByPackageNameAndOldVersion(String packageName, Long version);
}

View File

@@ -1,8 +1,17 @@
package com.mir4updater.backend.service;
import com.mir4updater.backend.entity.PatchFileInfo;
import com.mir4updater.backend.repository.PatchInfoRepository;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@Service
public class DiffPathService {
@Autowired
PatchInfoRepository patchInfoRepository;
public PatchFileInfo getPatchInfo(String packageName, Long oldVersion) {
return patchInfoRepository.findPatchFileInfoByPackageNameAndOldVersion(packageName, oldVersion);
}
}

View File

@@ -1,6 +1,6 @@
spring.application.name=Mir4Updater
server.port=65534
server.address=0.0.0.0
## \u6570\u636E\u8FDE\u63A5\u4FE1\u606F
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://127.0.0.1:3305/spring_boot?useUnicode=true&characterEncoding=utf8&useSSL=false&allowPublicKeyRetrieval=true