<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Allyn]]></title><description><![CDATA[慢慢的沉淀。。。]]></description><link>https://blog.youkuaiyun.com/android_drawing</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; android_drawing]]></copyright><item><title><![CDATA[异常处理：.net.UnknownHostException nodename nor servname provided, or not known]]></title><link>https://blog.youkuaiyun.com/android_drawing/article/details/53201877</link><guid>https://blog.youkuaiyun.com/android_drawing/article/details/53201877</guid><author>android_drawing</author><pubDate>Thu, 17 Nov 2016 16:28:34 +0800</pubDate><description><![CDATA[开发web项目运行tamcat时遇到上面的问题，我用的是idea，在命令行输入如下命令就可以了！

$ scutil --set HostName "localhost"]]></description><category></category></item><item><title><![CDATA[打造通用的PopupWindow]]></title><link>https://blog.youkuaiyun.com/android_drawing/article/details/50585333</link><guid>https://blog.youkuaiyun.com/android_drawing/article/details/50585333</guid><author>android_drawing</author><pubDate>Tue, 26 Jan 2016 09:51:30 +0800</pubDate><description><![CDATA[国际惯例，先上地址

https://github.com/razerdp/BasePopup


PS:效果图都放在了github，github有着我继承该类做出来的popupWindow

//2016-01-15 目前只写了两个PopupWindow

效果图：

普通的放大缩小：




从下方弹出：










通常情况下，面]]></description><category></category></item><item><title><![CDATA[Android设计模式源码解析之外观模式(Facade)]]></title><link>https://blog.youkuaiyun.com/android_drawing/article/details/50582088</link><guid>https://blog.youkuaiyun.com/android_drawing/article/details/50582088</guid><author>android_drawing</author><pubDate>Mon, 25 Jan 2016 17:35:32 +0800</pubDate><description><![CDATA[1. 模式介绍

模式的定义

外观模式(也成为门面模式)要求一个子系统的外部与其内部的通信必须通过一个统一的对象进行。它提供一个高层次的接口，使得子系统更易于使用。

模式的使用场景

在设计初期阶段，将不同的两个层分离；在开发阶段，子系统往往因为不断的重构演化而变得越来越复杂，大多数的模式使用时也都会产生很多很小的类，这本是好事，但也给外部调用它们的用户程序带来了使用上的困难，]]></description><category></category></item><item><title><![CDATA[Android比iOS卡得原因和本质区别总结]]></title><link>https://blog.youkuaiyun.com/android_drawing/article/details/50159777</link><guid>https://blog.youkuaiyun.com/android_drawing/article/details/50159777</guid><author>android_drawing</author><pubDate>Thu, 03 Dec 2015 14:01:34 +0800</pubDate><description><![CDATA[Android比iOS卡得原因！
1.IOS是用objective-c开发的，属于编译语言，无需虚拟机，无需解释器，但是安卓丫的用JAVA搞的，一个进程一个虚拟机，每个程序运行起来都需要一个解释器边解释代码边运行，这就牺牲了很大的性能。这也是为什么不管什么样的安卓手机跑temple run都会多多少少卡一些，4S就完全不会卡了。只要安卓一直用JAVA搞，在同样的配置下根本没法跟IOS相提并论。]]></description><category></category></item><item><title><![CDATA[2015年12月3日面试是被问到得问题记录]]></title><link>https://blog.youkuaiyun.com/android_drawing/article/details/50159753</link><guid>https://blog.youkuaiyun.com/android_drawing/article/details/50159753</guid><author>android_drawing</author><pubDate>Thu, 03 Dec 2015 13:55:01 +0800</pubDate><description><![CDATA[2015-12-02面试中问到得问题！
Android如何进行内存管理？
Xmpp的特点和缺点？
TCP和UDP的区别？
Android和iOS的区别？
Android系统为何比iOS卡？
解释一下MVC？
觉得自己有哪些不足或者需要改进的地方？
项目中遇到了哪些让你棘手的问题？又是如何觉得的？
关于本公司你有什么问题要问的吗？
XX项目有某些功能你认为多久时间能够完成？
你]]></description><category></category></item><item><title><![CDATA[android流式布局--流式标签]]></title><link>https://blog.youkuaiyun.com/android_drawing/article/details/50037769</link><guid>https://blog.youkuaiyun.com/android_drawing/article/details/50037769</guid><author>android_drawing</author><pubDate>Wed, 25 Nov 2015 15:28:20 +0800</pubDate><description><![CDATA[1、概述

