- 博客(74)
- 资源 (19)
- 问答 (1)
- 收藏
- 关注
原创 【Android 实现AES-CMAC加密】(HMAC加密)
采用AES加密算法,使用密钥K,对明文P进行加密,得到的密文C,作为明文P的认证码,和明文P一起传输给接收方。接收方收到后,再使用自己的密钥,对明文再做一次AES加密,生成新的认证码,与接收到的发送方的认证码进行对比验证。参考链接:https://blog.youkuaiyun.com/wjz110201/article/details/130132078。这就是基于AES的CMAC算法,多用于消息数据的正确性认证,生成的认证码,叫作message authentication code,消息认证码,简称MAC。
2024-04-26 15:00:29
709
4
原创 【Android】LinearDelayInterpolator自定义插值器,线性+延迟停顿,
实现效果:滚动后,停顿一会;/** * 移动后,停顿一会 * @author Created by lx on 2021/12/15 18:21. * @description */public class LinearDelayInterpolator implements Interpolator { /** * 移动的时间占比 (0~1) */ private float moveFactor = 0.8f; public Linea
2021-12-15 19:00:45
2073
原创 【Android】文本自定义换行checkWordWrap,换行右边对齐,中英混合右边出现空白的优化
先固定一行显示多少字符,然后遍历文本,判断一行末尾的位置,手动添加换行符。中间判断一行实际的字符数,需要区分中英文,然后统计; /** * 判断一个字符是否是中文 */ public static boolean isChinese2(char c) { return c >= 0x4E00 && c <= 0x9FD5;// 根据字节码判断 } /** * 判断一个字符是否是日文
2021-12-08 15:38:51
1100
原创 【Android】判断当天是否属于月份日历的第一行 (仅判断当月,不判断上一个月的日期)
代码: /** * 判断当天是否属于月份日历的第一行 (仅判断当月,不判断上一个月的日期) * @param timeMills * @return */ public static boolean isBelongFirstLineOfCalendar(long timeMills){ boolean isFirstLine = false; Date tempDate = new Date(timeMills)
2020-10-26 14:23:02
494
原创 【Android】引入百度定位android:process=":remote",导致onCreate()方法重复执行问题处理
出现的问题:当项目中配置了 android:process=":remote" 这个属性之后,会新增一个私有进程(包名+":remote"),这个进程里的Application也会走生命周期,然后onCreate里面一些初始化功能就会重复执行。处理:在Application的onCreate()方法里面,先判断进程名是否是主进程(主进程名:包名),如果是主进程才执行后面的方法,如果不是主进...
2019-05-08 16:05:02
607
1
原创 【java】批量修改文件名称(解决windows长文件名无法被删除)
指定修改某文件夹下N层内所有文件夹的名称package com.onlineservice.util;import java.io.File;public class FixFileNameUtil { /** * @param args */ public static void main(String[] args) { // TODO Auto-gene...
2019-05-06 17:16:19
662
原创 【Android】关于打包aar,和module导入aar正常运行总结
操作流程如下:1、生成aar:把原module项目转成library,build编译library,bulid/outputs/aar/ 下找到aar包2、导入aar:在测试module的libs/下导入 aar包,action启动aar中的activity对实现过程中遇到的问题进行总结:1.aar的library点击事件的switch case 换成 if else; (alt+...
2019-04-08 17:24:52
997
原创 【Android】ScrollView里面模拟鼠标滚轮滑动,即同向滑动
正常ScrollView的滑动方式是,手指上滑数据向下滚动,手指下滑数据向上滚动;然后现在有个需求,手指的滑动要跟电脑鼠标滚轮一样,上划就向上滚动到顶,下划滚动到底。测试代码如下:滑动幅度可以修改scale,ll_content就是scrollview的子布局 private int lastX; private int lastY; /** * 测试...
2019-03-18 16:39:24
1852
原创 按ASCII码给json对象排序
/** * 按ASCII码给json对象排序(规定:升序) * @param json * @return */ public static String sortAsciiJson(String json){ String res = ""; try { JSONObject jsonOb...
2019-03-12 10:38:28
7307
原创 密码复杂性校验--包含用户名、键盘连续字符匹配
/** * 验证密码-是否包含用户名字符(密码应与用户名无相关性,密码中不得包含用户名的完整字符串、大小写变位或形似变换的字符串) */ public static boolean verifyPasswordContainAccount(String password,String account){ boolean isContain = ...
2019-03-05 15:43:24
3971
原创 一行代码实现view拖拽移动、双指缩放效果(最顺滑的缩放)
实现原理:通过重写View.OnTouchListener实现拖拽与缩放效果;注意:如果对含有子类的viewGroup设置,子类的大小可能不变,因为缩放的效果代码用的是view.layout(),只是改变了当前设置触摸监听view的大小,里面子类的大小是没有变的;如果想子类一起改变,需要用到View.setScaleX(),View.setScaleY()这两个缩放大小方法去缩放,但是这个...
2019-01-03 11:30:23
4176
4
原创 【Android】TVL数据流解析
tlv数据格式:type(1字节)+length(2字节)+value(有效数据);长度规定(双方规定的):{低位、高位} ,例:{(byte)0x5A,(byte)0x00} 转成int = 0x005A = 90 ;package com.example.util;import android.util.Log;import java.io.IOException;im...
2018-05-09 14:04:36
1000
原创 【Android】计算正数反码,字符串变化方式
java里直接用~取反符号计算的反码,和我想要的不一样,所以直接用字符串0变成1,1变成0方式自己写了个方法,先分析下取反号计算的原理:1.计算机中存储整数都是用的补码,取反运算也是对补码进行取反2.所有的数字大小都是根据原码的大小计算的3.正整数的反码,补码和原码相同,负整数的反码是除了符号位以外取反,负数的补码为反码+14.对补码再求补码即是原码eg: 计算int类型 ~(+9): ...
2018-05-09 13:46:31
673
原创 【Android】oui.txt格式化的sqlite数据库文件直接导入
oui官方地址: http://standards-oui.ieee.org/oui.txt sqlite数据库文件:http://download.youkuaiyun.com/download/u013372185/10048809图标资源:http://download.youkuaiyun.com/download/u013372185/10048889
2017-11-01 16:38:17
2411
1
原创 【Android】aar打包出现java.lang.IllegalArgumentException: MALFORMED 问题解决
问题情景: Android studio library工程打包aar,aar包导入主项目app,编译,gradle报错:MALFORMED ;重新try,clean rebuild 都无效。。。。 然后点击右上show 异常日志,打开idea.log ,发现是解压aar包异常,IllegalArgumentException此异常表明向方法传递了一个不合法或不正确的参数,
2017-10-20 23:15:12
3159
转载 【译】通过Hardware Layer提升Android动画性能
作者:小鄧子链接:http://www.jianshu.com/p/f1feafffc365來源:简书著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。原文链接: Using hardware layers to improve Android animation performance原文作者: Daniel Lew当有人问我
2017-08-17 10:18:02
285
原创 【解决方案】使用WebView卡顿情况处理方案
原因1:硬件加速没有打开解决代码:webView.setLayerType(View.LAYER_TYPE_HARDWARE,null);//开启硬件加速
2017-08-17 09:47:49
24048
1
原创 【Android】不同的View引起软键盘无法关闭问题解决方案
今天发现一个很奇怪的问题软键盘无法关闭了,同一段代码,换一个Activity就能正常执行,开始我以为是嵌套了fragment的原因,然后我放到外层activity里面同样不能调用,比较了下其他Activity正常关闭的不同点,除了fragment就是dialog了,在这个界面里面的编辑框是放在一个弹出框dialog里面的,本来想优化的效果就是点取消或确定时候 软键盘退出关闭,最后把关闭代码放到di
2017-05-09 11:16:17
3362
原创 【android-Webview】设置多个cookie,实现webview中保存登录信息
方法:通过重复调用 cookieManager.setCookie(url,cookie1); 来保存多个cookie。代码: /** * Sync Cookie */ private void syncCookie(Context context, String url){ try{ CookieSyncMana
2017-04-24 18:49:59
3841
1
原创 【图片处理】Glide框架一行代码实现居中裁剪图片
子线程里面裁剪图片(540px*540px),获取到Bitmap//glide框架居中裁剪图片 540*540px(该方法是耗时操作) new Thread(new Runnable() { @Override public void run() { try {
2017-03-28 14:25:37
3929
原创 【Android】解决Listview侧滑与上下滑动问题+侧滑通用布局 DragRelativeLayout
今天抽空想自己写个仿QQ的列表项侧滑删除,重写完 item的onTouchEvent(),测试发现一个问题,item侧滑时,同时上下滑动,listview的触摸监听就会覆盖item,导致抬起手指动作item里面的监听无法执行,布局乱掉了。解决问题办法:判断左右滑动,左右滑动时禁止listview上下滑动代码: // 判断是否为偏向左右的滑动 if (
2016-11-03 17:25:19
1513
原创 【OkHttp】封装帮助类
分享一个okhttp请求帮助类package com.xxx.net;import android.os.AsyncTask;import android.util.Log;import com.xxx.util.LogcatHelper;import java.io.IOException;import java.util.Map;import java.util.conc
2016-11-02 10:06:36
591
原创 【android】Listview的item中最外层Margin失效问题解决方案
1.在开发中发现这么一种现象:List中的Item是LinearLayout,这个Item的最外层,设置了margin属性。全部失效。从图中可以看出, AbsListView的layoutparam不包含有Margin信息。包含有margin的layout是正常的几个基础布局。解决方案: 在你的listview里面加上下面代码android:
2016-09-30 17:45:32
1500
原创 【andorid】基于okhttp3网络请求帮助类(GET、POST)
import android.os.AsyncTask;import com.wanwei.szjz.myapplication.util.LogcatHelper;import java.io.IOException;import java.util.Map;import java.util.concurrent.ExecutorService;import java.util.c
2016-09-27 15:49:38
805
原创 【android】把AlertDialog后面黑背景设置全透明,昏暗度为0
核心代码: dialog.getWindow().setDimAmount(0);//设置昏暗度为0public void showDialog(){ AlertDialog dialog = new AlertDialog.Builder(getContext()).create(); dialog.getWindow().setD
2016-09-14 15:40:55
9232
原创 解决aapt "finished with non-zero exit value 1"问题
以前eclipse项目中有个自定义组件还不错,然后我就copy到as中用一下,导进来修改完错误,开始编译运行,结果编译失败,报了build-tools\24.0.2\aapt.exe "finished with non-zero exit value 1"这个异常,我以为是build版本问题,然后改了半天版本号,又重新新建个工程测试,结果发现根本不是版本号问题。 真正造成异常的原因:attr
2016-09-12 18:05:28
3276
原创 【android】简易文件管理器(列表式文件目录)
、 核心代码: File fatherFile = new File(path);File[] files = fatherFile.listFiles(); 效果图: 实现这种列表式的目录,用直接读取目录下文件方法会比较简单,但是如果要根据文
2016-09-02 17:01:41
5694
原创 TortoiseSVN-1.9.4-中文语言包-官方下载地址
语言包地址:https://sourceforge.net/projects/tortoisesvn/files/1.9.4/Language%20Packs/TortoiseSVN软件地址:https://sourceforge.net/projects/tortoisesvn/files/
2016-08-29 11:10:20
32684
1
原创 【Android】SpannableString格式化数字(实数:大.小)
效果图:实现代码:public class StringTextUtil{ /** * 格式化数字(实数,非实数都默认转成0.00显示) * @param text 只能传数字 * @return */ public static SpannableString formatTextNumString(String text)
2016-08-16 14:11:07
1080
原创 递归方法算出0到n的平方和
/** * 递归方法算出0到n的平方和 * */public class RecursiveTest { static int mRes; public static void main(String[] args) { result(0, 3, mRes); System.out.println(mRes);//14 } public static vo
2016-07-19 13:47:08
3144
原创 【Android】PorterDuffXfermode使用(通过消除背景层与重叠部分绘制组合图形)
利用PorterDuffXfermode,绘制组合图形,过程我分成了4个步骤(onDraw方法里面): 1、通过canvas.saveLayout()先绘制一个背景图层(这里位置大小很重要,应该根据覆盖层来定义)(如果没有背景层,产生效果可能和预期不太一样) 2、canvas.drawXXX()画底部图形Dst; 4、paint.setXfermode()设置图
2016-06-27 14:31:05
4429
原创 【android】WebView使用Post请求和设置浏览器弹框
这里要注意:post请求参数只能传byte数组,而且必须是键值对字符串形式的byte数组,其中的key是后台服务器接收key,后台规定key是什么值就是什么值,不能随意更改,没有key=value格式或者key不正确,都会请求不到数据网页打不开。下面代码直接看initWebView()方法就好package com.xxxxx.xxx.activity.
2016-05-23 09:44:02
12307
转载 【转】Android 编程下如何修改 jar 文件的包名
文章转载自:http://www.cnblogs.com/sunzn/p/4166353.html 首先我们要说说为什么要修改 jar 文件的包名,jar 包我们会非常高频率的使用,尤其是用一些其他三方库的时候,往往把 java 代码打包成 jar 文件,方便项目依赖使用。笔者在开发过程中遇到过一些问题,是由于 jar 文件里面的包名和项目或者运行时环境的引用文件包名上存在冲突导致
2016-03-14 09:46:14
447
原创 【解决方案】Android中Log太多太长打印不全的问题
在开发项目时候,需要解析从服务端获取的数据,常常这些数据过大,导致eclipse上打印的log显示不全,所以我写了个方法分段显示log,保证每段显示的log长度在可显示范围内。下面是实现方法:/** * 分段打印出较长log文本 * @param log 原log文本 * @param showCount 规定每段显示的长度(最好不要超过eclipse限
2016-03-04 17:14:22
12182
原创 【android】仿知乎ScrollView滚动改变标题栏透明度
刷知乎的时候看到,专题栏里面 往下滚动标题栏会由透明逐渐变蓝色,觉得这个效果不错,就想自己写一下这是自己实现的效果图:说下实现思路:1、先获取顶部图片的高度height,这个有3种方式获取,我用的是监听onGlobalLayout方法的回调2、监听scrollview的滚动坐标,原生的没有这个监听,需要我们自己写个view继承scrollview,然后重写onScrol
2016-01-20 16:36:49
6872
3
原创 【android】根据心形方程用代码绘制出图形
之前在手机上下了个输入数学函数就可以直接绘制出函数图形的app,发现里面必须要求解出y,才能绘制出图形,但是有些很复杂的函数不容易也根本不需要转换成f(x)的形式,比如 心形函数: (17*(x^2))-(16*|x|*y)+(17*(y^2))(心形函数式)想看看这个函数的形
2016-01-19 14:56:50
5810
2
原创 通过超链接打开一些常见app(android:scheme运用)
想通过url打开别的app,首先得知道你想打开的app的scheme、host是多少。查看android中app的scheme: 1:用apktool解析出app的AndroidManifest.xml文件(cmd:apktool d test.apk)
2016-01-13 13:33:22
6953
【中国所有城市列表-高德城市码-sqlite数据库】china_cities_gaode_v3.db
2021-09-29
oui.txt格式化的sqlite数据库文件
2017-11-01
TortoiseSVN-1.9.4.27285-x64-svn-zh.zip
2016-08-29
【eclipse】support_recyclerview-v7-21.0.0.jar
2016-08-25
高斯模糊--对应eclipse中的jar
2015-07-28
最新android-support-v4.jar (含pool.class)
2015-05-22
android 二维码扫描实现(美化版,仿TX)
2014-11-07
android Fragment v4版实现
2014-10-24
back键监听,子线程关不掉!急!!!!
2014-09-22
TA创建的收藏夹 TA关注的收藏夹
TA关注的人