- 博客(43)
- 收藏
- 关注
原创 基于android P平台权限管理详解
[TOC]# 一 概述Android 是一个权限分隔的操作系统,在安装应用时,Android 为每个软件包提供唯一的系统标识(Linux 用户 ID 和组 ID)。此 ID 在软件包在该设备上的使用寿命期间保持不变。系统各部分也分隔为不同的标识。Linux 据此将不同的应用以及应用与系统分隔开来。在默认情况下任何应用都没有权限执行对其他应用、操作系统或用户有不利影响的任何操作。这包括读...
2019-06-17 11:56:35 2467
原创 android12L super.img 解压缩及其挂载到ubuntu18.04
本文介绍如何在Ubuntu18.04上解压缩高通平台Android12L的system.img,并将其挂载到系统中查看内容。
2024-12-06 11:58:55 364
原创 adb shell dumpsys activity activities调用信息分析
在实际开发过程中,需要经常查看activity的调用栈信息,经常用到adb shell dumpsys activity activities这个命令,下面对这个命令做一下简要分析:通过执行上面命令,可以得到类似如下格式的信息:Stack #45: type=standard mode=fullscreenisSleeping=falsemBounds=Rect(0, 0 - 0, 0)...
2019-07-23 16:00:35 4770
原创 Android P Activity启动流程
就从 startActivity 开始梳理吧。1.Activity::startActivitypublic void startActivity(Intent intent) { this.startActivity(intent, null);}public void startActivity(Intent intent, @Nullable Bundle options)...
2019-07-22 10:41:39 586
原创 binder机制在java层的使用
java层binder架构实际上也是基于c/s架构的,而且其在类的命名上也尽量与native层保持一致,因此可认为java层的binder架构是native层binder架构的一个镜像。## 1 java层的binder架构成员分析 ##-系统定义了一个ibinder接口类及deathrecipient接口-binder类和binderproxy实现了ibinder接口类。其中binde...
2019-05-28 14:23:46 1626
原创 Binder机制在Native层的使用
本文通过一个具体的例子来说明Binder机制中Server的启动过程。我们知道,在Android系统中,提供了多媒体播放的功能,这个功能是以服务的形式来提供的。这里,我们就通过分析MediaPlayerService的实现来了解Media Server的启动过程。## MediaServer全面解析 ##首先,看看MediaPlayerService是如何启动的。启动MediaPlayerSe...
2019-05-28 14:20:28 641
原创 Ubuntu与WIndows桌面间切换
天降神器——Synergy0.Synergy真香!家里人有台旧电脑,说是平日里用不着就给我拿去用了,我想平时需要在Windows和Ubuntu之间来回切换,甚是麻烦,就收下了。这下可好,装完Ubuntu,又把开发环境配了一遍以后,问题来了:加个电脑又不像加个屏幕那么简单直白,难不成我要配两把键盘,两个鼠标才能工作???我不同意,绝对不行!功夫不负有心人,还真让我找到了这一个天降神器...
2019-05-10 15:49:49 6023
原创 基于Android P版本PKMS详解一
[TOC]# 一 修改记录| 版本 | 修改日期 | 作者 | 修改内容 || :----| ----------| ----- | ------- || v1.0 | 2019.05.09 | 初版 |# 二 概述PackageManagerService (简称 `PKMS`),是 Android 系统中核心服务之一,管理着所有跟 package 相关的工作...
2019-05-09 15:25:43 1698
原创 基于Android P版本PKMS详解二
由以上代码可知,`PKMS` 扫描了很多目录,下面列举几个重点说明:✨ /system/framework :该目录中的文件都是系统库,例如:framework.jar、services.jar、framework-res.apk 等。不过 scanDirTracedLI 只扫描 APK 文件,所以 framework-res.apk 是该目录中唯一被扫描的文件。✨ /system/a...
2019-05-09 15:18:19 1599
原创 Andrioid Framework中添加系统服务
前言 本文的方法要修改Android源码。我们自定义一个自己的服务,并将其添加到ServiceManager中。步骤 1. 添加一个aidl文件,我将aidl文件添加到这个路径下: frameworks/base/core/java/android/content/dyna/IDynaSystemManager.aidlpackage android.content.dyn
2017-12-01 15:08:08 357
原创 Android N JACK编译器不支持多用户同时编译的解决办法
Android7.0(也就是Android N)上默认使用JACK编译器而不再使用openjdk了,但发现JACK不是很好用,比如最大的一个问题就是,同一台linux服务器上不允许不同用户同时进行andorid7.0的编译,原因就是后面开始编译的用户无法正常启动jack server,而jack server居然不能关闭,虽然JACK文档中有说提供一些宏,只要设置宏为对应的值就可以关闭,但实测发现
2017-11-08 11:25:52 2098
原创 android电话状态的监听
实现手机电话状态的监听,主要依靠两个类:TelephoneManger和PhoneStateListener。 TelephonseManger提供了取得手机基本服务的信息的一种方式。因此应用程序可以使用TelephonyManager来探测手机基本服务的情况。应用程序可以注册listener来监听电话状态的改变。我们不能对TelephonyManager进行实例化,只能通过获取服务的形式:
2016-09-06 17:29:13 3788
原创 长按电源键中增加重启和飞行模式选项及显示情景模式(静音、震动、响铃)
1.frameworks/base/services/core/java/com/android/server/policy/GlobalActions.javaprivate final class PowerAction extends SinglePressAction implements LongPressAction {.......}//add by zjxpri
2016-08-22 16:22:31 1411
原创 Android M版本彻底修改蓝牙wifi名称显示
1.device/generic/common/bluetooth/bdroid_buildcfg.h#define BTM_DEF_LOCAL_NAME "MTN-S810"2.device/mediatek/common/custom.confbluetooth.HostName = MTN-S810wlan.SSID = MTN-S8103.frameworks/op
2016-08-22 15:22:17 924
转载 Android电话拨打流程源码分析
http://blog.csdn.net/kevinx_xu/article/details/11845619
2016-08-22 15:03:25 421
原创 android四大组件详解
android四大组件分别为activity、service、content provider、broadcast receiver。一、android四大组件详解1、activity(1)一个Activity通常就是一个单独的屏幕(窗口)。(2)Activity之间通过Intent进行通信。(3)android应用中每一个Activity都必须要在An
2016-08-22 15:01:46 416
转载 Android之数据库更新
http://blog.csdn.net/jiangwei0910410003/article/details/39670813
2016-08-22 14:59:28 282
转载 linux下的APK反编译软件及过程介绍
http://blog.csdn.net/richerg85/article/details/24596823
2016-08-22 14:55:53 289
转载 android系统之apn相关
http://blog.csdn.net/dy_learning/article/details/10900467
2016-08-22 14:54:27 257
转载 Android 连接Wifi和创建Wifi热点 Demo
http://blog.csdn.net/sasoritattoo/article/details/8285926
2016-08-22 14:53:13 1198
原创 Android M版本架构下wpa_supplicant分析
http://blog.csdn.net/hatchuel/article/details/50779546
2016-08-22 14:51:44 476
原创 Android WiFi 扫描和连接热点
http://blog.csdn.net/lilian0118/article/details/22408287
2016-08-22 14:50:22 426
转载 Android 自动更新之状态栏下载状态和进度
http://blog.csdn.net/u011057161/article/details/42418941
2016-08-22 14:48:14 1347
原创 Android实现手势滑动的事件处理方法
首先得Activity必须实现OnGestureListener接口,该接口提供了关于手势操作的一些方法,onDown方法:onDown是,一旦触摸屏按下,就马上产生onDown事件public boolean onDown(MotionEvent e) {return false;}onFling方法:当手在屏幕上滑动但手未离开屏幕时触发Motio
2016-01-14 16:50:03 386
原创 Android结构及Framework启动流程
Android系统架构由5部分组成:Linux Kernel(linux内核)、Android Runtime(运行时环境)、Libraries(类库)、Application Framework(应用框架)、Applications(应用)1、Linux KernelAndroid基于Linux 2.6提供核心系统服务,例如:安全、内存管理、进程管理、网络堆栈、驱动模型。Linux
2016-01-08 16:02:15 393
原创 如何将代码托管到github上
1,注册并登陆github,github官方地址:https://github.com2,点击右下角的 New repository 按钮来创建一个版本库3,将版本库命名为 coolweather,然后选择添加一个 Android 项目类型的.gitignore 文件,并使用 Apache v2License 来作为酷欧天气的开源协议4,接着点击 Create reposi
2015-12-21 15:56:53 2512
原创 L版本状态栏添加电量百分比
关于状态栏中添加电量百分比。1, 添加viewstatus_bar.xml android:layout_width="wrap_content"android:layout_height="match_parent"android:orientation="horizontal">android:layout_width="wrap_c
2015-12-10 09:45:23 1115
原创 android5.1为锁屏设置一张固定加载的背景图片
可按如下步骤实现:1,在alps/frameworks/base/packages/SystemUI/res/drawable添加图片资源keyguard_wallpaper.png2,PhoneStatusBar.java中: //begin 添加下面一行 PanelHolder mHolder;//成员变量 //
2015-11-28 11:48:59 2075
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人