<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[zhang_jun_xiang的博客]]></title><description><![CDATA[]]></description><link>https://blog.csdn.net/zhang_jun_xiang</link><language>zh-cn</language><generator>https://blog.csdn.net/</generator><copyright><![CDATA[Copyright &copy; zhang_jun_xiang]]></copyright><item><title><![CDATA[android12L super.img 解压缩及其挂载到ubuntu18.04]]></title><link>https://blog.csdn.net/zhang_jun_xiang/article/details/144284163</link><guid>https://blog.csdn.net/zhang_jun_xiang/article/details/144284163</guid><author>zhang_jun_xiang</author><pubDate>Fri, 06 Dec 2024 11:58:55 +0800</pubDate><description><![CDATA[本文介绍如何在Ubuntu18.04上解压缩高通平台Android12L的system.img，并将其挂载到系统中查看内容。]]></description><category></category></item><item><title><![CDATA[ubuntu14.04 下 使用update-alternatives 更换python 版本]]></title><link>https://blog.csdn.net/zhang_jun_xiang/article/details/100039359</link><guid>https://blog.csdn.net/zhang_jun_xiang/article/details/100039359</guid><author>zhang_jun_xiang</author><pubDate>Fri, 23 Aug 2019 15:31:20 +0800</pubDate><description><![CDATA[此文是转载，详情请点击。。。

]]></description><category></category></item><item><title><![CDATA[adb shell dumpsys activity activities调用信息分析]]></title><link>https://blog.csdn.net/zhang_jun_xiang/article/details/97002514</link><guid>https://blog.csdn.net/zhang_jun_xiang/article/details/97002514</guid><author>zhang_jun_xiang</author><pubDate>Tue, 23 Jul 2019 16:00:35 +0800</pubDate><description><![CDATA[在实际开发过程中，需要经常查看activity的调用栈信息，经常用到adb shell dumpsys activity activities这个命令，下面对这个命令做一下简要分析：
通过执行上面命令，可以得到类似如下格式的信息：
Stack #45: type=standard mode=fullscreen
isSleeping=false
mBounds=Rect(0, 0 - 0, 0)
...]]></description><category></category></item><item><title><![CDATA[Android P Activity启动流程]]></title><link>https://blog.csdn.net/zhang_jun_xiang/article/details/96836343</link><guid>https://blog.csdn.net/zhang_jun_xiang/article/details/96836343</guid><author>zhang_jun_xiang</author><pubDate>Mon, 22 Jul 2019 10:41:39 +0800</pubDate><description><![CDATA[就从 startActivity 开始梳理吧。
1.Activity::startActivity
public void startActivity(Intent intent) {
    this.startActivity(intent, null);
}

public void startActivity(Intent intent, @Nullable Bundle options)...]]></description><category></category></item><item><title><![CDATA[基于android P平台权限管理详解]]></title><link>https://blog.csdn.net/zhang_jun_xiang/article/details/92593097</link><guid>https://blog.csdn.net/zhang_jun_xiang/article/details/92593097</guid><author>zhang_jun_xiang</author><pubDate>Mon, 17 Jun 2019 11:56:35 +0800</pubDate><description><![CDATA[[TOC]

# 一　概述

Android 是一个权限分隔的操作系统，在安装应用时，Android 为每个软件包提供唯一的系统标识（Linux 用户 ID 和组 ID）。此 ID 在软件包在该设备上的使用寿命期间保持不变。系统各部分也分隔为不同的标识。Linux 据此将不同的应用以及应用与系统分隔开来。

在默认情况下任何应用都没有权限执行对其他应用、操作系统或用户有不利影响的任何操作。这包括读...]]></description><category></category></item><item><title><![CDATA[binder机制在java层的使用]]></title><link>https://blog.csdn.net/zhang_jun_xiang/article/details/90638643</link><guid>https://blog.csdn.net/zhang_jun_xiang/article/details/90638643</guid><author>zhang_jun_xiang</author><pubDate>Tue, 28 May 2019 14:23:46 +0800</pubDate><description><![CDATA[java层binder架构实际上也是基于c/s架构的，而且其在类的命名上也尽量与native层保持一致，因此可认为java层的binder架构是native层binder架构的一个镜像。
## 1 java层的binder架构成员分析 ##
-系统定义了一个ibinder接口类及deathrecipient接口
-binder类和binderproxy实现了ibinder接口类。其中binde...]]></description><category></category></item><item><title><![CDATA[Binder机制在Native层的使用]]></title><link>https://blog.csdn.net/zhang_jun_xiang/article/details/90638554</link><guid>https://blog.csdn.net/zhang_jun_xiang/article/details/90638554</guid><author>zhang_jun_xiang</author><pubDate>Tue, 28 May 2019 14:20:28 +0800</pubDate><description><![CDATA[本文通过一个具体的例子来说明Binder机制中Server的启动过程。我们知道，在Android系统中，提供了多媒体播放的功能，这个功能是以服务的形式来提供的。这里，我们就通过分析MediaPlayerService的实现来了解Media Server的启动过程。
## MediaServer全面解析 ##
首先，看看MediaPlayerService是如何启动的。启动MediaPlayerSe...]]></description><category></category></item><item><title><![CDATA[Ubuntu与WIndows桌面间切换]]></title><link>https://blog.csdn.net/zhang_jun_xiang/article/details/90070167</link><guid>https://blog.csdn.net/zhang_jun_xiang/article/details/90070167</guid><author>zhang_jun_xiang</author><pubDate>Fri, 10 May 2019 15:49:49 +0800</pubDate><description><![CDATA[天降神器——Synergy

