<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[eddya的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/eddya</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; eddya]]></copyright><item><title><![CDATA[Android 7.0 FileProvider 使用说明]]></title><link>https://blog.youkuaiyun.com/eddya/article/details/114024519</link><guid>https://blog.youkuaiyun.com/eddya/article/details/114024519</guid><author>eddya</author><pubDate>Wed, 24 Feb 2021 15:46:04 +0800</pubDate><description><![CDATA[FileProvider
FileProvider 这个组件在Android 22.0.0 (也就是 Android 5.0 ) 版本下加入进Android系统,该组件是ContentProvider的子类,功能就是用来提供文件在跨进程间的访问能力。大家千万不要觉得是Android 7.0 才加入进来的。
为什么Android 7.0 文件共享要使用FileProvider
这个原因是因为，Android 7.0 版本以后，对于StrictMode的审查又严格了一步，就如在Android 3.0以后加入的N]]></description><category></category></item><item><title><![CDATA[Android P 限制了明文流量的网络请求（not permitted by network security policy）解决方法]]></title><link>https://blog.youkuaiyun.com/eddya/article/details/113992355</link><guid>https://blog.youkuaiyun.com/eddya/article/details/113992355</guid><author>eddya</author><pubDate>Tue, 23 Feb 2021 15:43:38 +0800</pubDate><description><![CDATA[问题： 由于 Android P 限制了明文流量的网络请求，非加密的流量请求都会被系统禁止掉。
如果当前应用的请求是 htttp 请求，而非 https ,这样就会导系统禁止当前应用进行该请求，如果 WebView 的 url 用 http 协议，同样会出现加载失败，https 不受影响。
为此，OkHttp3 做了检查，所以如果使用了明文流量，默认情况下，在 Android P 版本 OkHttp3 就抛出异常: CLEARTEXT communication to " + host + " not pe]]></description><category></category></item><item><title><![CDATA[创建文件失败]]></title><link>https://blog.youkuaiyun.com/eddya/article/details/113992159</link><guid>https://blog.youkuaiyun.com/eddya/article/details/113992159</guid><author>eddya</author><pubDate>Tue, 23 Feb 2021 15:40:09 +0800</pubDate><description><![CDATA[Android 10 改变了文件的存储方式不允许应用随意创建文件夹了，要用安卓提供的文件夹。
Android 10提供了一些文件夹：
例如：Context.getExternalFilesDir（Environment.DIRECTORY_DOCUMENTS），这个路径是在SD卡的Android目录下的data目录下的自己应用包下的files目录下的 Environment.XXX，Environment.XXX代表的意思如下图
解决办法：
1.就用上述安卓提供的方法。
2.把targetSdkVersio]]></description><category></category></item><item><title><![CDATA[mqtt在connectionLost和connectComplete不断切换]]></title><link>https://blog.youkuaiyun.com/eddya/article/details/113248916</link><guid>https://blog.youkuaiyun.com/eddya/article/details/113248916</guid><author>eddya</author><pubDate>Wed, 27 Jan 2021 14:53:33 +0800</pubDate><description><![CDATA[mqtt在connectionLost和connectComplete不断切换
是之前连接了mqtt,虽然是执行disconnect了，但再次人为主动重新连接的话就会出现在connectionLost和connectComplete不断切换 。
原因是clientId未变更，建议把clientId设置成带System.currentTimeMillis()的内容，问题解决。

