44.Android MD5Util

44.Android MD5Util

public class MD5Util {

    public static String getMD5String(String key) {
        char hexDigits[] = {‘0‘, ‘1‘, ‘2‘, ‘3‘, ‘4‘,
                ‘5‘, ‘6‘, ‘7‘, ‘8‘, ‘9‘,
                ‘A‘, ‘B‘, ‘C‘, ‘D‘, ‘E‘, ‘F‘};
        try {
            byte[] input = key.getBytes();
            // MD5算法的 MessageDigest 对象
            MessageDigest md5Digest = MessageDigest.getInstance("MD5");
            // 转换
            md5Digest.update(input);
            // 密文
            byte[] md5byte = md5Digest.digest();
            // string 转 十六进制
            int j = md5byte.length;
            char md5char[] = new char[j * 2];
            int k = 0;
            for (byte b : md5byte) {
                md5char[k++] = hexDigits[b >>> 4 & 0xf];
                md5char[k++] = hexDigits[b & 0xf];
            }
            return new String(md5char);
        } catch (Exception e) {
            e.printStackTrace();
            return null;
        }
    }

    private static String bytesToHexString(byte[] bytes) {
        StringBuilder sb = new StringBuilder();
        for (byte aByte : bytes) {
            String hex = Integer.toHexString(255 & aByte);
            if (hex.length() == 1) {
                sb.append(‘0‘);
            }
            sb.append(hex);
        }
        return sb.toString();
    }

}
时间: 2024-10-09 22:28:04

44.Android MD5Util的相关文章

Android RadioGroup和RadioButton详解

实现RadioButton由两部分组成,也就是RadioButton和RadioGroup配合使用.RadioGroup是单选组合框,可以容纳多个RadioButton的容器.在没有RadioGroup的情况下,RadioButton可以全部都选中:当多个RadioButton被RadioGroup包含的情况下,RadioButton只可以选择一个.并用setOnCheckedChangeListener来对单选按钮进行监听 1 RadioGroup相关属性: 2 RadioGroup.getC

android MVP模式

1.视图 1 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 2 xmlns:tools="http://schemas.android.com/tools" 3 android:layout_width="match_parent" 4 android:layout_height="match_parent" 5 &g

Android学习笔记-----------布局(四)

GridLayout(网格布局) 网格布局是android4.0之后出现的新布局,在使用可能会报错,需要将清单文件中的android:minSdkVersion设置为14 网格布局和LinerLayout一样具有水平方向和垂直方向两种布局方式.当控件排满后会自动换行或者换列. 使用前需要先指定rowCount(行数),columnCount(列数) 通过组件的layout_row和layout_column属性指定控件的行号和列号,这里要注意索引是从0开始的 通过组件的layout_column

【原创】android——SQLite实现简单的注册登陆(已经美化)

1,Main_activity的xmL配置 1 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 2 xmlns:tools="http://schemas.android.com/tools" 3 android:layout_width="match_parent" 4 android:layout_height="match_pa

Android显示相册图片和相机拍照

首先看最重要的MainActive类: 1 public class MainActivity extends AppCompatActivity { 2 3 private final int FROM_ALBUM = 1;//表示从相册获取照片 4 private final int FROM_CAMERA = 2;//表示从相机获取照片 5 private ImageView imageView; 6 7 @Override 8 protected void onCreate(Bundle

跨过几个坑,终于完成了我的第一个Xamarin Android App!

时间过得真快,距离上次发随笔又是一年多.作为上次发的我的第一个WP8.1应用总结的后继,这次同样的主要功能,改为实现安卓版APP.前几个月巨硬收购Xamarin,把Xamarin集成到VS里了,大大方便了我广大.net码农.由于年初脱了WP的坑,换了个安卓低端机,想着什么时候装Xamarin开发个App玩玩. 上个月笔记本100G的C盘莫名其妙快满了,趁着重装系统的机会,安装了VS2015 with sp3,下载开发Android App需要的各种东东.这里要感谢[C#]VS2015开发环境的安

Android学习——LinearLayout布局实现居中、左对齐、右对齐

android:orientation="vertical"表示该布局下的元素垂直排列: 在整体垂直排列的基础上想要实现内部水平排列,则在整体LinearLayout布局下再创建一个LinearLayout布局. 1 <?xml version="1.0" encoding="utf-8"?> 2 <LinearLayout xmlns:android="http://schemas.android.com/apk/r

Android课程设计第二天界面排版

注意:课程设计只为完成任务,不做细节描述~ 老师叫我们做一个这个样子,然后.. 1 <?xml version="1.0" encoding="utf-8"?> 2 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 3 xmlns:tools="http://schemas.android.com/tools"

Android 程序员必须知道的 53 个知识点

1. android 单实例运行方法 我们都知道 Android 平台没有任务管理器,而内部 App 维护者一个 Activity history stack 来实现窗口显示和销毁,对于常规从快捷方式运行来看都是 startActivity 可能会使用 FLAG_ACTIVITY_NEW_TASK 标记来打开一个新窗口,比如 Launcher,所以考虑单任务的实现方法比较简单,首先 Android123 纠正下大家一种错误的方法就是直接在androidmanifest.xml 的 applica