0.Synergy真香！

家里人有台旧电脑，说是平日里用不着就给我拿去用了，我想平时需要在Windows和Ubuntu之间来回切换，甚是麻烦，就收下了。

这下可好，装完Ubuntu，又把开发环境配了一遍以后，问题来了：加个电脑又不像加个屏幕那么简单直白，难不成我要配两把键盘，两个鼠标才能工作？？？我不同意，绝对不行！

功夫不负有心人，还真让我找到了这一个天降神器...]]></description><category></category></item><item><title><![CDATA[基于Android P版本PKMS详解一]]></title><link>https://blog.csdn.net/zhang_jun_xiang/article/details/90035919</link><guid>https://blog.csdn.net/zhang_jun_xiang/article/details/90035919</guid><author>zhang_jun_xiang</author><pubDate>Thu, 09 May 2019 15:25:43 +0800</pubDate><description><![CDATA[[TOC]

# 一 修改记录

| 版本 | 修改日期  | 作者  | 修改内容 |
| :----| ----------| ----- | ------- |
| v1.0 | 2019.05.09 | 初版  |

# 二 概述

PackageManagerService　（简称 `PKMS`），是 Android 系统中核心服务之一，管理着所有跟 package 相关的工作...]]></description><category></category></item><item><title><![CDATA[基于Android P版本PKMS详解二]]></title><link>https://blog.csdn.net/zhang_jun_xiang/article/details/90035960</link><guid>https://blog.csdn.net/zhang_jun_xiang/article/details/90035960</guid><author>zhang_jun_xiang</author><pubDate>Thu, 09 May 2019 15:18:19 +0800</pubDate><description><![CDATA[由以上代码可知，`PKMS` 扫描了很多目录，下面列举几个重点说明：

✨ /system/framework ：该目录中的文件都是系统库，例如：framework.jar、services.jar、framework-res.apk 等。不过 scanDirTracedLI 只扫描 APK 文件，所以 framework-res.apk 是该目录中唯一被扫描的文件。

✨ /system/a...]]></description><category></category></item><item><title><![CDATA[Andrioid Framework中添加系统服务]]></title><link>https://blog.csdn.net/zhang_jun_xiang/article/details/78686900</link><guid>https://blog.csdn.net/zhang_jun_xiang/article/details/78686900</guid><author>zhang_jun_xiang</author><pubDate>Fri, 01 Dec 2017 15:08:08 +0800</pubDate><description><![CDATA[前言 
本文的方法要修改Android源码。我们自定义一个自己的服务，并将其添加到ServiceManager中。

