<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[SilentWeek的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/SilentWeek</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; SilentWeek]]></copyright><item><title><![CDATA[Android切换BaseUrl项目]]></title><link>https://blog.youkuaiyun.com/SilentWeek/article/details/80987915</link><guid>https://blog.youkuaiyun.com/SilentWeek/article/details/80987915</guid><author>SilentWeek</author><pubDate>Tue, 10 Jul 2018 16:24:20 +0800</pubDate><description><![CDATA[效果图 
 
大概效果就是把域名从Github切换到简书，提供了一个悬浮小球，可选择配置好的TestUrl与ProductUrl，也可手动输入这个BaseUrl;

项目起因 
1、测试经常频繁需要切换测试环境和生产环境又不想用2个测试机测试 
2、后台若要打断点测试，可以自己开个WebServier（调个Android的bug把iOS卡主有没有？），给后台提供自嗨的可能

代码逻辑 
emmmm...]]></description><category></category></item><item><title><![CDATA[Android DrawerLayout侧滑页面点击事件无响应注意事项]]></title><link>https://blog.youkuaiyun.com/SilentWeek/article/details/79075550</link><guid>https://blog.youkuaiyun.com/SilentWeek/article/details/79075550</guid><author>SilentWeek</author><pubDate>Tue, 16 Jan 2018 15:36:31 +0800</pubDate><description><![CDATA[直接上代码



 android.support.v4.widget.DrawerLayout
        android:id="@+id/drl"
        android:layout_width="match_parent"
        android:layout_height="match_parent">
        
        RelativeLayout]]></description><category></category></item><item><title><![CDATA[Android wifi调试]]></title><link>https://blog.youkuaiyun.com/SilentWeek/article/details/78552580</link><guid>https://blog.youkuaiyun.com/SilentWeek/article/details/78552580</guid><author>SilentWeek</author><pubDate>Thu, 16 Nov 2017 16:19:24 +0800</pubDate><description><![CDATA[先保证电脑和手机连接的是一个路由1：设置tipip端口号adb tcpip 端口号 如： adb tcpip 5888设置完成后usb可以拔掉了2:查看手机的ip3.连接手机adb connect 手机ip :端口号 如：adb connect 192.168.99.112:58884.断开连接adb disconnect 手机ip 如：adb disconnect 192.168.99.1125.]]></description><category></category></item><item><title><![CDATA[AndroidStudio “app\build\intermediate\transforms\proguard\debug\jars\3\1f\main.jar”。异常解决办法]]></title><link>https://blog.youkuaiyun.com/SilentWeek/article/details/78520090</link><guid>https://blog.youkuaiyun.com/SilentWeek/article/details/78520090</guid><author>SilentWeek</author><pubDate>Mon, 13 Nov 2017 14:34:25 +0800</pubDate><description><![CDATA[问题：在集成百度推流sdk后在 build:gradle:2.3.1 下运行，报Error:Execution failed for task ':app:packageDebug'.
> java.io.IOException: Failed to read zip file 'D:\MyAndroidProject\app\build\intermediates\transforms\progu]]></description><category></category></item><item><title><![CDATA[Android AsyncTask原理解析]]></title><link>https://blog.youkuaiyun.com/SilentWeek/article/details/78042834</link><guid>https://blog.youkuaiyun.com/SilentWeek/article/details/78042834</guid><author>SilentWeek</author><pubDate>Wed, 20 Sep 2017 16:59:42 +0800</pubDate><description><![CDATA[前言：AsyncTask是对Handler异步消息处理的一层封装，方便开发者便捷使用异步处理的一个类。

源码：6.0