上一篇已经基本给大家介绍了如何自定义ViewGroup，如果你还不了解，请查看：Android 手把手教您自定ViewGroup ，本篇将使用上篇介绍的方法，给大家带来一个实例：实现FlowLayout，何为FlowLayout，如果对Java的Swing比较熟悉的话一定不会陌生，就是控件根据ViewGroup的宽，自动的往右添加，如果当前行剩余空间不足，则自动添加到下一行。有点所]]></description><category></category></item><item><title><![CDATA[MVC 与 MVP 的区别，MVP的框架模式的应用]]></title><link>https://blog.youkuaiyun.com/android_drawing/article/details/50013611</link><guid>https://blog.youkuaiyun.com/android_drawing/article/details/50013611</guid><author>android_drawing</author><pubDate>Tue, 24 Nov 2015 15:31:51 +0800</pubDate><description><![CDATA[一、概述

对于MVP（Model View Presenter），大多数人都能说出一二：“MVC的演化版本”，“让Model和View完全解耦”等等。本篇博文仅是为了做下记录，提出一些自己的看法，和帮助大家如何针对一个Activity页面去编写针对MVP风格的代码。

对于MVP，我的内心有一个问题：

为何这个模式出来后，就能被广大的Android的程序员接受呢？


问了些]]></description><category></category></item><item><title><![CDATA[Android设计模式--适配器模式]]></title><link>https://blog.youkuaiyun.com/android_drawing/article/details/49992877</link><guid>https://blog.youkuaiyun.com/android_drawing/article/details/49992877</guid><author>android_drawing</author><pubDate>Mon, 23 Nov 2015 11:36:12 +0800</pubDate><description><![CDATA[我们经常可以看到适配器出现在我们的代码中，如在Android便充分利用了适配器来实现view和数据的联系，如：ListView和BaseAdapter。
我们举一下一个小例子来说明一下适配器模式。
就拿我们首页的图来看，
我们国家的标准电压是220v,而我们笔记本所需的电压就15v左右;所以肯定不可以把我们的交流电直接接到笔记本上，这时，我们得有一个变压器(电源适配器)就可以了，把220v电]]></description><category></category></item><item><title><![CDATA[android 观察者模式解析]]></title><link>https://blog.youkuaiyun.com/android_drawing/article/details/49991433</link><guid>https://blog.youkuaiyun.com/android_drawing/article/details/49991433</guid><author>android_drawing</author><pubDate>Mon, 23 Nov 2015 10:30:16 +0800</pubDate><description><![CDATA[观察者模式的优点好处：可以降低代码的耦合度，维护更方便，相对于广播和Intent来说！
观察者模式首先需要知道两个重要的类：Observer类和Observable类，Observable是被观察者类，Observer是观察者类，
他们之前如何实现交互通信传值呢？
package com.myboserver;

import java.util.Observable;

public cl]]></description><category></category></item><item><title><![CDATA[Android 自定义控件，继承控件，组合控件]]></title><link>https://blog.youkuaiyun.com/android_drawing/article/details/49867973</link><guid>https://blog.youkuaiyun.com/android_drawing/article/details/49867973</guid><author>android_drawing</author><pubDate>Mon, 16 Nov 2015 16:49:41 +0800</pubDate><description><![CDATA[一、自绘控件

自绘控件的意思就是，这个View上所展现的内容全部都是我们自己绘制出来的。绘制的代码是写在onDraw()方法中的，

