package com.basic.security;
|
|
import java.io.File;
|
import java.io.IOException;
|
import java.io.PrintWriter;
|
import java.util.HashMap;
|
import java.util.Map;
|
|
import javax.servlet.ServletException;
|
import javax.servlet.http.HttpServlet;
|
import javax.servlet.http.HttpServletRequest;
|
import javax.servlet.http.HttpServletResponse;
|
|
import com.google.gson.Gson;
|
|
public class GetApk extends HttpServlet {
|
|
// http://192.168.1.116:8080/getApk?apkName=Security_simplify¤tApkVersion=1
|
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
|
System.out.println("GetApk.doGet()");
|
String apkName = request.getParameter("apkName");
|
String currentApkVersionStr = request.getParameter("currentApkVersion");
|
|
Gson gson = new Gson();
|
Map<String, String> responseMap = new HashMap<String, String>();
|
responseMap.put("hasNewVersion", "false");
|
try {
|
File apkFiles[] = new File(getServletContext().getRealPath("")).listFiles();
|
for (File apkFile : apkFiles) {
|
String newApkFileName = apkFile.getName();
|
if (newApkFileName.endsWith(".apk") && newApkFileName.startsWith(newApkFileName)) {
|
try {
|
int newVersion = Integer.parseInt(newApkFileName.replace(apkName, "").replace(".apk", ""));
|
int currentApkVersion = Integer.parseInt(currentApkVersionStr);
|
if (newVersion > currentApkVersion) {
|
responseMap.put("hasNewVersion", "true");
|
responseMap.put("newApkName", newApkFileName);
|
responseMap.put("newApkSize", apkFile.length()+"");
|
}
|
} catch (Exception e) {
|
e.printStackTrace();
|
}
|
}
|
}
|
} catch (Exception e) {
|
e.printStackTrace();
|
}
|
|
|
response.setContentType("application/json");
|
PrintWriter out = response.getWriter();
|
out.println(gson.toJson(responseMap));
|
out.flush();
|
out.close();
|
}
|
|
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
|
|
response.setContentType("text/html");
|
PrintWriter out = response.getWriter();
|
out.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">");
|
out.println("<HTML>");
|
out.println(" <HEAD><TITLE>A Servlet</TITLE></HEAD>");
|
out.println(" <BODY>");
|
out.print(" This is ");
|
out.print(this.getClass());
|
out.println(", using the POST method");
|
out.println(" </BODY>");
|
out.println("</HTML>");
|
out.flush();
|
out.close();
|
}
|
|
public GetApk() {
|
super();
|
}
|
|
public void destroy() {
|
super.destroy(); // Just puts "destroy" string in log
|
// Put your code here
|
}
|
|
public void init() throws ServletException {
|
}
|
|
}
|