《基于JAVA的应用保护接口调用代码实例》由会员分享,可在线阅读,更多相关《基于JAVA的应用保护接口调用代码实例(5页珍藏版)》请在金锄头文库上搜索。
1、基于 JAVA 的应用保护接口调用代码实例代码描述:基于 JAVA 的应用保护接口调用代码实例代码平台:聚合数据import java.io.BufferedReader;import java.io.DataOutputStream;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;import java.io.UnsupportedEncodingException;import .HttpURLConnection;import .URL;import .URLEn
2、coder;import java.util.HashMap;import java.util.Map;import net.sf.json.JSONObject;/*APK加密调用示例代码 聚合数据*在线接口文档:http:/ class JuheDemo public static final String DEF_CHATSET = UTF-8;public static final int DEF_CONN_TIMEOUT = 30000;public static final int DEF_READ_TIMEOUT = 30000;public static String user
3、Agent = Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/29.0.1547.66 Safari/537.36;/配置您申请的 KEYpublic static final String APPKEY =*;/1.根据 url上传待加密的 apkpublic static void getRequest1()String result =null;String url =http:/ params = new HashMap();/请求参数params.put(apkurl,);/需要进
4、行加密的 APK下载 URL地址params.put(key,APPKEY);/应用 APPKEY(应用详细页查询)params.put(dtype,);/返回数据的格式,xml 或 json,默认 jsontry result =net(url, params, GET);JSONObject object = JSONObject.fromObject(result);if(object.getInt(error_code)=0)System.out.println(object.get(result);elseSystem.out.println(object.get(error_cod
5、e)+:+object.get(reason); catch (Exception e) e.printStackTrace();/2.提交加密应用加密public static void getRequest2()String result =null;String url =http:/ params = new HashMap();/请求参数params.put(appid,);/步骤返回的 appidparams.put(key,APPKEY);/应用 APPKEY(应用详细页查询)params.put(dtype,);/返回数据的格式,xml 或 json,默认 jsontry re
6、sult =net(url, params, GET);JSONObject object = JSONObject.fromObject(result);if(object.getInt(error_code)=0)System.out.println(object.get(result);elseSystem.out.println(object.get(error_code)+:+object.get(reason); catch (Exception e) e.printStackTrace();/3.查询加密结果public static void getRequest3()Stri
7、ng result =null;String url =http:/ params = new HashMap();/请求参数params.put(appid,);/步骤返回的 appidparams.put(key,APPKEY);/应用 APPKEY(应用详细页查询)params.put(dtype,);/返回数据的格式,xml 或 json,默认 json try result =net(url, params, GET);JSONObject object = JSONObject.fromObject(result);if(object.getInt(error_code)=0)Sy
8、stem.out.println(object.get(result);elseSystem.out.println(object.get(error_code)+:+object.get(reason); catch (Exception e) e.printStackTrace();public static void main(String args) /* param strUrl 请求地址* param params 请求参数* param method 请求方法* return 网络请求字符串* throws Exception*/public static String net(
9、String strUrl, Map params,String method) throws Exception HttpURLConnection conn = null;BufferedReader reader = null;String rs = null;try StringBuffer sb = new StringBuffer();if(method=null | method.equals(GET)strUrl = strUrl+?+urlencode(params);URL url = new URL(strUrl);conn = (HttpURLConnection) u
10、rl.openConnection();if(method=null | method.equals(GET)conn.setRequestMethod(GET);else conn.setRequestMethod(POST);conn.setDoOutput(true);conn.setRequestProperty(User-agent, userAgent);conn.setUseCaches(false);conn.setConnectTimeout(DEF_CONN_TIMEOUT);conn.setReadTimeout(DEF_READ_TIMEOUT);conn.setIns
11、tanceFollowRedirects(false);conn.connect();if (params!= null & method.equals(POST) try DataOutputStream out = new DataOutputStream(conn.getOutputStream();out.writeBytes(urlencode(params); catch (Exception e) / TODO: handle exceptionInputStream is = conn.getInputStream();reader = new BufferedReader(n
12、ew InputStreamReader(is, DEF_CHATSET);String strRead = null;while (strRead = reader.readLine() != null) sb.append(strRead);rs = sb.toString(); catch (IOException e) e.printStackTrace(); finally if (reader != null) reader.close();if (conn != null) conn.disconnect();return rs;/将 map型转为请求参数型public static String urlencode(Mapdata) StringBuilder sb = new StringBuilder();for (Map.Entry i : data.entrySet() try sb.append(i.getKey().append(=).append(URLEncoder.encode(i.getValue()+,UTF-8).append(&); catch (UnsupportedEncodingException e) e.printStackTrace();return sb.toString();