解决方案
文章平均质量分 82
蜗牛、Z
技术共享,技术分享;有技术需要帮助,可以私聊
展开
-
Rxjava2的介绍与使用(一:详解)
就是观察者到订阅者,观察者可以指定线程的模式,订阅者也可以指定线程的模式。观察者将观察执行操作时,会将状态同步给订阅者。订阅者正常有四个回调,会根据不同的操作符,做对应的操作。Kotlin 流flow、ShareFlow、StateFlow、Channel的解释与使用-CSDN博客通过以上的订阅,我们知道了如何去创建和订阅以及观察,以及常用的合并以及操作符等,有了这些简单的,我们就可以很好的在项目中进行很好的运用。原创 2024-08-26 09:30:00 · 809 阅读 · 0 评论 -
Android 适配器Adapter全面认识notify介绍与使用
你真的了解Adapter的notify原创 2024-08-17 13:30:30 · 811 阅读 · 0 评论 -
Android Viewpager2 remove fragmen不生效解决方案
Android Viewpager2 remove fragmen不生效解决方案原创 2024-07-14 15:22:35 · 1105 阅读 · 0 评论 -
Android kotlin 协程异步async与await介绍与使用
通过以上几个案例,可以发现1.异步如果不在runBlocking模块中进行,或者runBlocking模块外面再包一层,会引起最里面的模块,甚至方法体不在执行2.想要异步执行,必须在runBlocking中对异步结果进行异步,否则达不到异步效果,变成了同步3.整个函数的外面都是一个同步阻塞的,runBlocking一旦执行,下面的代码处于一个等待的状态4.runBlocking中可以继续嵌套runBlocking异步执行模块。原创 2024-04-25 14:11:53 · 1104 阅读 · 1 评论 -
okHttp MediaType MIME格式详解
在okhttp中,请求是通过RequestBody来完成封装,额外的数据封装,RequestBody也可以多层封装,将一些文件等通过RequestBody进行二次封装。我们在做数据上传时,经常会用到Okhttp的开源库,okhttp开源库也遵循html提交的MIME数据格式。我们通过okhttp所有的post提交都是需要指定mime数据格式的,否则导致服务端无法解析等。上面就是常见的MIME格式的封装,大家可以通过这个自己查找。通过上面的介绍,我们知道post提交需要MIME指定的类型。原创 2024-03-06 15:47:21 · 1385 阅读 · 0 评论 -
Jenkins在window下配置Android打包配置
Jenkins在window下配置Android打包详解原创 2023-12-19 11:12:54 · 837 阅读 · 0 评论 -
Android Uri scheme协议file转content
在处理这些资源时,我们可能会遇到不同的Uri协议,如file和content。本文将详细介绍如何从file协议的Uri转换到content协议的Uri,并解释这个转换过程中的关键步骤和注意事项。首先,我们需要了解file和content两种协议的基本概念。file协议的Uri通常以"file://"开头,用于标识本地文件系统上的文件路径。而content协议的Uri则以"content://"开头,用于访问通过内容提供者(Content Provider)暴露的数据。一、了解file和content协议。原创 2023-12-19 10:29:28 · 2512 阅读 · 0 评论 -
Android 打包配置与输出教程
Android 打包配置与输出教程原创 2023-11-29 10:30:05 · 748 阅读 · 0 评论 -
Android虚拟机 Java虚拟机JVM常见问答分析与总结
JVM是JavaVirtualMachine(Java虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的原创 2023-09-04 16:07:52 · 823 阅读 · 0 评论 -
Android Mvvm设计模式的详解与实现
目前在做有UI展示的一些项目或者端,都在说MVVM设计模式。MVVM全程view-viewModel-Model。还是分为三层,View层,viewModel:view与业务层,Model数据业务层View:是我们fragment或者Activity界面,主要处理UI渲染和交互的viewModel:介于view与Module之前,处理数据与逻辑上的,将Model请求的结果返回给view层Model:与viewModel打交道,将view需要的数据通过Model层来请求,然后将请求到的结果返回原创 2023-08-26 14:08:25 · 2590 阅读 · 0 评论 -
Android ConstrainLayout布局中View位置的介绍与使用
ConstrainLayout是一款布局View,再Design库中,现已被大家广泛接受并使用。ConstrainLayout的布局采用的方式和其他都不同,他的对其方式是类似RelativeLayout,但是和RelativeLayout有明显的区别。在布局渲染的时候,ConstrainLayout的子View是通过在一个容器中找到自己的位置,通过位置和对其方式来固定,所以在布局优化中,尝尝被提起到。原创 2023-07-02 12:36:25 · 867 阅读 · 0 评论 -
Android 安卓开发语言kotlin与Java该如何选择
通过kotlin的自身问题,其实kotlin就是一种插件语言,最终还是翻译成Java,只是目前来看,通过翻译的目标类,还是Java本身,但是增加了特别多的校验,导致写法和Java有很大的不同。这种不同来自我们的习惯问题。有人提前判空,有人喜欢丢在使用出判空,调用处让语法自然一些。Android应用不像PC,空指针是致命的BUG,出现一个就会导致崩溃。所以,kotlin对空指针校验特别严格,也对使用埋下了隐患,新手可以绕开校验,但是对于绕开的原理不够理解,就会引起崩溃。原创 2023-06-25 16:13:12 · 7411 阅读 · 1 评论 -
Android kotlin序列化之Parcelable详解与使用(二)
通过原生手写和注解两种对比,我还是建议大家不要通过注解去完成,因为出现问题无法排查,浪费时间。特别是新手,很容易被绕进去,找不到问题。原创 2023-06-09 17:55:31 · 1894 阅读 · 0 评论 -
Android kotlin序列化之@Parcelize详解与使用
如果在使用过程中,通过注解发生了数据异常,需要检查对象是否序列化了,如果通过构造器的,查看方法体是否参与了,如果是很简单的数据建议构造器,如果是复杂的数据,建议抛弃构造器如果采用了注解,就不能使用类中定义类这种用法,否则对象获取为null。那用什么?接下来我会介绍抛弃注解,直接使用手写。原创 2023-06-09 17:22:44 · 7685 阅读 · 2 评论 -
Android Cannot resolve symbol 找不到资源解决方案
在android开发中,我们经常会发现依赖了系统提供的库,但是无法引用,或者找不到,Cannot resolve symbol '@style/Theme.AppCompat.NoActionBar' ,报红。这些最经典的无法加载。原创 2023-06-02 14:05:32 · 1977 阅读 · 0 评论 -
Android H5拉起原原生混合方案的介绍与实战
如今,在APP应用中,消息大多数采用推送方式比较多,到达率很低或者说无法满足业务的需求。在一些大型活动中,依然需要短信的参与,短信的准确度和到达率几乎是百分百的。短信的富文本格式有限,想要快速的让接收人到达业务线,常常是通过短信内容描述+地址连接。在短信内容中,连接是比较好的一种媒介。但是H5的链接也是有限的,大多数开发者还是想通过H5的链接,拉起原生,跳转到原生页面,这样会达到打开原生页面的效果。在现在的业务中,我们也经常收到银行、电商等平台的短信,打开这些链接,如原创 2023-06-01 16:49:11 · 997 阅读 · 0 评论 -
Android 页面滑动悬浮资源位动画+滑动监听解决方案
Android 页面滑动悬浮资源位向左或者向右隐藏解决方案原创 2023-05-08 16:56:58 · 1105 阅读 · 1 评论 -
Android Dialog之DialogFragment详解与使用
看到DialogFragment,从单词可以看到是Dialog与Fragment组合而成,但是在DialogFragment中,DialogFragment其实是一个fragment,内部持有一个Dialog,这样方便了开发者的管理。fragment在碎片管理中其实就是一个View,最终view的显示是通过dialog来完成。原创 2023-05-08 16:07:42 · 4829 阅读 · 0 评论 -
Android 各大厂面试题汇总与详解(持续更新)
目前网络中出现了好多各种面试题的汇总,有真实的也有虚假的,所以今年我将会汇总各大公司面试比较常见的问题,逐一进行解答。会一直集成,也会收集大家提供的面试题,如有错误,请大家指出,经过排查存在,会及时更新原创 2023-04-26 17:02:04 · 1797 阅读 · 2 评论 -
Android Fragment懒加载机制分析与详解
Fragment是Android3.0以后引进,称为碎片。它与Activity非常相似,用一个Activity中描述一些行为或者一部分用户界面,使用多个Fragment可以在一个单独的Activity中建立多个UI面板,也可以在多个Activity中使用Fragment原创 2023-04-21 09:44:39 · 2491 阅读 · 0 评论 -
Android View的坐标获取详解以及动画坐标分析
在平面图形中,图形都是由点坐标确定的。同样,Android的设备屏幕也是一个,如果非3D图形,正常的view就是一个二维坐标屏幕的左上角的坐标A(0,0),如果屏幕的宽为:width,高:height 那么右下角的坐标是D(width,height)坐标的顶点从A点,向右和向下两个方向延伸。所有横坐标为X轴,中坐标是Y轴,变成坐标。原创 2023-04-11 11:13:22 · 3034 阅读 · 0 评论 -
Android Handler的内存抖动以及如何在子线程创建Handler详解
Handler,作为一个在主线程存活的消息分发工具,在App开发过程使用频率很高,也是面试问的比较多的。 面试常见的比如:子线程如何创建?Handler的机制是什么?内存抖动等,接下来我们会针对Handler的使用进行总结与指导原创 2023-02-20 16:19:01 · 1167 阅读 · 0 评论 -
Android Jetpack组件之WorkManager后台任务管理的介绍与使用(二)
我们可以弄清楚workmanager从接入到使用的基本流程。基本可以满足我们日常。那只是简单的入门。如果遇到更复杂的功能,那简单的就无法满足原创 2023-02-11 18:40:07 · 2009 阅读 · 0 评论 -
Android Jetpack组件之WorkManager后台任务管理的介绍与使用(一)
WorkManager 是适合用于持久性工作的推荐解决方案。如果工作始终要通过应用重启和系统重新启动来调度,便是持久性的工作。由于大多数后台处理操作都是通过持久性工作完成的,因此 WorkManager 是适用于后台处理操作的主要推荐 API。原创 2023-02-09 17:30:35 · 854 阅读 · 0 评论 -
Android 性能优化之内存优化与泄漏分析工具LeakCanary
在Android应用中,除了正常的业务开发,我们也要关注性能问题。卡顿、内存溢出、内存泄漏等问题,直接的表现会反馈到用户体验上,用户体验不好导致应用被卸载或者换到其他平台。 在性能优化,各大公司都会付出一些代价,或者安排专人负责。有些新手也想做,但是无从下手,对专业工具和专业代码使用以及分析比较吃力,排查起来也比较费劲。如果有专业的工具能够只管的把这些记录并标记好。这样新手也可以通过详情的问题去排查,那么LeaksCanary就是这款工具了。原创 2023-02-09 11:22:01 · 4637 阅读 · 0 评论 -
Android 短视频和图片无读写权限TargetApi>=29解决方案
在没有读写权限下的方案,选中的图片存储到系统里面,为什么要选择copy这种方式?因为在没有读写权限时,文件在外存,也就是SD卡的时候,是无法进行一系列的操作,如果存储到内存中data目录下,是可以进行正常的读写操作,也不需要权限。原创 2023-02-01 10:00:00 · 1652 阅读 · 0 评论 -
Java泛型的介绍与详解Gson泛型解析
是的一种风格或范式。泛型允许程序员在强类型程序设计语言中编写代码时使用一些以后才指定的,在时作为参数指明这些类型。各种程序设计语言和其编译器、运行环境对泛型的支持均不一样。原创 2023-01-03 11:52:28 · 515 阅读 · 0 评论 -
Android 反射在Android开发中的巧妙使用基础篇(二)
我们经常在Android开发过程需要修改或者获取一些View的变量,这样方面在某些场景下进行调用。遇到private 字段或者方法时,可以通过反射很容易来完成。但是,如果需要反射,需要查看源码,如果对源码不了解请谨慎,否则出现一些异常情况原创 2022-11-26 09:35:43 · 1008 阅读 · 0 评论 -
Android Java反射与Proxy动态代理详解与使用基础篇(一)
Java Reflection功能非常强大,并且非常有用,比如:获取任意类的名称、package信息、所有属性、方法、注解、类型、类加载器等获取任意对象的属性,并且能改变对象的属性调用任意对象的方法判断任意一个对象所属的类实例化任意一个类的对象通过反射我们可以实现动态装配,降低代码的耦合度,动态代理等。在JDK中,主要由以下类来实现Java反射机制,这些类(除了第一个)都位于java.lang.reflect包中Class类:代表一个类,位于java.lang包下。原创 2022-11-23 19:30:30 · 2722 阅读 · 0 评论 -
Andorid NoSuchFieldError: No static field D of type I in class Lx/x/x/R$layout解决方案
Andorid NoSuchFieldError: No static field D of type I in class Lx/x/x/R$layout解决方案原创 2022-11-22 14:12:57 · 505 阅读 · 0 评论 -
Maven 私服Nexus的搭建教程windows(搭配android maven插件使用)
是 Sonatype 公司发布的一款仓库(Repository)管理软件,常用来搭建 Maven 私服,所以也有人将 Nexus 称为“Maven仓库管理器”。原创 2022-09-06 09:40:36 · 1308 阅读 · 0 评论 -
Android androidStudio构建项目过程中问题解决方案(持续更新)
Android androidStudio构建项目过程中问题解决方案(持续更新)原创 2022-08-31 13:39:29 · 4681 阅读 · 1 评论 -
Android Recycleview的 RecyclerView is computing a layout or scrolling解决方案
我们在做数据列表的时候,RecycleView 需要搭配RecycleView.Adapter来使用,当数据发生改变,我们可以通过adapter.notifyDataSetChanged()来完成数据量很小的时候,这种完成耗时很少,几乎没有任何感知,甚至你在操作其他api都无影响,但是在大数量时,我们会发现报错如果:这个错误的原因是:只要我们在做计算就会报错,或者scrolling也会导致这个问题这个问题其实正常操作不会引起,但是你如果在调用update以后,立刻执行recycleview.scrollTo原创 2022-07-12 15:15:04 · 1411 阅读 · 0 评论