下面我们准备来自定义一个计数器View，这个View可以响应用户的点击事件，并自动记录一共点击了多少次。新建一个CounterView继承自View，代码如下所示：



[java] view
 plaincopy]]></description><category></category></item><item><title><![CDATA[android权限大全]]></title><link>https://blog.youkuaiyun.com/android_drawing/article/details/49659909</link><guid>https://blog.youkuaiyun.com/android_drawing/article/details/49659909</guid><author>android_drawing</author><pubDate>Thu, 05 Nov 2015 11:01:54 +0800</pubDate><description><![CDATA[访问登记属性
android.permission.ACCESS_CHECKIN_PROPERTIES
读取或写入登记check-in数据库属性表的权限


获取错略位置
android.permission.ACCESS_COARSE_LOCATION
通过WiFi或移动基站的方式获取用户错略的经纬度信息
定位精度大概误差在30~1500米


获取精确位置
androi]]></description><category></category></item><item><title><![CDATA[实时视频监控的设计实现原理]]></title><link>https://blog.youkuaiyun.com/android_drawing/article/details/49612427</link><guid>https://blog.youkuaiyun.com/android_drawing/article/details/49612427</guid><author>android_drawing</author><pubDate>Tue, 03 Nov 2015 10:21:32 +0800</pubDate><description><![CDATA[由于赶项目没有过多的时间写博客，


在此提供一个我看完觉得很有用的学习网站供大家参考 ：http://www.docin.com/p-658193072.html]]></description><category></category></item><item><title><![CDATA[Android手机实时视频监控]]></title><link>https://blog.youkuaiyun.com/android_drawing/article/details/49583521</link><guid>https://blog.youkuaiyun.com/android_drawing/article/details/49583521</guid><author>android_drawing</author><pubDate>Mon, 02 Nov 2015 10:31:31 +0800</pubDate><description><![CDATA[于软件“千里眼”，经过代码的翻看，发现采用的是VideoView中访问RTSP实时视频流的思路实现的。
反编译后的代码







String str = getIntent().getStringExtra("rtsp");
if (str != null)
{
      VideoView localVideoView3 =this.videoView;
   ]]></description><category></category></item><item><title><![CDATA[Android 开发中的日常积累]]></title><link>https://blog.youkuaiyun.com/android_drawing/article/details/49123647</link><guid>https://blog.youkuaiyun.com/android_drawing/article/details/49123647</guid><author>android_drawing</author><pubDate>Wed, 14 Oct 2015 12:56:01 +0800</pubDate><description><![CDATA[欢迎Star，Fork

https://github.com/lizhangqu/CoreLink

里面记录了开发过程中有用的东西，欢迎补充，不定时更新。

Android 性能优化

Android内存优化之OOMAndroid最佳性能实践(1)：合理管理内存Android最佳性能实践(2)：分析内存的使用情况Android最佳性能实践(3)：高性能编码优化Android最佳]]></description><category></category></item><item><title><![CDATA[Android最佳性能实践布局优化技巧]]></title><link>https://blog.youkuaiyun.com/android_drawing/article/details/49123609</link><guid>https://blog.youkuaiyun.com/android_drawing/article/details/49123609</guid><author>android_drawing</author><pubDate>Wed, 14 Oct 2015 12:49:20 +0800</pubDate><description><![CDATA[重用布局文件

Android系统中已经提供了非常多好用的控件，这让我们在编写布局的时候可以很轻松。但是有些时候我们可能需要反复利用某个已经写好的布局，如果你总是使用复制粘贴的方式来进行布局重用，这显然是一种很笨的做法。而Android当然也已经充分考虑到了布局重用的重要性，于是提供了和这两个非常有用的标签，下面我们就来逐个学习一下。



