- 博客(94)
- 资源 (15)
- 收藏
- 关注
原创 2021-09-24
Bash Shell中的¥Shell的名字 $0第一个参数 $1第二个参数 $2第n个参数 $n所有参数 $@ 或 $*参数个数 $#
2021-09-24 11:04:30
199
原创 android bootanimation启动和关闭
启动frameworks/base/cmds/bootanimation/bootanim.rcservice bootanim /system/bin/bootanimation关闭WindowManagerService.javaperformEnableScreen()try { IBinder surfaceFlinger = Servi...
2019-04-01 12:26:55
1854
原创 签名系统apk命令
java -jar out/host/linux-x86/framework/signapk.jar build/target/product/security/platform.x509.pem build/target/product/security/platform.pk8 input.apk output.apk
2019-01-11 17:36:38
613
原创 关于android:sharedUserId
作用是多个app进程共享数据多个app设置成相同的user idandroid:sharedUserId=“android.uid.system” 系统级进程android:sharedUserId=“com.example” 普通共享app具体参考如下文章:https://blog.csdn.net/jiangwei0910410003/article/details/51316688...
2019-01-05 15:20:58
1217
原创 LOCAL_CERTIFICATE作用
用于设置不同的签名方式build/target/product/security目录中有四组默认签名供Android.mk在编译APK使用:1、testkey:普通APK,默认情况下使用。2、platform:该APK完成一些系统的核心功能。经过对系统中存在的文件夹的访问测试,这种方式编译出来的APK所在进程的UID为system。3、shared:该APK需要和home/contacts...
2019-01-05 15:06:42
19350
原创 Ubuntu格式化U盘
查看分区信息 sudo fdisk -l修改分区 sudo fdisk /dev/sdbm是帮助 d是删除一个分区,数字1~4选择要删除的分区 n创建新分区,p主分区,e扩展分区 w写回并推出格式化分区 sudo mkfs -t ntfs /dev/sdb1...
2018-09-10 13:38:48
1148
原创 dump AndroidManifest.xml from APK file
aapt dump xmltree XXX.apk AndroidManifest.xml aapt dump xmltree XXX.apk AndroidManifest.xml > ttt.txt
2018-02-09 15:20:25
631
原创 framework_intermediates/classes.jar: unknown package name of class file
编译android源码时如果出现标题类似错误 需要到build/core/tasks/check_boot_jars/package_whitelist.txt 文件中追加对应的类或者包
2017-12-19 20:59:26
1862
原创 system-api.txt:27075: error 13 has added 'final' qualifier
修改android N源码过程中如果修改了原始的api导致编译出现如下错误,解决方法是让prebuilts/sdk/system-api/25.txt中的声明和frameworks/base/api/system-current.txt或者current.txt保持一致错误log如下:FAILED: /bin/bash -c "(( out/host/linux-x86/bin/apicheck -
2017-12-19 20:43:57
1333
1
原创 android编译中的BUILD_JAVA_LIBRARY
android编译中经常用到编译jar文件的常量 BUILD_JAVA_LIBRARY 他的定义在 build/core/config.mk中 BUILD_JAVA_LIBRARY:= $(BUILD_SYSTEM)/java_library.mk其他几个也是类似的定义 把BUILD_去掉 后面变成小写java_library.mk 就是对应的实现BUILD_HOST_STATIC_L
2017-12-14 20:34:00
3143
原创 Ubuntu Eclipse经常挂掉问题
最近发现Ubuntu下的Eclipse经常挂掉 后来在eclipse.ini中加入如下的配置后不挂了-Dorg.eclipse.swt.browser.DefaultType=mozilla
2017-03-24 14:21:48
519
原创 Android BluetoothAdapter
本文基于android 7.0代码BluetoothAdapterframeworks/base/core/java/android/bluetooth/BluetoothAdapter.java提供了7个状态值 /** * Indicates the local Bluetooth adapter is off. */ public static final in
2017-01-18 17:51:20
1117
原创 WindowManager addView
首先WindowManager是怎么获取的WindowManager mWindowManager = Context.getSystemService(WindowManager.class);可以通过这种方式给Activity add一个view 接着找到WindowManager和其他两个类的关系public final class WindowManagerImpl implements
2017-01-13 22:56:46
3350
原创 Android AIDL
Android AIDL是Android一个进程间通信的机制 IPC (Inter Process Communication,进程间通信)AIDL的使用 1. 写一个aidl文件,例如aaa.aidl 2. 服务器端和客户端各放一份 3. 服务器端(Bn)要实现ServerAAA extends aaa.Stub 4. ServerAAA中会实现具体的功能供客户端调用 5. 客户
2017-01-13 21:13:12
327
原创 Android WindowManagerService相关的Session
本文基于Android7.0Session类路径framework/base/services/core/java/com/android/server/wm/Session.java内容final class Session extends IWindowSession.Stub implements IBinder.DeathRecipient { final Windo
2017-01-13 19:50:32
1632
原创 Android Support Repository版本号
本文参考: https://developer.android.com/topic/libraries/support-library/setup.html首先要使用support library,就要通过android sdk manager下载 Android Support Repository下载后的本地路径如下 /extras/android/m2repository/com/and
2017-01-12 17:39:51
10618
原创 如何使用Design Support Library提供的FloatingActionButton
Android Studio中app/build.gradle追加dependenciesdependencies { compile 'com.android.support:design:25.1.0'}layout中追加如下控件 <android.support.design.widget.FloatingActionButton android:id="@+i
2017-01-12 14:54:32
555
原创 Sublime快捷键
Sublime Text 3 快捷键精华版 Ctrl+Shift+P:打开命令面板 Ctrl+P:搜索项目中的文件 Ctrl+G:跳转到第几行 Ctrl+W:关闭当前打开文件 Ctrl+Shift+W:关闭所有打开文件 Ctrl+Shift+V:粘贴并格式化 Ctrl+D:选择单词,重复可增加选择下一个相同的单词 Ctrl+L:选择行,重复可依次增加选择下一行 Ctrl+Shift
2017-01-05 21:02:49
335
原创 Android dump的使用1
android源码中很多service提供了dump函数,并会输出当前的状态。如何使用dump函数就是这篇文档要做的事儿首先,进入adb shell 第二,执行dumpsys –help 这样就能了解dumpsys命令的基本用法255|generic_x86_64:/ # dumpsys --helpusage: dumpsys To dump all ser
2017-01-05 12:19:27
11487
原创 Android Configuration UIMode
UIMode是当前UI模式 桌面,汽车,TV,手表 白天,夜间等参考如下代码:// Configuration.java switch ((uiMode&UI_MODE_TYPE_MASK)) { case UI_MODE_TYPE_UNDEFINED: sb.append(" ?uimode"); break; case UI_MODE_
2016-12-23 12:20:35
5658
1
转载 深入理解Activity启动流程(四)–Activity Task的调度算法
前面两篇博客介绍了Activity的详细启动流程,提到ActivityStack类的startActivityUncheckedLocked方法负责调度ActivityRecord和Task,并且调度算法非常复杂,需结合实际场景分析调度算法。本篇博客将介绍startActivityUncheckedLocked方法的具体实现,本结合实际场景分析调度算法。startActivityUncheckedL
2016-12-22 21:38:41
757
转载 深入理解Activity启动流程(三)–Activity启动的详细流程2
上篇博客介绍了Activity详细启动流程的前半部分:Activity调用ActivityManagerService启动应用ActivityManagerService调用Zygote孵化应用进程Zygote孵化应用进程 本篇博客主要介绍Activity详细启动流程的后半部分:新进程启动ActivityThread应用进程绑定到ActivityManagerServiceActivi
2016-12-22 21:32:59
677
转载 深入理解Activity启动流程(三)–Activity启动的详细流程1
本篇博客将开始介绍Activity启动的详细流程,由于详细启动流程非常复杂,故此分成两篇来介绍。本篇主要介绍前半部分的启动流程:Activity调用ActivityManagerService启动应用ActivityManagerService调用Zygote孵化应用进程Zygote孵化应用进程 下篇介绍后半部分的启动流程:新进程启动ActivityThread应用进程绑定到Activi
2016-12-22 21:10:34
477
转载 深入理解Activity启动流程(二)–Activity启动相关类的类图
在介绍Activity的详细启动流程之前,先为大家介绍Activity启动时涉及到的类,这样大家可以有大概的了解,不至于在细节中迷失。Activity启动时涉及到的类有IActivityManager相关类, IApplicationThread 相关类, ActivityManagerService 相关类。IActivityManager相关类 Activity的管理采用binder机制,管理
2016-12-22 20:55:08
581
转载 深入理解Activity启动流程(一)–Activity启动的概要流程
**概述**Android中启动某个Activity,将先启动Activity所在的应用。应用启动时会启动一个以应用包名为进程名的进程,该进程有一个主线程,叫ActivityThread,也叫做UI线程。本系列博客将详细阐述Activity的启动流程,这些博客基于Cm 10.1源码研究。Activity启动时的概要交互流程用户从Launcher程序点击应用图标可启动应用的入口Activity,Act
2016-12-22 20:45:13
491
原创 IActivityManager ActivityManagerNative ActivityManagerService之间如何进行工作
总结:IActivityManager调用函数最终会调用ActivityManagerService中的对应实现IActivityManager 定义的接口。 app侧的proxy <—->ActivityManagerProxy 比如IActivityManager定义接口startActivityFromRecentsclass ActivityManagerProxy implements
2016-12-21 15:59:47
3588
原创 Android 7.0 SystemUI Recent浅析
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~最近Task模块Recents extends SystemUIstart进行初始化~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~BaseStatusBar中如下函数显示最近task protected void toggleRecents() {
2016-12-20 17:52:58
5677
转载 Android Studio卡顿
以下内容来自网址:https://www.zhihu.com/question/32282404罗森75 人赞同Android Studio 2.0 以下:每次升级/安装 Android Studio 之后最好都修改一下这个参数:到 Android Studio 安装目录,找到 bin/studio(64?).vmoptions(文件名可
2016-12-10 01:10:25
905
原创 gitk not enough memory
error getting diffs: couldn't fork child process: not enough memory解决方法gitk --all -n 256gitk --all -n 10gitk --all -n XXXX是最近几个提交参考:https://www.spinics.net/lists/git/msg39209.html
2016-12-08 16:49:44
1160
原创 android layout_gravity
android:layout_gravity=”0x37” 意思就是 android:layout_gravity=”top|fill_horizontal”Gravity类提供的常量列表如下: NO_GRAVITY Constant Value: 0 (0x00000000) LEFT
2016-12-08 14:22:44
802
原创 Android7.0 SystemUI StatusBar和Notification代码浅析
SystemUI代码结构比Launcher2代码要复杂很多 下面的分析也主要是贴代码,备注给自己,以免以后忘记~~~~~~~~~~~~~~~~~~~~~~~~~~~~~* 程序入口 * 系统会启动SystemUIService SystemUIService->onCreateSystemUIApplication->startServicesIfNeeded() 创建所有SystemUI为
2016-12-08 10:36:15
11602
1
原创 Implicit declaration of function 'inet_addr' is invalid in C99
inet_addr implicit declaration
2016-11-21 22:37:30
6835
原创 ubuntu resolv.conf 重启丢失
ubuntu系统,重启会覆盖/etc/resolv.conf文件的问题解决办法sudo gedit /etc/network/interfaces 追加一行 dns-nameservers XXX.XXX.XXX.XXX XXX.XXX.XXX.XXX为DNS服务器地址sudo gedit /etc/resolvconf/resolv.conf.d/head 加入如下两行 nameserv
2016-08-29 10:53:10
2536
原创 Ubuntu安装JDK
下载jdk 先从Oracle官网下载JDK。先选择同意按钮,然后根据自己的系统下载相应版本。我的系统是Ubuntu16.04 64位的,所以我下载64位linux版本的jdk解压拷贝到/usr/lib/jvm目录下环境变量设置 配置默认java版本 sudo update-alternatives –install “/usr/bin/java” “java” “/usr/java/jdk
2016-08-08 21:34:19
451
原创 Dx unsupported class file version 52.0 …while parsing
如果使用eclipse时遇到如标题的问题 原因是jdk版本是1.8,runtime版本是1.6,导致无法正常解析 eclipse修改设定 Window->Preference->Java->Compiler Window->Preference->Java->Installed JREs 两处保持一致版本 Installed JREs->Execution Environment中 J
2016-08-08 21:19:27
7521
原创 android studio上次修改位置跳转快捷键无效
如果遇到标题的问题 找到Setting->Key Map->Main Menu->Navigation->Back 修改快捷键为Alt+P之类的,之前的快捷键可能和其他快捷键有冲突导致无效
2016-08-08 20:47:23
3693
原创 Module won't show up in “Edit Configuration”
Module not specified使用android studio时,出现程序无法运行,手动添加run configuration时也无法找到module时 可以查看主程序的build.gradle Make sure your build.gradle isapply plugin: ‘com.android.application’ notapply plugin: ‘com.and
2016-08-08 20:41:51
829
转载 shell 脚本中的$
shell 脚本中$$,$#,$?分别代表什么意思?0这个程式的执行名字0 这个程式的执行名字 n 这个程式的第n个参数值,n=1..9 ∗这个程式的所有参数,此选项参数可超过9个。* 这个程式的所有参数,此选项参数可超过9个。 # 这个程式的参数个数 $$ 这个程式的PID(脚本运行的当前进程ID号) $! 执行上一个背景指令的PID(后台运行的最后一个进程的进程ID号) $? 执
2016-04-22 11:16:42
441
Genymotion-ARM-Translation_v1.1
2016-02-02
android Notification详解
2014-04-09
跟我一起写Makefile.pdf
2012-01-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人