<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[また明日ね]]></title><description><![CDATA[Android编程之路刚开始的萌新]]></description><link>https://blog.youkuaiyun.com/D_Russell</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; D_Russell]]></copyright><item><title><![CDATA[2018.7.20 阶段小结]]></title><link>https://blog.youkuaiyun.com/D_Russell/article/details/81137828</link><guid>https://blog.youkuaiyun.com/D_Russell/article/details/81137828</guid><author>D_Russell</author><pubDate>Fri, 20 Jul 2018 19:50:00 +0800</pubDate><description><![CDATA[前言

好久没写博客了，距离上次写博客应该是几个月前的事情了。现在是一名毕业生，在上海，这个压力比较大的城市工作，第一份工作的薪水还行，虽然跟当初上大学时期望的有点出入，但是算是符合我现在的水平的吧，希望自己的下一份工作的薪水能够变高一点。

目前的情况

现在的公司是一家跟二次元挂钩的公司，算是符合我的兴趣吧，虽然我的目标是进游戏公司，估计这个愿望得以后才能实现了。和这里的小伙伴一起创业，如果成...]]></description><category></category></item><item><title><![CDATA[冒泡排序算法小结]]></title><link>https://blog.youkuaiyun.com/D_Russell/article/details/79103239</link><guid>https://blog.youkuaiyun.com/D_Russell/article/details/79103239</guid><author>D_Russell</author><pubDate>Fri, 19 Jan 2018 09:52:49 +0800</pubDate><description><![CDATA[冒泡排序

原理：比较两个相邻的元素，将值大的元素交换至右端。

思路：依次比较相邻的两个数，将小数放在前面，大数放在后面。即在第一趟：首先比较第1个和第2个数，将小数放前，大数放后。然后比较第2个数和第3个数，将小数放前，大数放后，如此继续，直至比较最后两个数，将小数放前，大数放后。重复第一趟步骤，直至全部排序完成。

N个数要执行N-1次排序，每次排序内层循环为N-i次

