<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[ShiShouFeng]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/ForwardSailing</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; ForwardSailing]]></copyright><item><title><![CDATA[Android Flow 操作符大全]]></title><link>https://blog.youkuaiyun.com/ForwardSailing/article/details/128223005</link><guid>https://blog.youkuaiyun.com/ForwardSailing/article/details/128223005</guid><author>ForwardSailing</author><pubDate>Wed, 07 Dec 2022 16:59:31 +0800</pubDate><description><![CDATA[可以利用中间运算符在不使用值的情况下修改数据流。中间运算符可以接连应用，形成链式运算，在数据项被发送到数据流时延迟执行。其中操作符还分为三大类：[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-m20UOOOF-1670402776711)(/Users/apple/Downloads/job_files/flow/Xnip2022-11-20_15-33-21.jpg )]
创建 的基本方法. 使用  发射单个值使用  发射一个流 ，类似 快速创建  , 类似 
asFlow
]]></description><category></category></item><item><title><![CDATA[Android-Flow 使用和源码解析]]></title><link>https://blog.youkuaiyun.com/ForwardSailing/article/details/128222636</link><guid>https://blog.youkuaiyun.com/ForwardSailing/article/details/128222636</guid><author>ForwardSailing</author><pubDate>Wed, 07 Dec 2022 16:45:36 +0800</pubDate><description><![CDATA[数据流以协程为基础构建，可提供多个值。从概念上来讲，数据流是可通过异步方式进行计算处理的一组数据序列。所发出值的类型必须相同。例如，Flow 是发出整数值的数据流。在协程中，与仅返回单个值的挂起函数相反，数据流可按顺序发出多个值。数据流包含三个实体：创建数据流有两种常用方式: 第一就是试用数据流构建函数,  第二就是利用扩展方法将原有类型转换成Flow这里比较常用的函数是  和 
其实  是简化版的  函数，内部帮我们调用了 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-JE]]></description><category></category></item><item><title><![CDATA[Jetpack-Lifecycle组件-SafeIterableMap解析]]></title><link>https://blog.youkuaiyun.com/ForwardSailing/article/details/113349243</link><guid>https://blog.youkuaiyun.com/ForwardSailing/article/details/113349243</guid><author>ForwardSailing</author><pubDate>Thu, 28 Jan 2021 16:44:29 +0800</pubDate><description><![CDATA[Jetpack-Lifecycle组件-SafeIterableMap解析
文章目录Jetpack-Lifecycle组件-SafeIterableMap解析概述`SafeIterableMap`核心方法FastSafeIterableMap使用`SafeIterableMap``FastSafeIterableMap`源码解析`SafeIterableMap``Put`操作`Get`操作`remove`操作迭代器`ListIterator`抽象迭代器`AscendingIterator`升序迭代器`Asc]]></description><category></category></item><item><title><![CDATA[Jetpact-activity组件完全解析]]></title><link>https://blog.youkuaiyun.com/ForwardSailing/article/details/109639992</link><guid>https://blog.youkuaiyun.com/ForwardSailing/article/details/109639992</guid><author>ForwardSailing</author><pubDate>Thu, 12 Nov 2020 11:22:29 +0800</pubDate><description><![CDATA[Jetpact-activity组件完全解析
文章目录Jetpact-activity组件完全解析前言源码解析构造器Activity停止时取消View还未执行的事件View层处理移除点击事件回调移除长按事件Activity销毁时清除ViewMode中数据isChangingConfigurations() 相关getViewModelStore()ViewModelStore.clear()解决InputMethodManager中 mNextServedView 持有Activity导致内存泄漏对Life]]></description><category></category></item><item><title><![CDATA[Android-使用OKHTTP Interceptor刷新Access-Token]]></title><link>https://blog.youkuaiyun.com/ForwardSailing/article/details/106449790</link><guid>https://blog.youkuaiyun.com/ForwardSailing/article/details/106449790</guid><author>ForwardSailing</author><pubDate>Mon, 27 Jul 2020 23:11:14 +0800</pubDate><description><![CDATA[sdgsg

]]></description><category></category></item><item><title><![CDATA[Android-Framework: Activity、Window、View三者之间的关系]]></title><link>https://blog.youkuaiyun.com/ForwardSailing/article/details/107285393</link><guid>https://blog.youkuaiyun.com/ForwardSailing/article/details/107285393</guid><author>ForwardSailing</author><pubDate>Tue, 14 Jul 2020 20:25:53 +0800</pubDate><description><![CDATA[Android-Framework: Activity、Window、View三者之间的关系
文章目录Android-Framework: Activity、Window、View三者之间的关系前言Window对象是什么时候创建的？总结参考
前言
Activity、View 做过Android开发的都比较熟悉一个是Android的四大组件、一个是用于展示各种控件的View，相对于前两者 Window 在日常开发中比较陌生，今天我们这篇文章就将这三个问题讲清楚。
Window对象是什么时候创建的？
要想弄清楚]]></description><category></category></item><item><title><![CDATA[Java-并发知识体系-思维导图]]></title><link>https://blog.youkuaiyun.com/ForwardSailing/article/details/107146472</link><guid>https://blog.youkuaiyun.com/ForwardSailing/article/details/107146472</guid><author>ForwardSailing</author><pubDate>Sun, 05 Jul 2020 22:29:07 +0800</pubDate><description><![CDATA[Java-并发学习知识体系
文章目录Java-并发学习知识体系
最近在学习Java并发相关知识、所以抽时间画了一个知识体系思维导图，如下：


如果想要下载xmind文件的可以点击此处去下载


]]></description><category></category></item><item><title><![CDATA[Java-集合面试题-2020]]></title><link>https://blog.youkuaiyun.com/ForwardSailing/article/details/107145754</link><guid>https://blog.youkuaiyun.com/ForwardSailing/article/details/107145754</guid><author>ForwardSailing</author><pubDate>Sun, 05 Jul 2020 22:23:30 +0800</pubDate><description><![CDATA[Java-集合面试题-2020
文章目录Java-集合面试题-2020前言IterableSet相关HashSet说一下 HashSet 的实现原理？HashSet如何检查重复？HashSet是如何保证数据不可重复的？HashSet与HashMap的区别HashSet 和 TreeSet 的区别？LinkedHashSetTreeSetList相关ArrayList说一下 ArrayList 的优缺点多线程场景下如何使用 ArrayList？为什么 ArrayList 的 elementData 加上 tr]]></description><category></category></item><item><title><![CDATA[ASM-使用ASM Bytecode Outline插件查看字节码]]></title><link>https://blog.youkuaiyun.com/ForwardSailing/article/details/106494116</link><guid>https://blog.youkuaiyun.com/ForwardSailing/article/details/106494116</guid><author>ForwardSailing</author><pubDate>Wed, 03 Jun 2020 22:11:54 +0800</pubDate><description><![CDATA[使用ASM Bytecode Outline插件查看字节码使用ASM Bytecode Outline插件查看字节码前言Intellij IDEA CE 使用Android Studio 使用
使用ASM Bytecode Outline插件查看字节码
前言
在使用 ASM 插入字节码代码时、如果不熟悉字节码相关语法和规则 可能对于插入 字节码代码 就束手无策了、幸好 ASM官方开发了一款IDE插件，可以将 Java代码 转换成 ASM 字节码类型代码，这样再使用 ASM 插入字节码时就比较方便了，下面就看]]></description><category></category></item><item><title><![CDATA[Android-常用ADB命令]]></title><link>https://blog.youkuaiyun.com/ForwardSailing/article/details/106449379</link><guid>https://blog.youkuaiyun.com/ForwardSailing/article/details/106449379</guid><author>ForwardSailing</author><pubDate>Sat, 30 May 2020 23:52:31 +0800</pubDate><description><![CDATA[Android-常用ADB命令Android-常用ADB命令开启 adb 服务和停止常规选择设备安装和卸载程序文件导入和导出调试shell 命令屏幕截图调试 Activity Manager查看当前显示的Activity名称导出ANR文件杀死进程参考 Intent 参数详解参考文章
Android-常用ADB命令
平时进行Android 开发中 经常会用到ADB命令 特将常用的命令收集起来 以便日后查找
开启 adb 服务和停止
使用 start-server 检查 adb 服务器进程是否在运行，如果未运行]]></description><category></category></item><item><title><![CDATA[Git-常用命令]]></title><link>https://blog.youkuaiyun.com/ForwardSailing/article/details/106447556</link><guid>https://blog.youkuaiyun.com/ForwardSailing/article/details/106447556</guid><author>ForwardSailing</author><pubDate>Sat, 30 May 2020 23:36:32 +0800</pubDate><description><![CDATA[Git-常用命令Git-常用命令创建cloneinit修改与提交分支管理更新与发布历史记录合并与重置回滚
Git-常用命令
Git 是一个比较优秀的分布式代码管理工具、如果没有接触过Git的话、在这里推荐一个不错的自学网站 点击这里
日常工作中我们会经常用到一些Git命令、可能回想不起来这里特意整理记录一下、以后方便查找！
创建
clone
使用 clone 命令可以复制一个已经创建的仓库 使用方式：
$ git clone https://github.com/shishoufengwise1234/An]]></description><category></category></item><item><title><![CDATA[使用Hexo+GitHubPagers+SublimeText3+Mardown搭建个人blog记录]]></title><link>https://blog.youkuaiyun.com/ForwardSailing/article/details/106445661</link><guid>https://blog.youkuaiyun.com/ForwardSailing/article/details/106445661</guid><author>ForwardSailing</author><pubDate>Sat, 30 May 2020 19:17:45 +0800</pubDate><description><![CDATA[使用Hexo+GitHubPagers+SublimeText3+Mardown搭建个人blog记录使用Hexo+GitHubPagers+SublimeText3+Mardown搭建个人blog记录引言：前期准备配置GitHub安装并配置 Hexo关联GitHubHexo常用命令initnewgeneratepublishserverdeploycleanlist安装Sublime Text3 插件 Package Control使用启动 auto-save 插件启动 markdown preview  ]]></description><category></category></item><item><title><![CDATA[android orm 框架 ActiveAndroid 使用]]></title><link>https://blog.youkuaiyun.com/ForwardSailing/article/details/50220321</link><guid>https://blog.youkuaiyun.com/ForwardSailing/article/details/50220321</guid><author>ForwardSailing</author><pubDate>Tue, 08 Dec 2015 16:10:36 +0800</pubDate><description><![CDATA[ActiveAndroid 是一个orm 框架,是采用对象关系映射的数据库框架，其本质是采用Java的反射原理完成的，本篇文章不进行源码解析，只是简单的API使用。 
项目地址：github下载地址 
本地下载：点击下载:1.新建数据库，设置数据库版本 
在AndroidManifest.xml 文件下application标签下 添加标签<!--数据库名字-->
<meta-data androi]]></description><category></category></item></channel></rss>