写在前面
之前写过一篇博客,名为《【Java编程】【计算机视觉】一种简单的图片加/解密算法》,介绍了用Java在电脑上对图片进行简单的加密和解密操作,见链接:
文章链接
但是,文中所描述的算法在实际操作当中,存在严重的噪音(图像失真)的问题(且原因不明),本次经笔者研究,开发出了一款简单的安卓APP(底层语言还是java),做到了无失真的图像加/解密,当然还包括更基本的文本加解密,我们一一道来。
【仅供学习使用,转载请注明出处】
一、登录页面
此应用名叫“加密者”,英文名叫“Encrypter”,图标是一把钥匙(密钥)。应用的登录页面如下图所示:
此页面的xml代码:
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<!-- 图片(圆形) -->
<ImageView
android:id="@+id/cover"
android:layout_width="360dp"
android:layout_height="360dp"
android:layout_marginTop="20dp"
android:layout_marginStart="369dp"
android:src="@drawable/logo"/>
<!-- 用户名 -->
<EditText
android:id="@+id/ed_username"
android:layout_marginStart="309dp"
android:layout_marginTop="20dp"
android:layout_width="480dp"
android:layout_height="wrap_content"
android:hint="@string/u_name"
android:autofillHints="username"
android:inputType="text" />
<!-- 密码 -->
<EditText
android:id="@+id/ed_password"
android:layout_marginStart="309dp"
android:layout_width="480dp"
android:layout_height="wrap_content"
android:inputType="textPassword"
android:hint="@string/p_word"
android:autofillHints="username" />
<!-- 登录按钮 -->
<Button
android:id="@+id/btn_login"
android:layout_width="120dp"