标签可以允许在一个布局当中引入另外一个布局，]]></description><category></category></item><item><title><![CDATA[Android属性动画-Property Animation(二) 使用ObjectAnimator完成动画]]></title><link>https://blog.youkuaiyun.com/android_drawing/article/details/49123327</link><guid>https://blog.youkuaiyun.com/android_drawing/article/details/49123327</guid><author>android_drawing</author><pubDate>Wed, 14 Oct 2015 12:07:52 +0800</pubDate><description><![CDATA[上一篇文章中我们分析了属性动画的工作原理，这篇文章开始介绍属性动画的实现，就不会再去分析原理，如果对原理不清楚的朋友可以看一下 Android属性动画-Property
 Animation(一) 原理分析

       使用属性动画时我们通常使用Animator的两个子类，ValueAnimator和ObjectAnimator。这两个子类如何选择呢？在大多数情况下我们会使用Object]]></description><category></category></item><item><title><![CDATA[Android属性动画-Property Animation(四) 组合动画]]></title><link>https://blog.youkuaiyun.com/android_drawing/article/details/49122965</link><guid>https://blog.youkuaiyun.com/android_drawing/article/details/49122965</guid><author>android_drawing</author><pubDate>Wed, 14 Oct 2015 11:39:21 +0800</pubDate><description><![CDATA[(一)、使用AnimatorSet实现动画集

之前我们研究的都是一个动画一个动画的单独播放，而在很多时候，我么需要将几个动画，以某种逻辑顺序来执行。我们可以用AnimatorSet来组合各种各样的动画。

首先我们先来看这样一个动画：

这个动画集由{下落动画，改变背景颜色动画，改变字体颜色动画}组成的。他们是同时执行的




布局文件如下：]]></description><category></category></item><item><title><![CDATA[Android网络框架-Volley实践 使用Volley打造自定义ListView]]></title><link>https://blog.youkuaiyun.com/android_drawing/article/details/49122735</link><guid>https://blog.youkuaiyun.com/android_drawing/article/details/49122735</guid><author>android_drawing</author><pubDate>Wed, 14 Oct 2015 11:30:45 +0800</pubDate><description><![CDATA[这篇文章翻译自Ravi Tamada博客中的Android Custom ListView with Image and Text using
 Volley

最终效果



这个ListView呈现了一些影视信息，每一行是一个影片的信息，每一行中有一张电影的图片，电影的名字、评分、类型、年份等信息。

1.json数据

我们通过解析json然后拿到数据，这个json数据]]></description><category></category></item><item><title><![CDATA[Android中对于Context的理解]]></title><link>https://blog.youkuaiyun.com/android_drawing/article/details/49121997</link><guid>https://blog.youkuaiyun.com/android_drawing/article/details/49121997</guid><author>android_drawing</author><pubDate>Wed, 14 Oct 2015 10:50:26 +0800</pubDate><description><![CDATA[在Android中，Context到底是个什么鬼东西，它到底是干嘛使得，我读了很多篇文档，然而并不能清除的理解它的含义。

答案： 
简单来说，就像它的名字(上下文)一样，他是项目当前的状态的一个标识，他可以让新创建出来，新加入进来的对象或组件知道当前项目的进度，处于一个什么状态，这样我们就可以容易理解上下文的意思了把，上文就是自己知道了之前项目已经处于一个什么样的状态，下文就是告诉后来的对]]></description><category></category></item><item><title><![CDATA[android避免service被杀]]></title><link>https://blog.youkuaiyun.com/android_drawing/article/details/49074041</link><guid>https://blog.youkuaiyun.com/android_drawing/article/details/49074041</guid><author>android_drawing</author><pubDate>Mon, 12 Oct 2015 15:07:02 +0800</pubDate><description><![CDATA[最近项目要实现这样一个效果：运行后，要有一个service始终保持在后台运行，不管用户作出什么操作，都要保证service不被kill，这可真是一个难题。参考了现今各种定制版的系统和安全厂商牛虻软件，如何能保证自己的Service不被杀死呢？

其实除了常规的手段，我们可以参考一下微信和360，设置-程序-正在运行，可以看到微信是同时开启了两个进程和服务：

【有兴趣可以研究一下 守护进程]]></description><category></category></item></channel></rss>