AsyncTask的使用



 /**
     * 1. Params
     在执行AsyncTask时需要传入的参数，用于在后台任务(doInBackground)中使用。
     2. Progress
     后台任务执行时，如果需要在界面上显示当前的进度(o...]]></description><category></category></item><item><title><![CDATA[关于volatile]]></title><link>https://blog.youkuaiyun.com/SilentWeek/article/details/77883581</link><guid>https://blog.youkuaiyun.com/SilentWeek/article/details/77883581</guid><author>SilentWeek</author><pubDate>Thu, 07 Sep 2017 16:37:01 +0800</pubDate><description><![CDATA[转载地址：http://www.jianshu.com/p/dc5a1b80dcfb这里写链接内容前言 
volatile关键字可以说是JAVA比较难理解的一个关键字了，很多书感觉讲的都不太清楚。这篇博客主要梳理一下它的含义,是对自己学习的一个总结，参考了不少资料和博客，希望可以到帮助别人。本文的主要讲一下下面几件事：
JAVA内存模型简介
volatile的语义：可见性、禁止重排序。
为什么vol]]></description><category></category></item><item><title><![CDATA[套用生产线模型的Hander、Looper、Message、MessageQueue]]></title><link>https://blog.youkuaiyun.com/SilentWeek/article/details/77190565</link><guid>https://blog.youkuaiyun.com/SilentWeek/article/details/77190565</guid><author>SilentWeek</author><pubDate>Tue, 15 Aug 2017 14:59:35 +0800</pubDate><description><![CDATA[前言：Android的线程通信的Hanlder机制其实很多都照搬了Java那套，所以：Java是世界上最好的语言！！！在Android的线程通信机制模型可以套用工厂的生产线模型； 
Handler：工人  
Looper：机床 
Message: 产品 
MessageQueue: 传送带模型图： 
模型图中我们可以看见，Handler把一个一个的Message不断的post到MessageQueu]]></description><category></category></item><item><title><![CDATA[Android -- Activity，Fragment切换动画。]]></title><link>https://blog.youkuaiyun.com/SilentWeek/article/details/72846759</link><guid>https://blog.youkuaiyun.com/SilentWeek/article/details/72846759</guid><author>SilentWeek</author><pubDate>Sat, 03 Jun 2017 14:02:37 +0800</pubDate><description><![CDATA[前言：Activity和Fragment的切换动画在开发中使用并不是很多，但是在一些特殊页面，如：微信的WXPayEntryActivity中，透明关闭，就需要对Activity的切换动画进行处理。效果图 
目录
Activity切换动画
Activity共享元素动画
Fragment切换动画
使用Style控制Activity全局切换动画
Activity切换动画OneActivity    @O]]></description><category></category></item><item><title><![CDATA[Android --自定义ViewPager切换动画]]></title><link>https://blog.youkuaiyun.com/SilentWeek/article/details/72676374</link><guid>https://blog.youkuaiyun.com/SilentWeek/article/details/72676374</guid><author>SilentWeek</author><pubDate>Thu, 25 May 2017 15:40:24 +0800</pubDate><description><![CDATA[前言：在做App的Splash页面时有一个漂亮的ViewPager切换动画，不仅能让人耳目一新，而且在开发中面对PM的需求也能做到游刃有余。先看效果图 
目录
自定义ViewPagerTransform方法介绍
自定义ViewPagerTransform
炫酷效果
1:自定义ViewPagerTransform方法介绍直接上码private void initViewPager1(){]]></description><category></category></item><item><title><![CDATA[Android属性动画高阶用法-Interpolator，TypeEvaluatory以及贝塞尔曲线公式的使用]]></title><link>https://blog.youkuaiyun.com/SilentWeek/article/details/71216571</link><guid>https://blog.youkuaiyun.com/SilentWeek/article/details/71216571</guid><author>SilentWeek</author><pubDate>Sat, 06 May 2017 14:54:36 +0800</pubDate><description><![CDATA[前言：开发当中，一般属性动画的缩放、平移、淡出、旋转，可以解决大部分需求，但是如果App本身对动画要求较高需要自定义动画移动路径，或者速率，则对Interpolator,TyperEvaluator了解便必不可少。 
如：想实现如下图动画效果 缩放、平移、淡出、旋转便显得不足了。目录
Interpolator,TyperEvaluator介绍
Interpolator,TyperEvaluator简]]></description><category></category></item><item><title><![CDATA[Android 监听EditText 使Button是否能可用工具类]]></title><link>https://blog.youkuaiyun.com/SilentWeek/article/details/59057510</link><guid>https://blog.youkuaiyun.com/SilentWeek/article/details/59057510</guid><author>SilentWeek</author><pubDate>Wed, 01 Mar 2017 10:28:09 +0800</pubDate><description><![CDATA[如图最近接手一个项目很多这种未输入按钮不可用的界面，所以把这种功能封装了一下使用：@RequiresApi(api = Build.VERSION_CODES.JELLY_BEAN)
public class MainActivity extends AppCompatActivity {    private EditText editPhone,editPwd,editVerify;
    p]]></description><category></category></item><item><title><![CDATA[Android 使用assets下的数据库文件，号码归属地查询Demo]]></title><link>https://blog.youkuaiyun.com/SilentWeek/article/details/54096330</link><guid>https://blog.youkuaiyun.com/SilentWeek/article/details/54096330</guid><author>SilentWeek</author><pubDate>Thu, 05 Jan 2017 18:41:38 +0800</pubDate><description><![CDATA[先上图吧： 
说说这个实现，查询号码归属地又两种方式，一种是网络访问，一种是本地数据库查询，这里我是选择使用本地数据库查询。本地库查询首先得有个库，想偷懒可以点这里 
库下好后，就是使用了。 
首先在main目录下建一个assets目录，把库copy到这个目录。 
接着就是把这个numberaddress.db copy到自己包下的database下面
/** 
 * This is a Asset]]></description><category></category></item><item><title><![CDATA[Android View事件分发、拦截、消费机制]]></title><link>https://blog.youkuaiyun.com/SilentWeek/article/details/53897676</link><guid>https://blog.youkuaiyun.com/SilentWeek/article/details/53897676</guid><author>SilentWeek</author><pubDate>Tue, 27 Dec 2016 17:52:50 +0800</pubDate><description><![CDATA[日常开发中，我们经常会给各种控件设置点击、触摸事件。如果滑动有冲突，还得去解决滑动冲突，所以对View的事件分发（dispatchTouchEvent）、消费（onTouchEvent）、拦截（onInterceptTouchEvent）进行详细了解必不可少。先来了解几个概念的东西： 
注意：为了便于理解与说明，我把onTouchEvent方法理解成为日常生活中的消费，其实在Android源码中，并]]></description><category></category></item><item><title><![CDATA[LinearLayout关于weight的使用心得（你真的理解对了么？）]]></title><link>https://blog.youkuaiyun.com/SilentWeek/article/details/53788979</link><guid>https://blog.youkuaiyun.com/SilentWeek/article/details/53788979</guid><author>SilentWeek</author><pubDate>Wed, 21 Dec 2016 18:23:05 +0800</pubDate><description><![CDATA[关于weight在最初 我以为它只是用来把屏幕分成若干块，然后按比重 （weight/weightSum）分配控件的宽或者高，而网上很多文章也是这么说的，也就是上面的第一种情况，直到遇见这种布局我才恍然道：想当然害人！ 
如图： 
可以发现这种布局用RelativeLayout是没法做到很好的适配的布局代码（这里可以自动略过，贴出来是为了让读者知道有这么回事）：<LinearLayout xmlns]]></description><category></category></item><item><title><![CDATA[Android屏幕旋转时，设置Activity不重新调用onCreate]]></title><link>https://blog.youkuaiyun.com/SilentWeek/article/details/53694995</link><guid>https://blog.youkuaiyun.com/SilentWeek/article/details/53694995</guid><author>SilentWeek</author><pubDate>Fri, 16 Dec 2016 16:37:07 +0800</pubDate><description><![CDATA[我们都知道当手机转屏时，Activity会走一遍onDestroy和onCreate方法 
如果想设置不去重新Destroy 和Create 只需要在AndroidManifest 对应的Activity中加入android:configChanges=”orientation|keyboardHidden”注意：如果API等级等于或高于13，还需要设置screenSize，因为screenSize]]></description><category></category></item><item><title><![CDATA[AndroidStudio 多个第三方so文件重复引用导致 java.lang.UnsatisfiedLinkError 问题]]></title><link>https://blog.youkuaiyun.com/SilentWeek/article/details/53585235</link><guid>https://blog.youkuaiyun.com/SilentWeek/article/details/53585235</guid><author>SilentWeek</author><pubDate>Mon, 12 Dec 2016 17:21:26 +0800</pubDate><description><![CDATA[最近在做直播项目，说说我这几天查资料得到的结果，直播大概分三个麻烦的地方，推流，拉流，聊天室； 
最简单的方式就是使用一个第三方的服务商，使用它们的配套sdk（直播神马的 辣鸡。。。） 
最复杂的便是全都自己写（在这个开源时代，说说就好了。。。） 
由于我在的厂有点奇葩····（自己搭了推流服务器~~好吧，老大你赢了！） 
所以我选择这么做：推流我选择用的是百度的推流sdk（免费，文档详细···）拉]]></description><category></category></item><item><title><![CDATA[View绘制流程浅析，我所理解的View绘制。]]></title><link>https://blog.youkuaiyun.com/SilentWeek/article/details/53467002</link><guid>https://blog.youkuaiyun.com/SilentWeek/article/details/53467002</guid><author>SilentWeek</author><pubDate>Mon, 05 Dec 2016 16:56:58 +0800</pubDate><description><![CDATA[有过自定义控件经历的朋友都知道，自定义View的时候所经历的三个方法 onMeasure()、onLayout()、onDraw()， 分别对应 测量（要在多大的地方绘制）、布局（确定位置）、绘制（具体绘制的内容） ； 
这个和现实生活中作画是完全能对应上的。这里先来张过程图： 
 
图片出处 
一个前辈的blog，如果觉得这篇文章分析太浅可以去看看。这里我弄了个自己理解的草图：这里省略了很多步骤，]]></description><category></category></item><item><title><![CDATA[我的Android开发与学习姿势]]></title><link>https://blog.youkuaiyun.com/SilentWeek/article/details/53363610</link><guid>https://blog.youkuaiyun.com/SilentWeek/article/details/53363610</guid><author>SilentWeek</author><pubDate>Sun, 27 Nov 2016 11:36:54 +0800</pubDate><description><![CDATA[如题，以下是个人开发方式：我是如何寻找开源项目的泡在网上的日子 
github 
百度 
Google注意：Google 是需要翻墙的。先说泡网，这个网站如果进去看过就知道，在里面找到一款跟自己界面效果差不多的控件简直不要太快，无论是搜索还是索引，做的都是非常方便，最主要的是，只要基本上都附上了动态图，这寻找起来简直不要太爽，而且一直都有人在上面更新内容。github大家都不陌生了，如果我在泡网上没]]></description><category></category></item><item><title><![CDATA[Android 得到FragmentTabhost 某一个Tab的View]]></title><link>https://blog.youkuaiyun.com/SilentWeek/article/details/53118718</link><guid>https://blog.youkuaiyun.com/SilentWeek/article/details/53118718</guid><author>SilentWeek</author><pubDate>Thu, 10 Nov 2016 18:26:06 +0800</pubDate><description><![CDATA[项目使用FragmentTabhost做的主界面，要给每一个单独的Tab设置数字提醒 理所当然的想到是否有mFragmentTabhost.getTab(tag); 这种直接返回一个View 的方法，再去find到指定的控件设置值，发现并有没提供类型的方法，没办法只能来点其他的歪招了 ~先上官方的使用方式：mTabHost = new FragmentTabHost(getActivity());]]></description><category></category></item><item><title><![CDATA[Android 设置透明状态栏后，EditText被软键盘挡住问题]]></title><link>https://blog.youkuaiyun.com/SilentWeek/article/details/53118492</link><guid>https://blog.youkuaiyun.com/SilentWeek/article/details/53118492</guid><author>SilentWeek</author><pubDate>Thu, 10 Nov 2016 18:03:38 +0800</pubDate><description><![CDATA[软键盘没弹出时：软件盘弹出时：最终实现的效果：解决思路很简单，得到软件盘高度，再给需要“悬浮”在软键盘上面的布局给个margin_buttom就好了private void resetSendMsgRl(){        final View decorView=getWindow().getDe]]></description><category></category></item></channel></rss>