<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[rrkdddd33的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/rrkdddd33</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; rrkdddd33]]></copyright><item><title><![CDATA[通过MediaRecorder 录制视频的时候，魅族手机录制视频后，大小显示0]]></title><link>https://blog.youkuaiyun.com/rrkdddd33/article/details/90515373</link><guid>https://blog.youkuaiyun.com/rrkdddd33/article/details/90515373</guid><author>rrkdddd33</author><pubDate>Fri, 24 May 2019 14:11:25 +0800</pubDate><description><![CDATA[解决方法：在设置Camera参数的时候，针对魅族手机做特殊处理：
List&lt;Camera.Size&gt; pictureSizes = filterSizes(parameters.getSupportedPictureSizes(), width, height);
List&lt;Camera.Size&gt; previewSizes;
if (PhoneUtil.isMeizuF...]]></description><category></category></item><item><title><![CDATA[RecyclerView 中动态调整imageview 大小，用Glide加载图片，滑动过程中图片内容变大]]></title><link>https://blog.youkuaiyun.com/rrkdddd33/article/details/90479094</link><guid>https://blog.youkuaiyun.com/rrkdddd33/article/details/90479094</guid><author>rrkdddd33</author><pubDate>Thu, 23 May 2019 13:50:26 +0800</pubDate><description><![CDATA[问题：RecyclerView 中动态调整设置imageview 的LayoutParams

，用Glide加载圆角图片，滑动过程中图片内容变大且圆角消失

原方法：


Glide.with(MyApplication.getInstance())
        .load(photoUrl)
        .asBitmap()
        .priority(priority)
...]]></description><category></category></item><item><title><![CDATA[华为手机部分手机，切换页面后 改变虚拟键的显示或隐藏， 返回后导致上一个页面重走生命周期]]></title><link>https://blog.youkuaiyun.com/rrkdddd33/article/details/87874561</link><guid>https://blog.youkuaiyun.com/rrkdddd33/article/details/87874561</guid><author>rrkdddd33</author><pubDate>Fri, 22 Feb 2019 11:18:40 +0800</pubDate><description><![CDATA[      项目在华为荣耀8，android8上出现一个bug,程序进入activity A,然后跳转到activityB,  在activityB 改变虚拟键显示或隐藏(同上个页面不同)，返回activity A  ,activity A 崩溃，查看原因是 activity A 页面重建了，重走了一次生命周期，导致页面某些变量空指针。

    androidManifest 中 activit...]]></description><category></category></item><item><title><![CDATA[Android 查看自己的keystore的别名及相关信息]]></title><link>https://blog.youkuaiyun.com/rrkdddd33/article/details/80067589</link><guid>https://blog.youkuaiyun.com/rrkdddd33/article/details/80067589</guid><author>rrkdddd33</author><pubDate>Tue, 24 Apr 2018 17:20:06 +0800</pubDate><description><![CDATA[.在DOS窗口下进入自己的keystore所在位置，输入    keytool -list  -v -keystore xxxx.keystore -storepass 密码]]></description><category></category></item><item><title><![CDATA[You have not concluded your merge (MERGE_HEAD exists) git拉取失败]]></title><link>https://blog.youkuaiyun.com/rrkdddd33/article/details/79730243</link><guid>https://blog.youkuaiyun.com/rrkdddd33/article/details/79730243</guid><author>rrkdddd33</author><pubDate>Wed, 28 Mar 2018 16:53:35 +0800</pubDate><description><![CDATA[git merge --abortgit reset --merge合并后记得一定要提交这个本地的合并git pull]]></description><category></category></item><item><title><![CDATA[打包问题集锦]]></title><link>https://blog.youkuaiyun.com/rrkdddd33/article/details/79257514</link><guid>https://blog.youkuaiyun.com/rrkdddd33/article/details/79257514</guid><author>rrkdddd33</author><pubDate>Mon, 05 Feb 2018 10:40:17 +0800</pubDate><description><![CDATA[1 
解决方案
 




2 volley  bintray.gradle  
publish = project.has("release")


  Error:Gradle DSL method not found: 'has()'

解决方案publish = project.hasProperty("release")]]></description><category></category></item><item><title><![CDATA[Failed to resolve: com.android.support:appcompat-v7:27.0.1问题解决]]></title><link>https://blog.youkuaiyun.com/rrkdddd33/article/details/79236367</link><guid>https://blog.youkuaiyun.com/rrkdddd33/article/details/79236367</guid><author>rrkdddd33</author><pubDate>Fri, 02 Feb 2018 10:58:53 +0800</pubDate><description><![CDATA[今天，在毫无征兆的情况下AndroidStudio又抽风了，搞了大半天，试了网上众多方案，终于解决了这个问题。咱们一步一步来

第一步：这是最开始的bug 
Error:Failed to resolve: com.android.support:support-annotations:27.0.1 
Install Repository and sync project
Open Fi]]></description><category></category></item><item><title><![CDATA[App研发录读后总结（二）]]></title><link>https://blog.youkuaiyun.com/rrkdddd33/article/details/79072443</link><guid>https://blog.youkuaiyun.com/rrkdddd33/article/details/79072443</guid><author>rrkdddd33</author><pubDate>Tue, 16 Jan 2018 11:05:04 +0800</pubDate><description><![CDATA[App开发中高级技巧