冒泡的时间复杂度：最]]></description><category></category></item><item><title><![CDATA[ListView 分页简单写法]]></title><link>https://blog.youkuaiyun.com/D_Russell/article/details/78830344</link><guid>https://blog.youkuaiyun.com/D_Russell/article/details/78830344</guid><author>D_Russell</author><pubDate>Mon, 18 Dec 2017 10:19:46 +0800</pubDate><description><![CDATA[前言关于Android 端ListView分页的做法之前一直不懂，碰巧项目中遇到了，所以在这边记录下学习的成果。
分页：当用户在ListView界面上的时候不会加载全部的数据，而是从服务端加载一部分数据，当用户滑动ListView到末端的时候再从服务器加载更多数据。
接口介绍:OnScrollListener
// 静态属性
public static int SCROLL_STATE_IDLE =]]></description><category></category></item><item><title><![CDATA[Android Studio代码混淆小结]]></title><link>https://blog.youkuaiyun.com/D_Russell/article/details/78646306</link><guid>https://blog.youkuaiyun.com/D_Russell/article/details/78646306</guid><author>D_Russell</author><pubDate>Mon, 27 Nov 2017 16:25:12 +0800</pubDate><description><![CDATA[前言之前对代码混淆这块一直不了解，今天进入新公司就接触到了，网上看了一些博客，这里记录下看的结果。基本规则
两个常用的混淆命令，注意一颗星表示只是保持该包下的类名，而子包下的类名还是会被混淆；两颗星表示把本包和所含子包下的类名都保持；
-keep class cn.hadcn.test.**
-keep class cn.hadcn.test.*
用以上方法保持类后，你会发现类名虽然未混淆，但里面的]]></description><category></category></item><item><title><![CDATA[新的征程，10月11月小结]]></title><link>https://blog.youkuaiyun.com/D_Russell/article/details/78552346</link><guid>https://blog.youkuaiyun.com/D_Russell/article/details/78552346</guid><author>D_Russell</author><pubDate>Thu, 16 Nov 2017 16:03:54 +0800</pubDate><description><![CDATA[前言10月31号离开阔地，在一个创业公司呆了3天，结束苏州的生活来到上海，苏州怕是不会再回，来到上海这个寸土寸金的地方，进入了风林科技，今天报道，于办公桌上写下这篇小结。感受离开阔地是个艰难的选择，阔地的文化我很认同，同事都平易近人没有存在沟通方面的困难，自己也习惯了在那边生活。但我心里怀着对大城市的向往与热情，希望自己能够在大城市经历磨练，作为一名不太合格的程序员，我要走的道路还有很多。上海会成为]]></description><category></category></item><item><title><![CDATA[Android 动画]]></title><link>https://blog.youkuaiyun.com/D_Russell/article/details/78215304</link><guid>https://blog.youkuaiyun.com/D_Russell/article/details/78215304</guid><author>D_Russell</author><pubDate>Thu, 12 Oct 2017 15:19:31 +0800</pubDate><description><![CDATA[前言Android动画方面一直是个难点，学了又忘，现在整理记录下来以便查阅。逐帧动画（Frame Animation）在Android中实现逐帧动画，就是由设计师给出一系列状态不断变化的图片，开发者可以指定动画中每一帧对应的图片和持续的时间，然后就可以开始播放动画了。具体而言，有两种方式可以定义逐帧动画，分别采用XML资源文件和代码实现。
XML资源文件方式 
这是最常使用的方式，首先我们将每一帧图]]></description><category></category></item><item><title><![CDATA[8月、9月学习总结]]></title><link>https://blog.youkuaiyun.com/D_Russell/article/details/78213006</link><guid>https://blog.youkuaiyun.com/D_Russell/article/details/78213006</guid><author>D_Russell</author><pubDate>Thu, 12 Oct 2017 11:35:21 +0800</pubDate><description><![CDATA[8月
学习Android跨平台相关知识，具体点有H5+CSS+JS+MUI
MongoDB
Node.js开发后台接口，与MongoDB搭配使用
9月
React Native学习（学习了大概10%，后来因为一些事情耽误了）
公司订餐系统的开发，使用H5+MUI开发跨平台的方案（前期需求分析工作，开发框架与部分UI搭建）
Android原生知识复习
JS知识的学习与应用，期间完成了一款基于H5的电影]]></description><category></category></item><item><title><![CDATA[Android 事件处理]]></title><link>https://blog.youkuaiyun.com/D_Russell/article/details/78212872</link><guid>https://blog.youkuaiyun.com/D_Russell/article/details/78212872</guid><author>D_Russell</author><pubDate>Thu, 12 Oct 2017 11:27:25 +0800</pubDate><description><![CDATA[前言Android 的事件处理机制一直是个知识盲点，终于下决心把它解决。触摸事件的类型触摸事件对应的是MotionEvent类，事件的类型主要有如下三种。
ACTION_DOWN：用户手指按下操作，一个按下操作标志着一次触摸事件的开始。
ACTION_MOVE：用户手指按压屏幕后，在松开之前，如果移动的距离超过移动的阈值，那么会被判定为ACTION_MOVE操作，一般情况下，手指的轻微移动都会触发一]]></description><category></category></item><item><title><![CDATA[Node.js 连接MongoDB，并实现浏览器GET请求加参数]]></title><link>https://blog.youkuaiyun.com/D_Russell/article/details/77679527</link><guid>https://blog.youkuaiyun.com/D_Russell/article/details/77679527</guid><author>D_Russell</author><pubDate>Tue, 29 Aug 2017 16:20:47 +0800</pubDate><description><![CDATA[前言最近学习了Node.js，并且接触了MongoDB,因此想做一个浏览器访问一个http地址获取数据库里的数据的例子，本文使用的是Node.js作为接口具体内容Node.js要准备的东西express模块，可以参考http://www.runoob.com/nodejs/nodejs-express-framework.html获取 
mongodb模块，可以参考http://www.runoob]]></description><category></category></item><item><title><![CDATA[Recycle 实现二级列表]]></title><link>https://blog.youkuaiyun.com/D_Russell/article/details/77161342</link><guid>https://blog.youkuaiyun.com/D_Russell/article/details/77161342</guid><author>D_Russell</author><pubDate>Mon, 14 Aug 2017 14:35:58 +0800</pubDate><description><![CDATA[前言本方法实现二级列表采用的是http://www.jianshu.com/p/46625fc9cb6e的方法，并直接引用Demo的示例Demo下载（工具类的下载）这里给出一个Demohttps://github.com/RusanNg/SecondaryListDemo   大家可自行下载研究。里面主要的文件是 RecyclerAdapter，SecondaryListAdapter 
item布]]></description><category></category></item><item><title><![CDATA[开源库BaseRecyclerViewAdapterHelper的简单用法]]></title><link>https://blog.youkuaiyun.com/D_Russell/article/details/77045306</link><guid>https://blog.youkuaiyun.com/D_Russell/article/details/77045306</guid><author>D_Russell</author><pubDate>Thu, 10 Aug 2017 11:44:19 +0800</pubDate><description><![CDATA[前言BaseRecyclerViewAdapterHelper 是用于对RecycleView的数据绑定以及定义事件的一系列超级简单的一个adapter，下面我们就来学习他的用法用法（介绍两种）配置环境标准配置 allprojects {
        repositories {
            ...
            maven { url "https://jitpack.i]]></description><category></category></item><item><title><![CDATA[EventBus之简单用法]]></title><link>https://blog.youkuaiyun.com/D_Russell/article/details/76821313</link><guid>https://blog.youkuaiyun.com/D_Russell/article/details/76821313</guid><author>D_Russell</author><pubDate>Mon, 07 Aug 2017 10:50:56 +0800</pubDate><description><![CDATA[什么是EventBus先不去看官方的理解，我个人理解为就是在任何你想和UI线程传递数据时候他都能给你进行数据传递，UI线程和传输数据的子线程是高度解耦合的，可以说是相当流氓，想怎么传数据就怎么传数据。用法用法比较简单，首先在build.gradle里添加 compile 'org.greenrobot:eventbus:3.0.0'这里为了方便使用，同时添加了butterKnife的依赖，butte]]></description><category></category></item><item><title><![CDATA[Kotlin初探之语法简介分析]]></title><link>https://blog.youkuaiyun.com/D_Russell/article/details/76640145</link><guid>https://blog.youkuaiyun.com/D_Russell/article/details/76640145</guid><author>D_Russell</author><pubDate>Thu, 03 Aug 2017 17:35:59 +0800</pubDate><description><![CDATA[前言部门经理让我在技术分享会上分享Kotlin的语法，因为Kotlin已经被Google定为一级开发语言了，正好之前也有学习Kotlin的计划于是花2天时间熟悉了下Kotlin的语法以及特性。语法关于语法的介绍比较多，这里就贴一些典型的例子
变量的声明
    var a : Int?=null        //？表示该变量可为null
    var b : Int = 2          /]]></description><category></category></item><item><title><![CDATA[Android设计模式-MVP模式初步摸索]]></title><link>https://blog.youkuaiyun.com/D_Russell/article/details/76573059</link><guid>https://blog.youkuaiyun.com/D_Russell/article/details/76573059</guid><author>D_Russell</author><pubDate>Wed, 02 Aug 2017 11:18:40 +0800</pubDate><description><![CDATA[前言之前一直搞不明白Android里面的MVP模式是怎么实现的，今天在导师的讲解下豁然开朗，这里要好好感谢一下导师。本文的重点就是通过代码的讲解来实现一个MVP模式下的天气查询的Demo。准备环境天气接口还是采用的和风天气的接口，这里给出和风天气的链接，需要的伙伴可以去官网注册使用：https://www.heweather.com/documents/api/v5/now导入一下必要的包，这里我们]]></description><category></category></item><item><title><![CDATA[Android Studio 单元测试之简单版]]></title><link>https://blog.youkuaiyun.com/D_Russell/article/details/76448547</link><guid>https://blog.youkuaiyun.com/D_Russell/article/details/76448547</guid><author>D_Russell</author><pubDate>Mon, 31 Jul 2017 16:22:47 +0800</pubDate><description><![CDATA[单元测试的意义单元测试能帮我们很快的找出bug，能够让我们在项目开发的前期就发现问题，以降低后期发现问题解决的成本。AndroidStudio怎么使用单元测试？如果你安装的是最新版本的AndroidStudio，那么它本身就会自带单元测试框架 
