<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[时光如一缕沙]]></title><description><![CDATA[天行健，君子以自强不息。地势坤，君子以厚德载物。]]></description><link>https://blog.youkuaiyun.com/congwiny</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; congwiny]]></copyright><item><title><![CDATA[如何在 Mac 上卸载 Java？]]></title><link>https://blog.youkuaiyun.com/congwiny/article/details/78239151</link><guid>https://blog.youkuaiyun.com/congwiny/article/details/78239151</guid><author>congwiny</author><pubDate>Sun, 15 Oct 2017 10:57:26 +0800</pubDate><description><![CDATA[https://www.java.com/zh_CN/download/help/mac_uninstall_java.xml]]></description><category></category></item><item><title><![CDATA[Android Gradle 常用使用场景实现方式的总结]]></title><link>https://blog.youkuaiyun.com/congwiny/article/details/78231760</link><guid>https://blog.youkuaiyun.com/congwiny/article/details/78231760</guid><author>congwiny</author><pubDate>Sat, 14 Oct 2017 07:14:28 +0800</pubDate><description><![CDATA[Gradle 作为一款灵活多变的构建插件，与 Android Studio 的结合，能够解决过去使用 Eclipse 开发 App 时所遇到的诸多问题。同时，基于 Groove 这样一款 DSL 语言的脚本特性，记住各种语法显然又是一件比较困难的事情。

事实上，Gradle 插件的常用使用场景并不是很多，也不需要死记硬背，或者完全学会 Groove 的所有使用方式。这里将 Android 开]]></description><category></category></item><item><title><![CDATA[Kotlin基础]]></title><link>https://blog.youkuaiyun.com/congwiny/article/details/77621186</link><guid>https://blog.youkuaiyun.com/congwiny/article/details/77621186</guid><author>congwiny</author><pubDate>Sun, 27 Aug 2017 16:27:35 +0800</pubDate><description><![CDATA[幕布地址



声明要素

变量

分类

可变变量

val关键字声明

说明

只能初始化一次Kotlin推荐使用val对应Java的final变量
示例

val answer: Int = 42val answer = 42 (类型推导，省略变量类型)


不可变变量

var关键字声明

说明

可初始化多次对应Java的非fina]]></description><category></category></item><item><title><![CDATA[Kotlin概要简介]]></title><link>https://blog.youkuaiyun.com/congwiny/article/details/77621142</link><guid>https://blog.youkuaiyun.com/congwiny/article/details/77621142</guid><author>congwiny</author><pubDate>Sun, 27 Aug 2017 16:23:50 +0800</pubDate><description><![CDATA[Kotlin语言简介

针对Java平台的新编程语言
Kotlin主要特征

静态类型

优点

同Java静态类型语言编译期发现问题

面向对象类型自动推断

编译器从上下文推断变量类型
可空类型支持

编译期检测到潜在空指针异常
函数式编程

核心概念

头等函数

函数（一小段行为）可作为值使用变量保存函数函数作为参数传递其他函数返回值为函数
]]></description><category></category></item><item><title><![CDATA[Java注解（Annotation）]]></title><link>https://blog.youkuaiyun.com/congwiny/article/details/77249409</link><guid>https://blog.youkuaiyun.com/congwiny/article/details/77249409</guid><author>congwiny</author><pubDate>Wed, 16 Aug 2017 16:25:53 +0800</pubDate><description><![CDATA[说明

注解以@打头注解作为一个标记，传递某种信息一个注解就是一个类哪里用到注解，就会在哪创建注解实例对象javac编译器或其他程序通过反射获取元素的注解
分类

JDK内置系统注解

@Deprecated

标记某个元素过时
@Override

标记某个方法覆盖了父类方法
@SafeVarargs
参考http://book.51cto.com/art/20120]]></description><category></category></item><item><title><![CDATA[UML用例图]]></title><link>https://blog.youkuaiyun.com/congwiny/article/details/77199154</link><guid>https://blog.youkuaiyun.com/congwiny/article/details/77199154</guid><author>congwiny</author><pubDate>Tue, 15 Aug 2017 19:51:37 +0800</pubDate><description><![CDATA[作用

描述“用户、需求、系统功能单元”之间的关系大体功能描述
包含元素

参与者（Actor）

在系统外部与系统直接交互的人或事物

参与者是角色而不是具体的人使用一个小人表示

用例（Use Case）

系统外部可见的一个系统功能单元

系统的功能由系统单元提供使用椭圆表示

关系（RelationShip）

特点

UML里最麻烦的部分
用例]]></description><category></category></item><item><title><![CDATA[UML类图]]></title><link>https://blog.youkuaiyun.com/congwiny/article/details/77199117</link><guid>https://blog.youkuaiyun.com/congwiny/article/details/77199117</guid><author>congwiny</author><pubDate>Tue, 15 Aug 2017 19:48:57 +0800</pubDate><description><![CDATA[作用

架构设计时，弄清楚抽象的东西
包含关系

泛化 (Generalization)

说明