2.1  crash 异常收集与统计，作者在书中介绍了如何收集crash 到数据库，如何对大量crash信息进行去重，如何生成crash报表，如何将crash 自动分配给开发人员提供一整套解决方案。
2.2 作者花了大量时间，列举出100多个crash实例，且分析出出现原因，并给出解决方案，而且这些crash也多是项目中可能出现的，有了这些crash信息库，可以帮助我]]></description><category></category></item><item><title><![CDATA[App研发录读后总结（一）]]></title><link>https://blog.youkuaiyun.com/rrkdddd33/article/details/79072416</link><guid>https://blog.youkuaiyun.com/rrkdddd33/article/details/79072416</guid><author>rrkdddd33</author><pubDate>Tue, 16 Jan 2018 11:03:33 +0800</pubDate><description><![CDATA[通过一段时间的学习，阅读完了《App研发录》，此书同之前阅读的其他书，如 xx入门，xx提高不同，不是针对具体知识点、api的讲解，而是作者多年的工作经验及工作之中遇到的问题进行汇总分享，特别是第二部分crash异常收集、分析处理，作者花了大篇幅对项目中遇到的crash问题进行分析、归类，重现，有这样一个异常库，对快速定位原因解决bug是很有帮助的。接下来就阐述一下本人的一些学习心得。
   （]]></description><category></category></item><item><title><![CDATA[app研发录 读后总结（三）]]></title><link>https://blog.youkuaiyun.com/rrkdddd33/article/details/79060464</link><guid>https://blog.youkuaiyun.com/rrkdddd33/article/details/79060464</guid><author>rrkdddd33</author><pubDate>Mon, 15 Jan 2018 00:49:59 +0800</pubDate><description><![CDATA[第三部分 主要讲述了 项目进度的控制，日常工作中的问题解决、无线团队的组建与管理。
3.1 团队结构是平行模式好，还是垂直模式好
       垂直模式就是按照模块，拆分出若干小的团队，每个团队有自己的android、ios、api、测试组成，这种模式的好处是沟通效率比较高，app开发人员发现接口有问题，可以直接坐到api开发人员旁边进行联调，测试人发现前端bug,可以从app一路查到接口ap]]></description><category></category></item><item><title><![CDATA[获取 手机真实高度]]></title><link>https://blog.youkuaiyun.com/rrkdddd33/article/details/79036780</link><guid>https://blog.youkuaiyun.com/rrkdddd33/article/details/79036780</guid><author>rrkdddd33</author><pubDate>Thu, 11 Jan 2018 17:38:00 +0800</pubDate><description><![CDATA[在Android应用开发过程中我们会经常遇到需要通过获取屏幕尺寸来设置某些控件的大小、显示不同尺寸图片等需求。而我们通常会想到并使用的方法是：



[java] view
 plain copy






DisplayMetrics displayMetrics = new DisplayMetrics();  
display.getMetrics(display]]></description><category></category></item><item><title><![CDATA[webView 夜间模式]]></title><link>https://blog.youkuaiyun.com/rrkdddd33/article/details/78958483</link><guid>https://blog.youkuaiyun.com/rrkdddd33/article/details/78958483</guid><author>rrkdddd33</author><pubDate>Wed, 03 Jan 2018 10:24:37 +0800</pubDate><description><![CDATA[在WebViewClient    onPageFinished  中添加





[java] view
 plain copy






if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.KITKAT) {  
                     mWebView]]></description><category></category></item><item><title><![CDATA[AppCompat 夜间模式中旋转屏幕重启Activiy]]></title><link>https://blog.youkuaiyun.com/rrkdddd33/article/details/78951365</link><guid>https://blog.youkuaiyun.com/rrkdddd33/article/details/78951365</guid><author>rrkdddd33</author><pubDate>Tue, 02 Jan 2018 14:07:24 +0800</pubDate><description><![CDATA[最近一个项目中有夜间模式，使用了AppCompat23.2提高的DayNight theme实现，代码如下： /**
     * 切换日间夜间模式
     */
    public void switchDayNightMode() {
        if (SettingUtil.getNightMode(this)) {
            getDelegate().setLoc]]></description><category></category></item><item><title><![CDATA[设置webview 颜色 去除默认的白色]]></title><link>https://blog.youkuaiyun.com/rrkdddd33/article/details/78931505</link><guid>https://blog.youkuaiyun.com/rrkdddd33/article/details/78931505</guid><author>rrkdddd33</author><pubDate>Fri, 29 Dec 2017 14:45:10 +0800</pubDate><description><![CDATA[在布局文件中的webview设置background（这个一定要设置）。然后在java代码中添加如下代码：


