Android开发
文章平均质量分 54
浪浪的程序猿
种一棵树最好的时间是十年前,其次就是现在
展开
-
反思:团队工作中,如何提高个人的自主性,提高自主判断意识和能力?
反思:团队工作中,如何提高个人的自主性,提高自主判断意识和能力?原创 2023-02-09 11:12:15 · 607 阅读 · 0 评论 -
灰度图原理和色值范围
灰度图原理和色值范围原创 2023-02-02 20:56:13 · 6438 阅读 · 1 评论 -
lowmemorykiller 问题排查
lowmemorykiller 问题排查原创 2023-02-02 16:33:28 · 1964 阅读 · 0 评论 -
Android 端口号使用
Android 端口号使用原创 2023-02-01 14:45:08 · 3255 阅读 · 0 评论 -
序列化?反序列化?
序列化?反序列化?原创 2023-01-30 20:30:44 · 86 阅读 · 0 评论 -
adb shell 访问中文目录乱码问题
adb shell 访问中文目录乱码问题原创 2023-01-19 15:28:15 · 2078 阅读 · 0 评论 -
java, byte数组压缩
java, byte数组压缩原创 2023-01-08 15:51:28 · 3615 阅读 · 1 评论 -
java NIO
java NIO原创 2023-01-06 17:29:52 · 888 阅读 · 0 评论 -
文件操作工具类 FileUtils.java
文件操作工具类 FileUtils.java原创 2023-01-06 11:50:25 · 326 阅读 · 0 评论 -
adb 修改文件权限
adb 修改文件权限原创 2023-01-05 11:24:27 · 11450 阅读 · 0 评论 -
java 枚举类型
java 枚举类型原创 2023-01-02 22:37:46 · 1819 阅读 · 0 评论 -
Protocol Buffers 协议使用
Protocol Buffers 协议使用原创 2022-12-29 19:34:58 · 906 阅读 · 0 评论 -
反思下自己在工作中的沟通问题
反思下自己在工作中的沟通问题原创 2022-12-28 16:15:33 · 565 阅读 · 0 评论 -
java 位移运算
java 位移运算原创 2022-12-27 17:20:51 · 5404 阅读 · 0 评论 -
java 创建文件夹和文件
java 创建文件夹和文件原创 2022-12-26 19:21:15 · 2700 阅读 · 0 评论 -
adb 指令创建文件和文件夹
adb 指令创建文件和文件夹原创 2022-12-26 19:16:10 · 12952 阅读 · 0 评论 -
java 文件拷贝的四种方式
java 文件拷贝的四种方式原创 2022-12-26 16:02:25 · 9289 阅读 · 0 评论 -
断点上传/下载-实现思路及代码
断点上传/下载-实现思路及代码原创 2022-12-23 17:46:33 · 176 阅读 · 0 评论 -
CountDownLatch 的使用方法
CountDownLatch 的使用方法原创 2022-12-22 11:40:22 · 125 阅读 · 0 评论 -
java, wait notify 用法
java wait/notify 使用方法原创 2022-12-22 11:34:56 · 195 阅读 · 0 评论 -
java 异步接口同步调用的方式
java 异步接口的同步调用方式原创 2022-12-22 11:32:58 · 1787 阅读 · 0 评论 -
网络请求应答状态码多少认为请求成功?
网络请求应答状态码原创 2022-12-21 19:41:46 · 478 阅读 · 0 评论 -
文件上传,断点上传 和 分片上传区别
断点上传 和 分片上传区别原创 2022-12-19 19:22:45 · 2626 阅读 · 0 评论 -
Android 进程数据库更新时机
Sqlite数据库更新时机原创 2022-11-11 20:01:59 · 1114 阅读 · 0 评论 -
ThreadLocal 内存泄漏分析
1.ThreadLocal源码//ThreadLocal.ThreadLocalMap 类/** * The table, resized as necessary. * table.length MUST always be a power of two. */private Entry[] table;static class Entry extends WeakReference<ThreadLocal<?>> { /** The value assoc原创 2022-01-05 19:07:43 · 524 阅读 · 1 评论 -
年轻人,你应该拒绝奶头乐
奶头乐效应之前也在网上和短视频里刷到过,但短视频果然不愧是”短频快“,之前看过但思考不深。今天再次看到这字眼确感觉到”**奶头乐理论看上去很冷酷,却距离现实很近**“。 奶头乐效应的提出就源于美国一次会议,全球的部分精英们在想如何让80%的普通人安于现状减少冲突而想出来的理论,即奶头乐陷阱。就是**用游戏、短视频等这种低成本娱乐让普通人可以消耗掉大量的业余时间,还能乐在其中**。 如果不对这种奶头乐加以控制,则必然**成瘾并造成思考和学习能力的持续下降**。当娱乐大量占用人们的时间,让人们丧失思考的能.原创 2021-11-21 23:38:19 · 1789 阅读 · 0 评论 -
Mac AndroidStudio 3.1 InstantRun 禁用问题
目前没有找到如何禁用mac版本instantrun的方法,但是可以通过下面方式规避。Run App 之前先 执行一次 Rebuild Project 就可以了。原创 2021-11-21 17:16:58 · 3525 阅读 · 0 评论 -
安卓依赖包关系:support->Androidx->Jetpack
1.官方定义jetpack(充气背包)2. 组件库分类介绍分类和详细介绍见链接;3. 谷歌亲儿子系列依赖包的发展史3.1 Support库:Support库是为新API提供向后兼容性的支持库,包含大量应用组件、视图、Material Design等功能类。重新改写的Preference组件也包含其中。依据兼容API版本的不同,Support库的分支众多且凌乱,使用起来也愈发繁琐和呆板。3.2 一统江湖的AndroidX:Support库愈加臃肿的分支和呆板的管理方法困扰着开发者。Goog原创 2021-11-21 01:46:33 · 743 阅读 · 0 评论 -
AndroidStudio 编译报错:Build tools 损坏
报错:Installed Build Tools revision 32.0.0 rc1 is corrupted. Remove and install again using the SDK Manager.问题原因:AndroidSutdio版本升级后,buildTools中文件损坏。处理方式:1 修改d8.bat 为 dx.bat2 修改d8.jar 为 dx.jar(路径见下面两个参考链接)参考:https://www.cjavapy.com/article/2033/http原创 2021-11-20 18:10:32 · 1240 阅读 · 1 评论 -
DefaultLifecycleObserver 使用 (Unknown Source:2) 问题
报错:2021-11-18 17:53:17.601 2699-2699/com.example.shangxuetang E/AndroidRuntime: FATAL EXCEPTION: mainProcess: com.example.shangxuetang, PID: 2699java.lang.NoClassDefFoundError: Failed resolution of: Lkotlin/jvm/internal/Intrinsics;at com.example.shangx原创 2021-11-18 17:56:09 · 3185 阅读 · 0 评论 -
启动 kotlin activity 编译报错
android项目中添加了kotlin代码编写的activity,并试图启动该页面。报错如下:C:\Users\15901\Desktop\ShangXueTang\app\src\main\java\com\example\shangxuetang\MainActivity.java:41: ����: �Ҳ�������startActivity(new Intent(MainActivity.this, LifecycleActivity.class));^����: �� Lifecy原创 2021-11-18 15:44:18 · 2075 阅读 · 0 评论 -
JVM 常见面试题
架构图(JVM-HotSpot虚拟机整体架构图)(JVM 运行时数据区架构图)(对象内存分配流程图)面试题解答与总结2.1 (京东)JVM内存结构,Eden和Surviver比例?JVM运行时内存分区:方法区,堆,虚拟机栈,程序计数器,本地方法栈。堆区中年轻代包括一个Eden区和两个Survivor区,默认比例是8:1:1。2.2 (京东)JVM内存为什么要分为新生代、老年代和永久代(元空间)?新生代中为什么要分为Eden和Survivor?根本原因:内存分区的根本目的是为了.原创 2021-09-26 11:21:10 · 295 阅读 · 0 评论 -
ReactNative学习--RN是什么?
JavaScript 是什么?JavaScript是一种运行在浏览器中的解释型的编程语言,作用是使网页具备与访问者互动的能力。Javascript语言实际上是两种语言(java、Scheme)风格的混合产物----(简化的)函数式编程+(简化的)面向对象编程。React 是什么?React是Facebook开发的一款JS库。React一般被用来作为MVC中的V层,它不依赖其他任何的库,因此开发中,可以与任何其他的库集成使用,包括Jquery、Backbone等。它可以在浏览器端运行,也可以通过nod原创 2021-08-10 11:49:58 · 465 阅读 · 0 评论 -
Android Studio无法执行Java main方法的问题
Android Studio无法执行Java main方法的问题Android Studio升级到哦最新版3.6.1后,新建了个项目,发现无法执行Java类的main方法,很蛋疼。试了网上的各种方法,比如切换gradle离线模式、gradle.properties中添加android.enableAapt2=false等,我还尝试了重新情况Gradle缓存、重新下载gradle等方式,都没用。环境android studio版本:3.6.1gradle版本:5.6.4gradle插件版本:3.6.转载 2021-07-28 15:47:21 · 317 阅读 · 0 评论 -
Java ConcurrentModificationException异常原因和解决方法
转载请标明原文链接:http://www.cnblogs.com/dolphin0520/p/3933551.html对Vector、ArrayList在迭代的时候如果同时对其进行修改就会抛出java.util.ConcurrentModificationException异常。下面我们就来讨论以下这个异常出现的原因以及解决办法。以下是本文目录大纲:一.ConcurrentModificationException异常出现的原因二.在单线程环境下的解决办法三.在多线程环境下的解决方法若有不正之处原创 2021-05-09 21:13:49 · 6455 阅读 · 0 评论 -
Aidl 方法执行线程
aidl 接口方法,运行在执行该方法进程的binder线程中,如:A进程作为server提供是a()方法,运行在A进程的binder线程中。如:B进程作为client反向注册registerStatus(StatusListener listener)回调到A回调是在A中调用,在B中实现,那么回调实现方法是运行在B线程的进程中,但回调实现中的运行时异常会导致A进程崩溃,因为aidl实现中A会从B端读取执行结果的异常信息;如何避免异常处理导致A进程崩溃:1.回调方法直接把回调信息发送到执行线程处原创 2021-05-06 14:22:35 · 681 阅读 · 0 评论 -
代理模式
代理模式一、代理模式介绍代理模式是一种设计模式,提供了对目标对象额外的访问方式,即通过代理对象访问目标对象,这样可以在不修改原目标对象的前提下,提供额外的功能操作,扩展目标对象的功能。简言之,代理模式就是设置一个中间代理来控制访问原目标对象,以达到增强原对象的功能和简化访问方式。代理模式UML类图代理模式UML类图举个例子,我们生活中经常到火车站去买车票,但是人一多的话,就会非常拥挤,于是就有了代售点,我们能从代售点买车票了。这其中就是代理模式的体现,代售点代理了火车站对象,提供购买车票的方法。原创 2021-04-19 23:49:12 · 90 阅读 · 0 评论 -
Java并发编程-原子性变量
原子类型方法,以AtomicInteger 为例:AtomicInteger atomicInteger = new AtomicInteger(0); atomicInteger.set(1); //写入非线程安全,非原子性 atomicInteger.get(); //保证可以读取到最新的内存值 atomicInteger.compareAndSet(0, 1); //原子性写入,线程安全 atomicInteger.getAndS原创 2021-02-05 12:46:24 · 371 阅读 · 0 评论 -
byte为什么要与上0xff?
无意间翻看之间的代码,发现了一段难以理解的代码。复制代码byte[] bs = digest.digest(origin.getBytes(Charset.forName(charsetName))) ; for (int i = 0; i < bs.length; i++) { int c = bs[i] & 0xFF ; if(c < 16){ sb.append("0"); }原创 2021-01-18 19:51:53 · 172 阅读 · 0 评论 -
安卓自定义View-Path
https://www.gcssloop.com/customview/Path_Over转载 2021-01-09 14:49:02 · 100 阅读 · 0 评论