[Android]网络数据的简单加密

来源:互联网 发布:js同源是什么意思 编辑:程序博客网 时间:2024/05/21 01:56

原理:

最简单的数据加密就是采用Base64,虽然会带有数据冗余,但是写法简单,不用做过多的修改,其实也可以采用异或加密。

代码:

这里就直接上代码吧,写法很简单。
public static final boolean DownlaodAppFile(Context mContext, String url, String cacheName, boolean replace) {File root = mContext.getExternalCacheDir();if (!root.exists()) {root.mkdir();}String root_path = root.getAbsolutePath();File cacheFile = new File(root_path + "/" + cacheName);if (cacheFile.exists()) {if (!replace) {return true;}}File tmpFIle = new File(root_path + "/" + cacheName + ".tmp");URL mURL = null;try {mURL = new URL(url);} catch (MalformedURLException e) {Log.i("Finals", "URL error");e.printStackTrace();return false;}HttpURLConnection conn = null;FileOutputStream fos = null;Base64OutputStream bos = null;try {fos = new FileOutputStream(tmpFIle);bos = new Base64OutputStream(fos, 45);conn = (HttpURLConnection) mURL.openConnection();if (conn.getResponseCode() == 200) {// 创建连接InputStream is = conn.getInputStream();byte[] buffer = new byte[1024];// 循环获取数据int len = 0;while ((len = is.read(buffer)) != -1) {bos.write(buffer, 0, len);}// 释放资源bos.close();fos.close();is.close();conn.disconnect();bos = null;fos = null;is = null;conn = null;tmpFIle.renameTo(cacheFile);System.out.println("下载完成");}} catch (IOException e) {e.printStackTrace();Log.i("Finals", "Url connection error");return false;} finally {if (fos != null) {try {fos.close();} catch (IOException e) {e.printStackTrace();}}}return true;}public static final String ReadAppFile(Context context, String cacheName) {File root = context.getExternalCacheDir();String rootpath = root.getAbsolutePath();File cacheFile = new File(rootpath + "/" + cacheName);if (!cacheFile.exists()) {return "";}String result = "";try {FileInputStream fis = new FileInputStream(cacheFile);Base64InputStream bis = new Base64InputStream(fis, 45);ByteArrayOutputStream bos = new ByteArrayOutputStream();byte[] buffer = new byte[512];int len = 0;while ((len = bis.read(buffer)) != -1) {bos.write(buffer, 0, len);}result = bos.toString();bos.close();bis.close();fis.close();bos = null;bis = null;fis = null;} catch (IOException e) {e.printStackTrace();return "";}return result;}


0 0
原创粉丝点击