...]]></description><category></category></item><item><title><![CDATA[Kotlin Coroutine]]></title><link>https://blog.youkuaiyun.com/eddya/article/details/108994251</link><guid>https://blog.youkuaiyun.com/eddya/article/details/108994251</guid><author>eddya</author><pubDate>Sat, 10 Oct 2020 11:51:39 +0800</pubDate><description><![CDATA[今天我们来聊聊Kotlin Coroutine，如果你还没有了解过，那么我要提前恭喜你，因为你将掌握一个新技能，对你的代码方面的提升将是很好的助力。
What Coroutine
简单的来说，Coroutine是一个并发的设计模式，你能通过它使用更简洁的代码来解决异步问题。
例如，在Android方面它主要能够帮助你解决以下两个问题：
在主线程中执行耗时任务导致的主线程阻塞，从而使App发生ANR。
提供主线程安全，同时对来自于主线程的网络回调、磁盘操提供保障。
这些问题，在接下来的文章中我都会给出解决的示]]></description><category></category></item><item><title><![CDATA[androidApp接入友盟运行数据统计]]></title><link>https://blog.youkuaiyun.com/eddya/article/details/104899998</link><guid>https://blog.youkuaiyun.com/eddya/article/details/104899998</guid><author>eddya</author><pubDate>Wed, 18 Mar 2020 15:02:43 +0800</pubDate><description><![CDATA[进入友盟注册Key:[https://workbench.umeng.com/home](https://workbench.umeng.com/home)
在项目build.gradle下增加：mavenCentral()
repositories {
        maven {
            url 'http://maven.aliyun.com/nexus/content/g...]]></description><category></category></item><item><title><![CDATA[LeakCanary检测内存泄漏]]></title><link>https://blog.youkuaiyun.com/eddya/article/details/104891617</link><guid>https://blog.youkuaiyun.com/eddya/article/details/104891617</guid><author>eddya</author><pubDate>Mon, 16 Mar 2020 09:24:55 +0800</pubDate><description><![CDATA[在build.gradle下添加依赖：
dependencies {
    debugImplementation 'com.squareup.leakcanary:leakcanary-android:1.6.2'
    releaseImplementation 'com.squareup.leakcanary:leakcanary-android-no-op:1.6.2'
    // ...]]></description><category></category></item><item><title><![CDATA[Bugly热更新接入]]></title><link>https://blog.youkuaiyun.com/eddya/article/details/104753037</link><guid>https://blog.youkuaiyun.com/eddya/article/details/104753037</guid><author>eddya</author><pubDate>Mon, 09 Mar 2020 20:18:20 +0800</pubDate><description><![CDATA[官方文档:
https://bugly.qq.com/docs/user-guide/instruction-manual-android-hotfix/?v=20200114181137#enableproxyapplication-false
首先，新增产品：

接下来的步骤参考：Bugly Android热更新使用指南
AndroidStudio
第一步：添加插件依赖
工程根目录下“buil...]]></description><category></category></item><item><title><![CDATA[JNI生成so文件]]></title><link>https://blog.youkuaiyun.com/eddya/article/details/104683977</link><guid>https://blog.youkuaiyun.com/eddya/article/details/104683977</guid><author>eddya</author><pubDate>Thu, 05 Mar 2020 21:07:39 +0800</pubDate><description><![CDATA[参考：https://blog.youkuaiyun.com/LJyLy525/article/details/84305328
其他配置：
编译完文件后，在build–&gt;intermediates–&gt;ndk目录下面找到Android.mk文件，copy到jni目录下；
androidStuido Terminal命令行进入到"main"层级目录下执行ndk-build 会生成你想要的so文件。
...]]></description><category></category></item><item><title><![CDATA[Android：关于ContentProvider的知识]]></title><link>https://blog.youkuaiyun.com/eddya/article/details/100535356</link><guid>https://blog.youkuaiyun.com/eddya/article/details/100535356</guid><author>eddya</author><pubDate>Wed, 04 Sep 2019 11:18:41 +0800</pubDate><description><![CDATA[前言
ContentProvider属于 Android的四大组件之一
本文全面解析了 ContentProvider ，包括ContentProvider 原理、使用方法 &amp; 实例讲解，希望你们会喜欢。
目录
示意图

定义

即 内容提供者，是 Android 四大组件之一

作用

进程间 进行数据交互 &amp; 共享，即跨进程通信
示意图
3. 原理
ContentProvide...]]></description><category></category></item><item><title><![CDATA[Android程序安装完出现了两个图标]]></title><link>https://blog.youkuaiyun.com/eddya/article/details/100145311</link><guid>https://blog.youkuaiyun.com/eddya/article/details/100145311</guid><author>eddya</author><pubDate>Thu, 29 Aug 2019 19:47:51 +0800</pubDate><description><![CDATA[程序安装完出现了两个AP图标，AndroidManifest.xml中一定是有两个

1
2
3
解决办法：
去掉次要activity中的这一行， 次要的（不是程序运行的第一个activity）的，程序运行的第一个activity里面的这句要保留.
但是如果app有依赖，那么依赖里的launcher也要去掉
————————————————
版权声明：本文为优快云博主「Raphaelkxy」的原...]]></description><category></category></item><item><title><![CDATA[https://blog.youkuaiyun.com/qq_35373333/article/details/74909811]]></title><link>https://blog.youkuaiyun.com/eddya/article/details/99980414</link><guid>https://blog.youkuaiyun.com/eddya/article/details/99980414</guid><author>eddya</author><pubDate>Wed, 21 Aug 2019 17:45:14 +0800</pubDate><description><![CDATA[Android中的内存泄漏：
先说一下为什么会出现内存泄漏：
Android程序开发中，如果一个对象已经不需要被使用了，本该被回收时，而这时另一个对象还在持有对该对象的引用，这样就会导致无法被GC回收，就会出现内存泄漏的情况。
内存泄漏时Android程序中出现OOM问题的主要原因之一。所以我们在编写代码时，一定要细心处理好这一类的问题。
下面说一下Android开发中最常见的5个内存泄漏问题：
...]]></description><category></category></item><item><title><![CDATA[【android】getCacheDir()、getFilesDir()、getExternalFilesDir()、getExternalCacheDir()的作用]]></title><link>https://blog.youkuaiyun.com/eddya/article/details/99650112</link><guid>https://blog.youkuaiyun.com/eddya/article/details/99650112</guid><author>eddya</author><pubDate>Thu, 15 Aug 2019 18:49:51 +0800</pubDate><description><![CDATA[https://blog.youkuaiyun.com/u011494050/article/details/39671159

]]></description><category></category></item></channel></rss>