小知识
arpsyalin
学无止境
展开
-
Gradle下载慢怎么办?
第一次打开一个项目当你没有对应的Gradle有时候网络会成你的阻碍。改完....然后重试一下。原创 2024-04-28 09:55:37 · 130 阅读 · 0 评论 -
adb远程调试命令
adb远程调试命令原创 2023-04-26 10:24:19 · 546 阅读 · 0 评论 -
记录一个APP跳转系统相机拍摄小问题
安卓调用系统相册原创 2022-10-19 16:12:27 · 464 阅读 · 0 评论 -
build.gradle引入第三方文件
在gradle中引入libs下的jar文件一般会这样,很是方便: implementation fileTree(dir: 'libs', include: ['*.jar']) 引入aar一般会这么写,如果aar比较多,就需要得写很多如下类似代码,删除或添加都得改: implementation files('路径/xxx.aar') 太多重复的代码,比较麻烦,....其实引入是可以这样做: implementation fileTree(dir: 'libs', incl原创 2021-12-27 15:53:51 · 2477 阅读 · 0 评论 -
build.gradle生成版本时的小问题记录
事情起因: ...由于用的电脑硬盘只有128G...一翻折腾下来只每次清理到大概10G平常还够空间做开发 .....结果有一天开始,开发着开发着.....内存越来越小...最后小到一个APK都编译不出......一开始常规操作清除废纸篓...删除一些不用的信息....腾出几个G继续用.....结果继续约用越小... 原因: 经过一番排查....发现开发的项目中build.gradle被新来的同事加了下面这一段代码: applicationVariants.all { variant ->原创 2021-09-22 09:36:47 · 138 阅读 · 0 评论 -
Android EditText 无法批量清除监听
最近维护以前的开发人员写的一段代码的时候,发现某个复用的EditText中不停的在addTextWatcher,而且是不断的new 一个新TextWatcher进去,这样毫无疑问是有问题的。 于是乎我原创 2021-06-05 18:51:59 · 391 阅读 · 3 评论 -
JAVA判断是否为数字字符串
import java.util.regex.Matcher; import java.util.regex.Pattern; /** * * @Description 数字工具 * * @Author arpslyl * * @CreateDate 2021/5/27 * * @Version 1.0 * * @Remark TODO **/ public class NumberUtils { public static boolean isEmpty(String str) {.原创 2021-05-28 08:42:07 · 189 阅读 · 0 评论 -
Android导出SQLite数据库文件
可借用这个库 https://github.com/amitshekhariitbhu/Android-Debug-Database原创 2021-05-28 08:37:52 · 902 阅读 · 1 评论 -
已有格式进行数据提炼格式化输出
Format2Format 因为要转换一个已有格式的字符串又没找到已有的类于是写了 一个很简单的工具类。特此留存!欢迎使用欢迎优化。 直接贴代码: public class Format2Format { static final String NEED_CHAR = "~"; private static boolean isEmpty(String str) { return str == null || str.length() == 0; } private原创 2021-04-12 15:24:40 · 88 阅读 · 0 评论 -
AudioRecord initialization failed
错误代码 自抛异常 AudioRecord initialization failed 错误内容描述 初始化AudioRecord 失败 new AudioRecord获取audioRecord.getState() 为0 引起原因 一般原因是6.0以上没有权限 解决方案 动态申请权限即可原创 2021-04-08 10:12:43 · 391 阅读 · 0 评论 -
国内git官网下载慢
https://npm.taobao.org/mirrors/git-for-windows/原创 2021-03-31 21:33:42 · 98 阅读 · 0 评论 -
泛型类中泛型T的类型获取
赋值类型 Type superClass = getClass().getGenericSuperclass(); Type type = ((ParameterizedType) superClass).getActualTypeArguments()[0]; if (type instanceof ParameterizedType) { this.classType = (Class<T>) ((ParameterizedType)原创 2021-03-31 16:25:43 · 298 阅读 · 0 评论 -
谈谈自己对于Binder的理解
Binder 是什么? Binder是Android的一种主要跨进程的通讯方式。 Android为什么要用Binder作为跨进程的通讯方式? 一般说来跨进程的通讯方式有以下几种: 1.socket 比较重量级了一般用在网络通讯 性能差 2.文件 性能差io多 3.共享内存 高效 安全性差 4.管道 需要2次拷贝 5.binder特殊管道 1.速度快一次拷贝,2.安全 Binder怎么实现一次拷贝,保证安全性 在Android中init 会启动ServiceManager来查询注册Binder。 Bi原创 2021-03-12 14:49:01 · 218 阅读 · 0 评论 -
AndroidHook相关基础例子
Android Hook基础例子前言Hook的流程Android Hook简单例子调用Hook后继续执行核心思想 前言 Hook是什么?举个例子,有一个人写了一封情书给你喜欢的女孩,在送信的路上你偷偷的把那封情书拿了换成你自己写的情书,再放了回去,那个人拿着你写的情书给了你喜欢的女孩。 不要问为什么会有Hook。反正Hook是有广大的应用场景。 Hook可以做很多常规开发中由于限制而认为不可能实现的事情。 备注说明:前面写的《组件化》框架gradle部分源码已经被我改得面目全非,有空再写一篇文章说明一下。原创 2020-11-26 22:09:47 · 209 阅读 · 0 评论 -
git提交项目一直弹出输入用户名密码提示问题
以后遇到了一些小问题就慢慢往里面放吧。 问题: 项目Git Push弹出输入用户名密码提示 原因: clone的时候用的是https链接 解决方案: 在项目目录.git/config文件 将上面的url修改成原创 2020-11-19 12:27:14 · 857 阅读 · 0 评论 -
新买的便携式蓝牙标签打印机集成测试
新买的便携式蓝牙标签打印机集成测试起因分析提供的SDK开始使用蓝牙测试工具进行测试打印打印乱码分析JAVA中Unicode转ANCI工具链接 起因 因为我有想将自己之前写的Android蓝牙测试工具库再封装成一个flutter插件, 于是双十一买了一个提供SDK的便携式蓝牙标签打印机。 然后这几天到了… 分析提供的SDK 首先先分析店家提供的例子 口述一下核心部分实现: 例子采用的是一个开了一个打印机服务进程,提供AIDL,然后例子应用通过AIDL Binder服务进程去操作打印机, 蓝牙连接部分的例子采用原创 2020-11-17 16:37:11 · 939 阅读 · 1 评论