步骤 
1. 添加一个aidl文件，我将aidl文件添加到这个路径下： 
frameworks/base/core/java/android/content/dyna/IDynaSystemManager.aidl
package android.content.dyn]]></description><category></category></item><item><title><![CDATA[Android N Launcher3到启动和加载流程]]></title><link>https://blog.csdn.net/zhang_jun_xiang/article/details/78631740</link><guid>https://blog.csdn.net/zhang_jun_xiang/article/details/78631740</guid><author>zhang_jun_xiang</author><pubDate>Sat, 25 Nov 2017 14:36:50 +0800</pubDate><description><![CDATA[点击打开链接]]></description><category></category></item><item><title><![CDATA[Android N JACK编译器不支持多用户同时编译的解决办法]]></title><link>https://blog.csdn.net/zhang_jun_xiang/article/details/78476678</link><guid>https://blog.csdn.net/zhang_jun_xiang/article/details/78476678</guid><author>zhang_jun_xiang</author><pubDate>Wed, 08 Nov 2017 11:25:52 +0800</pubDate><description><![CDATA[Android7.0（也就是Android N）上默认使用JACK编译器而不再使用openjdk了，但发现JACK不是很好用，比如最大的一个问题就是，同一台linux服务器上不允许不同用户同时进行andorid7.0的编译，原因就是后面开始编译的用户无法正常启动jack server，而jack server居然不能关闭，虽然JACK文档中有说提供一些宏，只要设置宏为对应的值就可以关闭，但实测发现]]></description><category></category></item><item><title><![CDATA[深入理解PackageManagerService]]></title><link>https://blog.csdn.net/zhang_jun_xiang/article/details/78275140</link><guid>https://blog.csdn.net/zhang_jun_xiang/article/details/78275140</guid><author>zhang_jun_xiang</author><pubDate>Wed, 18 Oct 2017 17:12:08 +0800</pubDate><description><![CDATA[点击打开链接]]></description><category></category></item><item><title><![CDATA[ANR问题分析]]></title><link>https://blog.csdn.net/zhang_jun_xiang/article/details/78262003</link><guid>https://blog.csdn.net/zhang_jun_xiang/article/details/78262003</guid><author>zhang_jun_xiang</author><pubDate>Tue, 17 Oct 2017 16:31:03 +0800</pubDate><description><![CDATA[点击打开链接]]></description><category></category></item><item><title><![CDATA[android电话状态的监听]]></title><link>https://blog.csdn.net/zhang_jun_xiang/article/details/52451947</link><guid>https://blog.csdn.net/zhang_jun_xiang/article/details/52451947</guid><author>zhang_jun_xiang</author><pubDate>Tue, 06 Sep 2016 17:29:13 +0800</pubDate><description><![CDATA[实现手机电话状态的监听，主要依靠两个类：TelephoneManger和PhoneStateListener。 
TelephonseManger提供了取得手机基本服务的信息的一种方式。因此应用程序可以使用TelephonyManager来探测手机基本服务的情况。应用程序可以注册listener来监听电话状态的改变。我们不能对TelephonyManager进行实例化，只能通过获取服务的形式：]]></description><category></category></item><item><title><![CDATA[长按电源键中增加重启和飞行模式选项及显示情景模式（静音、震动、响铃）]]></title><link>https://blog.csdn.net/zhang_jun_xiang/article/details/52277350</link><guid>https://blog.csdn.net/zhang_jun_xiang/article/details/52277350</guid><author>zhang_jun_xiang</author><pubDate>Mon, 22 Aug 2016 16:22:31 +0800</pubDate><description><![CDATA[1.frameworks/base/services/core/java/com/android/server/policy/GlobalActions.java
private final class PowerAction extends SinglePressAction implements LongPressAction {
.......
}
//add by zjx
pri]]></description><category></category></item><item><title><![CDATA[Android M版本彻底修改蓝牙wifi名称显示]]></title><link>https://blog.csdn.net/zhang_jun_xiang/article/details/52277124</link><guid>https://blog.csdn.net/zhang_jun_xiang/article/details/52277124</guid><author>zhang_jun_xiang</author><pubDate>Mon, 22 Aug 2016 15:22:17 +0800</pubDate><description><![CDATA[1.device/generic/common/bluetooth/bdroid_buildcfg.h
#define BTM_DEF_LOCAL_NAME   "MTN-S810"
2.device/mediatek/common/custom.conf
bluetooth.HostName = MTN-S810
wlan.SSID = MTN-S810
3.frameworks/op]]></description><category></category></item><item><title><![CDATA[Android电话拨打流程源码分析]]></title><link>https://blog.csdn.net/zhang_jun_xiang/article/details/52276982</link><guid>https://blog.csdn.net/zhang_jun_xiang/article/details/52276982</guid><author>zhang_jun_xiang</author><pubDate>Mon, 22 Aug 2016 15:03:25 +0800</pubDate><description><![CDATA[http://blog.csdn.net/kevinx_xu/article/details/11845619]]></description><category></category></item><item><title><![CDATA[android四大组件详解]]></title><link>https://blog.csdn.net/zhang_jun_xiang/article/details/52276958</link><guid>https://blog.csdn.net/zhang_jun_xiang/article/details/52276958</guid><author>zhang_jun_xiang</author><pubDate>Mon, 22 Aug 2016 15:01:46 +0800</pubDate><description><![CDATA[android四大组件分别为activity、service、content provider、broadcast
 receiver。

一、android四大组件详解

1、activity

（1）一个Activity通常就是一个单独的屏幕（窗口）。

（2）Activity之间通过Intent进行通信。

（3）android应用中每一个Activity都必须要在An]]></description><category></category></item></channel></rss>