是一种继承关系指定了子类如何特化父类特征和行为
表示符号

带三角箭头的实线，箭头指向父类


示例

老虎是动物的一种，即有动物的共性，也有老虎自己的特性



实现 (Realization)

说明

是一种类与接口的关系表示类实现接口的特征和]]></description><category></category></item><item><title><![CDATA[指针函数与函数指针]]></title><link>https://blog.youkuaiyun.com/congwiny/article/details/77083131</link><guid>https://blog.youkuaiyun.com/congwiny/article/details/77083131</guid><author>congwiny</author><pubDate>Fri, 11 Aug 2017 09:27:36 +0800</pubDate><description><![CDATA[指针函数函数指针]]></description><category></category></item><item><title><![CDATA[ClassLoader之热修复]]></title><link>https://blog.youkuaiyun.com/congwiny/article/details/77015537</link><guid>https://blog.youkuaiyun.com/congwiny/article/details/77015537</guid><author>congwiny</author><pubDate>Wed, 09 Aug 2017 20:21:00 +0800</pubDate><description><![CDATA[热修复什么是热修复为什么使用热修复主流热修复框架热修复原理ClassLoader加载Dex流程图ClassLoaderAndroid提供的ClassLoaderPathClassLoaderDexClassLoader代码示例参考
Android dex分包方案
安卓App热补丁动态修复技术介绍
Android 热补丁动态修复框架小结
Android插件化与热修复(一)]]></description><category></category></item><item><title><![CDATA[Service进程防杀]]></title><link>https://blog.youkuaiyun.com/congwiny/article/details/76269252</link><guid>https://blog.youkuaiyun.com/congwiny/article/details/76269252</guid><author>congwiny</author><pubDate>Fri, 28 Jul 2017 21:24:22 +0800</pubDate><description><![CDATA[什么是进程进程（Process）是计算机中的程序关于某数据集合上的一次运行活动，是系统进行资源分配和调度的基本单位，是操作系统结构的基础。进程的概念主要有两点：第一，进程是一个实体。每一个进程都有它自己的地址空间，一般情况下，包括文本区域（text region）、数据区域（data region）和堆栈（stack region）。文本区域存储处理器执行的代码；数据区域存储变量和进程执行期间使用的]]></description><category></category></item><item><title><![CDATA[Handler源码分析]]></title><link>https://blog.youkuaiyun.com/congwiny/article/details/76162762</link><guid>https://blog.youkuaiyun.com/congwiny/article/details/76162762</guid><author>congwiny</author><pubDate>Thu, 27 Jul 2017 11:24:56 +0800</pubDate><description><![CDATA[Handler的作用Android消息机制我们都知道Android应用程序的UI的绘制都是在主线程（UI线程）进行的。如果在主线程做一些耗时操作会阻塞主线程的进行，耗时操作主要包括网络访问，大量计算，文件读写等等情况，会造成UI卡顿，严重的情况会造成应用程序ANR。所以我们上面说的这些耗时操作不能放在主线程中进行。我们在处理这些潜在的耗时操作时，会新开一个线程去处理这些事情。当非主线程执行完操作之后]]></description><category></category></item><item><title><![CDATA[ANDROID获取WEBVIEW中网页的TITLE(标题)信息]]></title><link>https://blog.youkuaiyun.com/congwiny/article/details/72704360</link><guid>https://blog.youkuaiyun.com/congwiny/article/details/72704360</guid><author>congwiny</author><pubDate>Wed, 24 May 2017 19:50:24 +0800</pubDate><description><![CDATA[应用开发中需要获取WebView当前页面的标题、可能通过对WebChromeClient.onReceivedTitle()方法的重写来实现、但是WebChromeClient也只有这个方法可以获取网页的title内容、没有其他获取内容的方法了、比如获取meta信息等、就需要使用js获取、然后和js交互来获得、也可以采用直接解析html的meta节点的方式.


为了方便大家理解、我把整个c]]></description><category></category></item><item><title><![CDATA[【逻辑思维】马粪争夺案]]></title><link>https://blog.youkuaiyun.com/congwiny/article/details/62891269</link><guid>https://blog.youkuaiyun.com/congwiny/article/details/62891269</guid><author>congwiny</author><pubDate>Fri, 17 Mar 2017 16:39:12 +0800</pubDate><description><![CDATA[马粪争夺案


你好，公平和效率之间的关系是一个大家经常讨论的问题，大家一般会觉得，要么是公平优先，要么是效率优先。它们两个是此消彼长、互相对立的关系。每当我听到有人这么说的时候，就想起一个故事，那就是非常经典的马粪案，那是100多年前的一个真实案子。
马粪案的故事
这个案子发生在美国，1869年4月6号，案中原告请了两个帮工，到马路上捡马粪，晚上6点钟开始干活，干到晚上8点，两个小时。]]></description><category></category></item><item><title><![CDATA[Android studio升级2.3 Refreshing xxx Gradle Project的问题]]></title><link>https://blog.youkuaiyun.com/congwiny/article/details/60870405</link><guid>https://blog.youkuaiyun.com/congwiny/article/details/60870405</guid><author>congwiny</author><pubDate>Wed, 08 Mar 2017 14:06:22 +0800</pubDate><description><![CDATA[从Android studio2.2升级2.3，安装完成后，再次进入项目，就一直卡死在Refresh，等了半天都没刷新好。。。


