- 博客(36)
- 资源 (7)
- 问答 (1)
- 收藏
- 关注
原创 SmartRefreshLayout不太好用,Paging框架提供了自己的Header和Footer
记一次对SmartRefreshLayout的吐槽
2023-10-17 09:59:31
159
原创 Retrofit框架的封装流程以及源码分析
Retrofit框架的封装流程以及源码分析:1.Http请求的封装:01.02.1.Retrofit源码分析:01.02.
2022-03-29 23:16:09
459
原创 项目和开源库上传github
项目和开源库上传Github:1、上传项目到Github:第一步:安装GIT BASH并配置系统环境变量第二步:在GitHub上创建项目第三步:git clone项目到本地电脑01.输入命令行:cd d: //切换到D盘d: //进入D盘 -> 进入项目文件夹git clone https://github.com/Dayone123456/MyTalkerServer.git //clone项目到本地02.本地项目文件中会多出一个MyTalkerSe
2022-03-27 13:35:26
3076
原创 Android中MutableLiveData的使用
Android中MutableLiveData的使用:1.观察者模式的简单运用:Android工程实例<font color#999AAA>01.创建MutableLiveData实例,观察并响应其变化class MainActivity : AppCompatActivity() { private var mutableLiveData = MutableLiveData<String>() override fun onCreate(savedIn
2022-03-09 23:36:00
5668
原创 快速创建弹窗PopupWindow、提示框AlertDialog、列表对话框Dialog
快速创建弹窗PopupWindow、提示框AlertDialog、列表对话框Dialog1.创建PopupWindow:01.创建PopupWindow的布局文件:注意:设置了多个Item,不需要时可以选择隐藏<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_wid
2022-02-22 21:46:42
1157
原创 Kotlin中二进制、八进制、十六进制间的相互转换
Kotlin中进制之间的相互转换:文本主要记录并描述Kotlin中二进制、八进制、十六进制之间的转换方法二进制和十进制之间的转换 :01.二进制转换为十进制:采用取余的方式获取位数,并利用Math.pow()方法进行计算 //二进制转换为十进制 val num: Long = 1000 val value = BinaryToHex(num) Log.i("hy55", "value==$value") val number = HexToBinary(10)
2022-02-08 15:24:39
5003
1
原创 Android中Tree的使用
Android中Tree的使用:Tree的简单实例:01.创建Tree//创建二叉树数据结构:节点值、左节点、右节点data class TreeNode(var leftNode: TreeNode? = null, var value: Int? = null, var rightNode: TreeNode? = null) { fun frontShow() { leftNode?.f
2022-01-31 09:58:00
3302
原创 Android中HashMap的使用
Android中HashMap的使用:HashMap的简单实例:01.创建Map:class MainActivity : AppCompatActivity() { @RequiresApi(Build.VERSION_CODES.N) override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.la
2022-01-29 20:26:18
3489
原创 Android中Crash的记录和防护
Android中Crash的记录和防护参考文章:https://blog.youkuaiyun.com/jamin0107/article/details/788654421、崩溃的记录:创建自定义UncaughtExceptionHandler处理异常01.定义并设置DefaultUncaughtExceptionHandler02.存在Throwable时记录异常信息saveCrashInfoToFile03.异常情况killProcess进程,App强制退出/** * 异常处理捕获类 */
2021-12-02 11:41:53
2307
原创 Android的在线热更新方案_Tinker
Android的在线热更新方案_TinkerTinker地址:https://github.com/Tencent/tinkerissues地址:https://github.com/Tencent/tinker/issues/1258参考文章:https://blog.youkuaiyun.com/u012364659/article/details/1082795401、降低Gradle版本(Project的build.gradle):01.注意:Gradle版本不能超过4.0.0buildscri
2021-11-04 11:57:52
2304
原创 Android的在线热更新方案_Robust
Android的在线热更新方案的实现特别需要注意配置合适的Gradle版本参考的文章:https://blog.youkuaiyun.com/qq_15527709/article/details/1161446761、Android工程的Gradle配置:01.Project的build.gradle: ...... dependencies { //只能使用低版本的Gradle classpath "com.android.tools.build:gradl
2021-11-03 19:56:29
2124
原创 Android的autobahn框架使用实例:实现WebSocket的长连接
Android的autobahn框架使用实例:实现WebSocket的长连接WebSocket三方框架:01.Java-WebSocket:存在断开之后无法重新连接的问题02.autobahn:简单方便、GitHub地址:https://github.com/crossbario/autobahn-java、官网:https://crossbar.io/autobahn/03.AndroidAsyn:还在研究、GitHub地址:https://github.com/koush/AndroidAs
2021-10-26 20:39:17
871
1
原创 Android实现简单倒计时
Android实现倒计时:01.使用Handler机制02.使用Google官方的CountDownTimer实现倒计时:class MainActivity : AppCompatActivity() { private var countDownHandler = Handler() private var countDownTime: Int? = null private val countDown = object : Runnable {
2021-09-30 00:42:37
396
原创 打开github的正确姿势
打开github的方法:转载自:https://blog.youkuaiyun.com/cjqh_hao/article/details/106736141修改host文件添加github的IP地址,host文件可以解析域名到IP,本地配置后,就会优先使用本地配置信息,加快解析一、查询github的IP地址:https://fastly.net.ipaddress.com/github.global.ssl.fastly.net#ipinfo二、修改本地host文件(使用管理者权限修改):路径:w
2021-09-25 23:17:17
5115
原创 Android在线更新Apk的思路
Android在线更新Apk的思路:01.使用DownLoadManager进行下载02.使用OkHttpClient()进行下载一、完整下载代码1.创建下载回调:public interface DownloadCallBack { void onProgress(int i);}2.创建FileProvider,安装apk文件需要使用FileProvider,同时注意添加相关的权限:<?xml version="1.0" encoding="utf-8"?>&
2021-09-22 23:52:59
727
原创 Android文件路径的总结
Android文件路径的总结:学习内容:创建文件(设置文件路径的方法)1.context.getFilesDir(),对应的路径:/data/user/0/工程包名/files2.context.getCacheDir(),对应的路径:/data/user/0/工程包名/cache3.context.getExternalCacheDir(),路径:/storage/emulated/0/Android/data/包名/cache4.context.getExternalFilesDir(S
2021-09-21 09:53:57
2695
原创 Android自定义控件全览(二)
Android自定义控件总结(二)目的:收集和整理所有的Android自定义控件文章目录Android自定义控件总结(二)前言一、标签布局LaybelLayout二、使用步骤1.引入库2.读入数据总结前言后续会不断添加自定义控件实例,希望做成一个Android自定义控件大全一、标签布局LaybelLayout01.二、使用步骤1.引入库代码如下(示例):import numpy as npimport pandas as pdimport matplotlib.pyplot
2021-09-02 09:30:40
297
原创 记一次关于Activity跳转时生命周期变化的感悟
Activity跳转时生命周期的变化:Activity的生命周期:01.onCreate() ->02.onRestart() ->03.onStart() ->04.onResume() ->05.onPause() ->06.onStop() ->07.onDestroy() -> 结束08.onNewIntent() -> Activity的启动模式为singleTask,singleInstance或singleTop(此时已在任务栈
2021-08-22 11:26:12
245
原创 RecyclerView使用payload实现局部刷新
列表局部刷新:01.notifyDataSetChanged() 刷新全部可见的item02.notifyItemChanged(int position) 更新列表position位置上的数据可以调用03.notifyItemInserted(int position) 列表position位置添加一条数据时可以调用,伴有动画效果04.notifyItemRemoved(int position) 列表position位置移除一条数据时调用,伴有动画效果05.notifyItemMoved(in
2021-08-20 01:28:11
1074
原创 一篇文章带你完全搞懂Android的列表分页机制
文章目录前言一、自定义列表监听机制实现分页二、使用三方框架SmartRefreshLayout实现分页1.引入库2.读入数据三、使用ListAdapter结合SmartRefreshLayout实现分页四、使用Paging库实现分页前言本篇文章主要讲述Android列表分页的原理和实现过程,希望可以帮助到那些对Android列表分页尚不熟悉的朋友!!!提示:以下是本篇文章正文内容,下面案例可供参考一、自定义列表监听机制实现分页示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数
2021-08-19 00:51:57
2413
原创 一篇文章带你看懂WebSocket的使用
文章目录前言一、WebSocket是什么?二、使用步骤1.引入库2.读入数据总结前言本篇文章讲述的是WebSocket在Android中的应用,为还不会使用WebSocket的小伙伴提供一点思路,希望能帮助到大家!!!一、WebSocket是什么?示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二、使用步骤1.引入库代码如下(示例):import numpy as npimport pandas as pdimport matplotlib.py
2021-08-15 23:30:28
499
原创 记一次关于列表删除元素的感悟
Android的列表中元素增加和删除1.列表增加元素的需要注意: //局部刷新 mJokeAdapter.notifyItemRangeInserted(positionStart, data.size)2.列表中删除元素需要注意: list.remove(i); notifyItemRemoved(i); notifyItemRangeChanged(i,
2021-08-08 00:10:38
270
原创 记一次list删除操作的重要失误
经验教训list的remove(object obj)方法:ArrayList的remove(Object obj)的源码:public boolean remove(Object o) { if(o == null) { for(int index = 0; index < size; index++) if(elementData[index] == null) { fastRemove(index);
2021-08-07 23:34:55
87
原创 从零开始搭建后端服务器,实现注册、登录功能
文章目录前言一、下载需要的开发工具1.首先当然是IntelliJ IDEA编辑器:二、使用步骤1.引入库2.读入数据总结前言作为一个前端开发人员,对于后端服务器同样也是需要了解的,今天我就带大家从零开始搭建一个后端服务器,实现简单的注册、登录功能,后续会不断加入其它的功能,敬请期待!!!提示:以下是本篇文章正文内容,下面案例可供参考一、下载需要的开发工具1.首先当然是IntelliJ IDEA编辑器:下载网址:安装教程:二、使用步骤1.引入库代码如下(示例):import num.
2021-07-21 00:45:57
2346
5
原创 Android自定义控件全览(一)
Android自定义控件总结目的:收集和整理所有的Android自定义控件文章目录Android自定义控件总结前言一、面包屑布局(BreadCrumbView)1.自定义BreadCrumbView,继承FrameLayout2.使用自定义BreadCrumbView3.使用效果3.项目目录:二、树型结构布局(TreeListView)1.引入库三、分页布局(jetpack的paging库)1.自定义控件2.使用自定义控件总结前言后续会不断添加自定义控件实例,希望做成一个Android自定义控
2021-07-06 23:20:36
580
5
原创 一篇文章带你看懂云视频会议
(一)云视频会议架构组成前言1、什么是云视频会议2、云视频会议的组成01.终端显示02.终端控制总结前言随着疫情的出现,一直不温不火的云视频会议终于被推到了风口浪尖上。某位大佬曾经说过,站在风口上,猪都会飞!!!所以是时候让我们飞一把了~~~1、什么是云视频会议云视频会议,是以云计算为核心,服务提供商建设云计算中心,企业无需购买MCU,无需大规模改造网络,无需配备专业IT人员,通过租用服务的形式,实现在会议室、个人电脑、移动状态下进行多方视频沟通。2、云视频会议的组成01.终端显示.
2021-06-17 00:12:00
1442
3
原创 从零开始开发一个视频会议平台
从零开始开发一个视频会议平台:不断提高,实现目标项目计划:1、 开发视频会议服务器2、 开发视频会议终端(Android、IOS、PC)项目时间:1、一个月完成服务器的开发和部署2、 一个月完成终端的开发项目产出:1、 技术笔记 若干篇2、优快云 技术博客 若干篇...
2021-06-09 14:48:58
612
2
LoggingInterceptor的依赖包
2022-04-14
21.3.6528147.rar ndk工具包,AndroidStudio中可以集成成功
2021-11-11
Android Studio依赖包androidx错误
2021-06-24
TA创建的收藏夹 TA关注的收藏夹
TA关注的人