wv.setBackgroundColor(0);//设置背景色
wv.getBackground().setAlpha(0);//设置填充透明度（布局中一定要设置background，不然getbackground会是null）]]></description><category></category></item><item><title><![CDATA[新手引导之控件高亮显示]]></title><link>https://blog.youkuaiyun.com/rrkdddd33/article/details/78827754</link><guid>https://blog.youkuaiyun.com/rrkdddd33/article/details/78827754</guid><author>rrkdddd33</author><pubDate>Sun, 17 Dec 2017 20:45:26 +0800</pubDate><description><![CDATA[最近项目需要做一个新手引导的功能， 即某个功能控件高亮，其他部分覆以蒙版效果，如下图所示：
实现步骤如下：
自定义view  重写onDraw(Canvas
 canvas)
          

            1 绘制一个屏幕大小的遮罩层
            
bitmap = Bitmap.createBitmap(canvas.getWidth(), canv]]></description><category></category></item><item><title><![CDATA[查看混淆后的日志]]></title><link>https://blog.youkuaiyun.com/rrkdddd33/article/details/78783324</link><guid>https://blog.youkuaiyun.com/rrkdddd33/article/details/78783324</guid><author>rrkdddd33</author><pubDate>Tue, 12 Dec 2017 16:33:50 +0800</pubDate><description><![CDATA[APP混淆已经是APP发布时的标配技术了，但是我们又需要回去用户使用APP时的崩溃日志，这个时候，看到的日志确是被混淆了，想a.b.c.c()！是不是要狂了呢？。所以，Google当然会为我们考虑到这种情况。下面对具体的使用进行说明。

代码混淆生成apk之后，项目下面会多出来一个build\outputs\mapping\release文件夹，下面分别解释release文件夹中四个文件的作用]]></description><category></category></item><item><title><![CDATA[抓包工具Charles乱码解决办法]]></title><link>https://blog.youkuaiyun.com/rrkdddd33/article/details/78206506</link><guid>https://blog.youkuaiyun.com/rrkdddd33/article/details/78206506</guid><author>rrkdddd33</author><pubDate>Wed, 11 Oct 2017 17:53:22 +0800</pubDate><description><![CDATA[今天就来学习使用下 Mac 下截取网络封包的工具：Charles。

我想，如果你是个善于利用搜索引擎的人，那么在 Google 中输入「Charles 使用」等相应的关键字，便会出现一大把文章。
不过呢，之所以会有这篇文章，就是因为今天在安装和初步使用的过程中，遇到了些问题，而目前搜索出来的绝大数文章并没有提及（或者解决办法已经过时）。所以，我在此记录下来，希望能帮助到通过搜索找到这的朋友]]></description><category></category></item><item><title><![CDATA[Android Studio生成签名文件,自动签名,以及获取SHA1和MD5值]]></title><link>https://blog.youkuaiyun.com/rrkdddd33/article/details/77866590</link><guid>https://blog.youkuaiyun.com/rrkdddd33/article/details/77866590</guid><author>rrkdddd33</author><pubDate>Wed, 06 Sep 2017 15:04:03 +0800</pubDate><description><![CDATA[前言：

作为谷歌在2013年为开发者提供的IDE环境工具Android Studio，从几次更新之后android Studio已经成为了非常强大的IDE开发环境。谷歌也宣布Android
 Studio将取代Eclipse 。而使用as进行开发，已经倍受移动开发者的喜爱。废话我们这里就不再多说，不用不知道，谁用吓一跳。本文主要讲到是开发过程中经常需要用到的。如何使用as生成签名文件，配置]]></description><category></category></item><item><title><![CDATA[Android 跳转手机管家的自启动界面]]></title><link>https://blog.youkuaiyun.com/rrkdddd33/article/details/77749802</link><guid>https://blog.youkuaiyun.com/rrkdddd33/article/details/77749802</guid><author>rrkdddd33</author><pubDate>Thu, 31 Aug 2017 17:06:29 +0800</pubDate><description><![CDATA[在开发中遇到这样一个问题,当我们写了开机自启后发现有的手机并不能很顺利的自启动,因为手机管家有最高权限,有个自启动管理,想直接调到这个页面把自己的app的自启动打开就可以,还有oppo,vivo,加入白名单,查了好多资料发现没有直接跳入自启动的界面的Intent, 我想到了可以通过手机的包名类名可以直接跳转,但是手机型号这么多,我怎么知道每个管家的包名类名是个啥,查资料发现  通过这个adb sh]]></description><category></category></item><item><title><![CDATA[android 第一次安装 home]]></title><link>https://blog.youkuaiyun.com/rrkdddd33/article/details/76984731</link><guid>https://blog.youkuaiyun.com/rrkdddd33/article/details/76984731</guid><author>rrkdddd33</author><pubDate>Wed, 09 Aug 2017 14:10:44 +0800</pubDate><description><![CDATA[首次安装，出现“打开”按钮，我们点击打开按钮启动应用进主界面，我们再按之前的操作，按home键返回桌面，然后点击应用图标进入就会发现会重启应用，并且退出的时候退出两次才会回到桌面，那么我们来分析一下这是为什么呢？


     首先我们要知道，一个task并不是对应一个线程，实际上一个task可以包含多个进程， 一个Task中可能有多个同一个Activity的实例，然后这时候第一次的情况下，]]></description><category></category></item></channel></rss>