这是啥问题，具体不清楚，估计是请求网络啥的出现问题了。


不能这样一直让它刷新着啊，就换种办法用Android studio能用起来吧。


解决办法：
前提：下载好gradle 3.3以上的版本，因为要使用Android studio 2.3需]]></description><category></category></item><item><title><![CDATA[Android Studio 使用 Gradle 打包 Jar]]></title><link>https://blog.youkuaiyun.com/congwiny/article/details/50634525</link><guid>https://blog.youkuaiyun.com/congwiny/article/details/50634525</guid><author>congwiny</author><pubDate>Thu, 04 Feb 2016 12:49:40 +0800</pubDate><description><![CDATA[最近在搞个广告sdk,使用Android平台。使用Android studio开发。sdk最后要打成Jar包。
Eclipse下打jar包并且混淆的做法是参考这篇博客：Proguard使用最新，最全教程，亲自试验
在Android studio下，打包都是在gradle文件中配置的，所以在网上找了比较好的文章，解决了打包问题。
Android Studio 使用 Gradle 打包 Jar ]]></description><category></category></item><item><title><![CDATA[使用logcat调试]]></title><link>https://blog.youkuaiyun.com/congwiny/article/details/50572905</link><guid>https://blog.youkuaiyun.com/congwiny/article/details/50572905</guid><author>congwiny</author><pubDate>Sun, 24 Jan 2016 10:24:34 +0800</pubDate><description><![CDATA[介绍一下logcat


对于不熟悉adb logcat的您来说，现在应该是介绍一下的时候了。

当Android运行时，它会收集所有的系统信息。如您所知，程序员、开发者可以选择实时输出状态信息（或是错误信息、调试提示）到系统日志中，Android本身也通过这种方式输出所有有用的信息。

但是，对于一个随时更新的日志，又如何查看它呢？

如果您通过ADB（使用USB或其他方式）连]]></description><category></category></item><item><title><![CDATA[从http开始说Volley缓存]]></title><link>https://blog.youkuaiyun.com/congwiny/article/details/50500564</link><guid>https://blog.youkuaiyun.com/congwiny/article/details/50500564</guid><author>congwiny</author><pubDate>Tue, 12 Jan 2016 00:04:35 +0800</pubDate><description><![CDATA[Volley缓存


1.从何说起？


Volley是干嘛用的呢？ 大家都知道是请求网络用的。那我们常用网络请求是使用HTTP协议的。那就从这个HTTP的请求和响应说起了。
我们每天使用的浏览器访问网页，都是走的HTTP协议。
打开一个网页一般都需要两个过程。我们在输入一个网址，然后按回车，或者点一个链接。这些都是我们操作的一次请求(request)。
这个请求会发送到你所输入]]></description><category></category></item><item><title><![CDATA[Mac中的markdown编辑器]]></title><link>https://blog.youkuaiyun.com/congwiny/article/details/50490045</link><guid>https://blog.youkuaiyun.com/congwiny/article/details/50490045</guid><author>congwiny</author><pubDate>Sat, 09 Jan 2016 22:21:02 +0800</pubDate><description><![CDATA[MacDownHello there! I’m MacDown, the open source Markdown editor for OS X.Let me introduce myself.Markdown and IMarkdown is a plain text formatting syntax created by John Gruber, aiming to provide a ea]]></description><category></category></item><item><title><![CDATA[项目通过ssh与GitHub关联]]></title><link>https://blog.youkuaiyun.com/congwiny/article/details/50489344</link><guid>https://blog.youkuaiyun.com/congwiny/article/details/50489344</guid><author>congwiny</author><pubDate>Sat, 09 Jan 2016 20:59:17 +0800</pubDate><description><![CDATA[一：安装ssh
1 如果没有安装ssh，那么使用下面的指令
sudo apt-get install ssh
2 检查SSH公钥
cd ~/.ssh
看看存不存在.ssh，如果存在的话，掠过下一步；不存在的请看下一步
3 生成SSH公钥
$ ssh-keygen -t rsa -C "your_email@youremail.com"
# Creates a new ssh key]]></description><category></category></item><item><title><![CDATA[查看Activity栈信息]]></title><link>https://blog.youkuaiyun.com/congwiny/article/details/50489102</link><guid>https://blog.youkuaiyun.com/congwiny/article/details/50489102</guid><author>congwiny</author><pubDate>Sat, 09 Jan 2016 19:17:08 +0800</pubDate><description><![CDATA[adb shell dumpsys activity activities | sed -En -e '/Running activities/,/Run #0/p'




➜  Downloads 
adb -s T8DDU15204022902 shell dumpsys activity activities | sed -En -e '/Running activities/]]></description><category></category></item></channel></rss>