在build.gradle里你会发现这个: androidTestCompile('com.android.support.test.espresso:es]]></description><category></category></item><item><title><![CDATA[Android zxing 二维码扫描和生成方法（简单版）]]></title><link>https://blog.youkuaiyun.com/D_Russell/article/details/76434644</link><guid>https://blog.youkuaiyun.com/D_Russell/article/details/76434644</guid><author>D_Russell</author><pubDate>Mon, 31 Jul 2017 14:05:15 +0800</pubDate><description><![CDATA[前言二维码大家都见识过，这里就不废话了，直接来干货。步骤
导入依赖
    compile 'com.google.zxing:core:3.2.1'      //zxing核心依赖
    compile 'com.journeyapps:zxing-android-embedded:3.3.0'  //生成二维码依赖
生成二维码 
这里封装一个ZxingUtils,主要功能就是生成二维码的Bi]]></description><category></category></item><item><title><![CDATA[7月份的经历+学习总结]]></title><link>https://blog.youkuaiyun.com/D_Russell/article/details/76419092</link><guid>https://blog.youkuaiyun.com/D_Russell/article/details/76419092</guid><author>D_Russell</author><pubDate>Mon, 31 Jul 2017 10:20:36 +0800</pubDate><description><![CDATA[前言7月份进入了找实习的阶段，经过几天在网上的蹲点，终于有一家公司给了我面试的机会，最后也面试成功，成为咱们阔地教育的一名实习生。经历7月10号入职，经过2天的培训，于7月13号正式进入平台部移动组与大家见面，之后便一起工作学习。感受说说这3个星期的感受吧，并没有体验到所谓职场人士遇到的问题（可能是我刚入职不久的原因），公司的小伙伴们都很热情，人都很好，问问题有问必答，公司也给我分配了导师，很多学习]]></description><category></category></item><item><title><![CDATA[Java多线程之生产者和消费者模式解析]]></title><link>https://blog.youkuaiyun.com/D_Russell/article/details/76253565</link><guid>https://blog.youkuaiyun.com/D_Russell/article/details/76253565</guid><author>D_Russell</author><pubDate>Fri, 28 Jul 2017 14:09:57 +0800</pubDate><description><![CDATA[前言之前一直不明白生产者和消费者模式的实现方式，懂得原理，旧版的实现方式代码比较冗余。所以这里采用一种比较推荐的方式来实现。BlockingQueue阻塞队列介绍LinkedBlockingQueue由于LinkedBlockingQueue实现是线程安全的，实现了先进先出等特性，是作为生产者消费者的首选，LinkedBlockingQueue 可以指定容量，也可以不指定，不指定的话，默认最大是In]]></description><category></category></item><item><title><![CDATA[RxPermisson使用解析]]></title><link>https://blog.youkuaiyun.com/D_Russell/article/details/76232009</link><guid>https://blog.youkuaiyun.com/D_Russell/article/details/76232009</guid><author>D_Russell</author><pubDate>Fri, 28 Jul 2017 10:55:35 +0800</pubDate><description><![CDATA[导入Lambda表达式使用RxPermisson使用Lambda表达式能够表述的更加清晰 
具体导入方式： 
先确定使用的JAVA版本是不是1.8的。 
通过File-Other Settings-> Default Project Structure查看在外层build.gradle里添加 dependencies {
        classpath 'com.android.tools.bu]]></description><category></category></item><item><title><![CDATA[RxJava + Retrofit 结合使用]]></title><link>https://blog.youkuaiyun.com/D_Russell/article/details/76152502</link><guid>https://blog.youkuaiyun.com/D_Russell/article/details/76152502</guid><author>D_Russell</author><pubDate>Wed, 26 Jul 2017 16:29:54 +0800</pubDate><description><![CDATA[关于Retrofit使用Json数据的一个坑一般在根据Json数据设计JavaBean的时候我们Android一般使用的GsonFormat这个插件工具，这个工具很方便，但是也有要注意的地方。今天在调试一个天气接口的时候因为没有复制该复制的内容，导致数据一直无法解析。接下来就贴出具体内容。这是Json数据格式 
 
应该全部复制到GsonFormat,不能把最外层的大括号漏掉。正确的JavaBean]]></description><category></category></item></channel></rss>