<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[ShuttleCheng的博客]]></title><description><![CDATA[]]></description><link>https://blog.csdn.net/ShuttleCheng</link><language>zh-cn</language><generator>https://blog.csdn.net/</generator><copyright><![CDATA[Copyright &copy; ShuttleCheng]]></copyright><item><title><![CDATA[Android 8.0 OTA 分析——recovery]]></title><link>https://blog.csdn.net/ShuttleCheng/article/details/79310018</link><guid>https://blog.csdn.net/ShuttleCheng/article/details/79310018</guid><author>ShuttleCheng</author><pubDate>Tue, 13 Feb 2018 10:56:22 +0800</pubDate><description><![CDATA[这里是OTA分析的第一部分，先从recovery部分说起 
  如果有分析不到位的地方请指出，共同学习进步]]></description><category></category></item><item><title><![CDATA[Android 8.0 recovery 流程分析]]></title><link>https://blog.csdn.net/ShuttleCheng/article/details/79186756</link><guid>https://blog.csdn.net/ShuttleCheng/article/details/79186756</guid><author>ShuttleCheng</author><pubDate>Sun, 28 Jan 2018 15:53:09 +0800</pubDate><description><![CDATA[这里主要分析non A/B模式下的recovery流程 
  A/B模式下的recovery在boot中 
  后续会不断补充，如果有疏漏或者错误的地方，请指出，共同学习，谢谢！
流程分析首先列出recovery流程的几个重要点，接着会详细分析
加载recovery.fstab分区表
解析传入的参数
recovery界面相关的设置
执行命令
如果没有命令，等待用户输入
结束recovery]]></description><category></category></item><item><title><![CDATA[Android 8.0 安装应用流程]]></title><link>https://blog.csdn.net/ShuttleCheng/article/details/79031553</link><guid>https://blog.csdn.net/ShuttleCheng/article/details/79031553</guid><author>ShuttleCheng</author><pubDate>Thu, 11 Jan 2018 10:52:02 +0800</pubDate><description><![CDATA[这里是通过adb命令安装应用的流程 
  先贴出流程图，这个流程图已经很清晰了 ，有空把详细过程也贴上 
  如果发现有疏漏的地方请指出，感谢！]]></description><category></category></item><item><title><![CDATA[Android 8.0 dexopt记录]]></title><link>https://blog.csdn.net/ShuttleCheng/article/details/79018014</link><guid>https://blog.csdn.net/ShuttleCheng/article/details/79018014</guid><author>ShuttleCheng</author><pubDate>Tue, 09 Jan 2018 21:59:33 +0800</pubDate><description><![CDATA[这里先初步看一下做odex优化的几个地方，以后再补充详细过程]]></description><category></category></item><item><title><![CDATA[Android 8.0 PKMS新变化之提取ABI]]></title><link>https://blog.csdn.net/ShuttleCheng/article/details/79017936</link><guid>https://blog.csdn.net/ShuttleCheng/article/details/79017936</guid><author>ShuttleCheng</author><pubDate>Tue, 09 Jan 2018 21:53:57 +0800</pubDate><description><![CDATA[关于ABI的知识可以网上搜一下在8.0之前，因为每次开机都要扫描APK，所以每次都要判断并设置ABI，这个过程比较花费时间，如果手机安装大量APK，势必会造成开机时间过慢]]></description><category></category></item><item><title><![CDATA[Android 8.0 PKMS新变化之多线程扫描APK]]></title><link>https://blog.csdn.net/ShuttleCheng/article/details/78942580</link><guid>https://blog.csdn.net/ShuttleCheng/article/details/78942580</guid><author>ShuttleCheng</author><pubDate>Sun, 31 Dec 2017 17:53:33 +0800</pubDate><description><![CDATA[这里主要针对Android 8.0 在PKMS这块的新变化进行分析，会不断更新 
  如果发现有错误或者不到位的地方，请指出，谢谢！


1.多线程扫描APK

回忆一下在Android 7.0是如何扫描APK的：



private PackageParser.Package scanPackageLI(File scanFile, int parseFlags, int scanFlags,]]></description><category></category></item><item><title><![CDATA[Binder 分析之Java层]]></title><link>https://blog.csdn.net/ShuttleCheng/article/details/78915849</link><guid>https://blog.csdn.net/ShuttleCheng/article/details/78915849</guid><author>ShuttleCheng</author><pubDate>Wed, 27 Dec 2017 20:01:04 +0800</pubDate><description><![CDATA[博客内容基于Android 8.0  
  因此，在分析AMS的时候和网上不一样，现在的客户端使用AMS的方法通过AIDL的方式，具体可以参考IActivityManager.aidl
Java 层的Binder 必然和Native 层的Binder有关，在分析流程的时候要时刻回忆着Native中的相关流程，这样才能更加通透的理解一、Java层Binder的初始化java层的Binder只是nati]]></description><category></category></item><item><title><![CDATA[Android 线程同步之AutoMutex]]></title><link>https://blog.csdn.net/ShuttleCheng/article/details/78901918</link><guid>https://blog.csdn.net/ShuttleCheng/article/details/78901918</guid><author>ShuttleCheng</author><pubDate>Tue, 26 Dec 2017 14:28:28 +0800</pubDate><description><![CDATA[在阅读Binder源码的时候发现有经常有AutoMutex _l(mProxyLock) 
这是起线程同步的作用，现在分析一下是如何实现的 
首先看一下AutoMutex的定义，搜索如下： 
[Mutex.h] 
typedef Mutex::Autolock AutoMutex;，再看一下Autolock，也定义在在Mutex.h中class Autolock {
public:
    inli]]></description><category></category></item><item><title><![CDATA[通过Binder实现 Native Service]]></title><link>https://blog.csdn.net/ShuttleCheng/article/details/78890457</link><guid>https://blog.csdn.net/ShuttleCheng/article/details/78890457</guid><author>ShuttleCheng</author><pubDate>Mon, 25 Dec 2017 11:04:22 +0800</pubDate><description><![CDATA[这次从理论联系实际，参考MediaPlayerService来实现自己需要的Service一、理论分析从之前分析MediaPlayerService的结果可以得到如下结果： 
从图中可以看出，我们需要自己实现：
IXXXService
BpXXXService
BnXXXService
XXXService]]></description><category></category></item><item><title><![CDATA[Android OTA 脚本流程]]></title><link>https://blog.csdn.net/ShuttleCheng/article/details/78865781</link><guid>https://blog.csdn.net/ShuttleCheng/article/details/78865781</guid><author>ShuttleCheng</author><pubDate>Thu, 21 Dec 2017 17:23:35 +0800</pubDate><description><![CDATA[OTA的平台是高通
为了实现8937、8940共image的需求，因此详细看了这部分
这里主要跟踪升级高通mbn文件的流程]]></description><category></category></item></channel></rss>