- 博客(56)
- 收藏
- 关注
原创 Android rescueParty 救援模式 --无法启动时,会进入recovery
rescueParty主要是为了处理当系统无法正常进入系统,当systemserver一直重启或者persistentapp(守护应用)一直挂掉重启时,当重启的次数达到一定次数时,rescureParty会发挥作用,rescureParty也分为不同级别,先重置简单设置,如果还是无法正常启动,再重置重要设置,如果还是无法正常启动,最后重启系统进入recovery模式,并且询问用户是否需要擦除data分区。默认此属性是没有设置的。2、当编译的是eng版本时,是关闭救援模式的。...
2022-07-29 10:47:24 4064 1
原创 Java 打印堆栈的几种方法
Android java堆栈打印方式:https://www.cnblogs.com/AloneSword/p/3857423.html方法一:package name.xu;public class CallStack {public static void printCallStatck() {Throwable ex = new Throwable();StackTraceElement[] stackElements = ex.getStackTrace();if (stackEle
2022-02-15 11:06:26 5157
转载 android 按键事件上报机制
https://blog.csdn.net/weixin_34346099/article/details/87973019
2021-11-03 11:27:09 281
转载 [Andriod] fastboot 和 recovery 模式的区别
[Andriod] fastboot 和 recovery 模式的区别 2222345345 2018-08-13 16:32:42 ...
2021-10-21 11:00:04 938
转载 Android事件传递
Android事件传递View事件传递之父View和子View之间的那点事https://www.cnblogs.com/CSU-PL/p/4692484.html
2021-10-14 13:37:02 105
转载 ANR机制以及问题分析
https://duanqz.github.io/2015-10-12-ANR-Analysis1、概览ANR(Application Not Responding),应用程序无响应,简单一个定义,却涵盖了很多Android系统的设计思想。首先,ANR属于应用程序的范畴,这不同于SNR(System Not Respoding),SNR反映的问题是系统进程(system_server)失去了响应能力,而ANR明确将问题圈定在应用程序。SNR由Watchdog机制保证,具体可以查阅Watchdog机制
2021-09-14 09:55:32 677
转载 Watchdog问题定位及分析方法
转载链接:http://duanqz.github.io/2015-10-12-Watchdog-Analysis#section-1目录概览Watchdog机制2.1 Watchdog的初始化2.2 添加Watchdog监测对象2.3 Watchdog的监测机制问题分析方法3.1 日志获取3.2 问题定位3.3 场景还原实例分析总结请尊重原创版权,转载注明出处。概览Watchdog的中文的“看门狗”,有保护的意思。最早引入Watchdog是在单片机系统中,由于单片机的工作环
2021-09-13 17:55:23 1150
转载 Android_存储之SharedPreferences
https://www.cnblogs.com/fanglongxiang/p/11390013.html
2021-09-01 10:00:13 92
原创 Android死机、重启问题分析方法
https://blog.csdn.net/pashanhu6402/article/details/79722282https://blog.csdn.net/dc3120/article/details/87872868
2021-08-03 16:17:47 323
转载 Android开机各个阶段(Android R)
Android开机各个阶段(Android R)目录开机各个阶段描述boot_progress_startboot_progress_preload_startboot_progress_preload_endboot_progress_system_runboot_progress_pms_startboot_progress_pms_system_scan_startboot_progress_pms_data_scan_startboot_progress_pms_scan_endboo...
2021-07-08 11:09:40 2090
转载 Android 9.0灭屏流程
https://blog.csdn.net/qq_29117915/article/details/101374605
2021-07-08 10:43:10 196
转载 (android 关机/重启)Android关机/重启流程解析
(android 关机/重启)Android关机/重启流程解析 分类: Android平台2016-04-07 20:45:18 <div class="...
2021-07-08 10:33:38 589
转载 Android Framework原理
Android Framework原理willin关注62018.03.21 09:39:15字数 1,706阅读 32,550App启动过程App启动过程点击桌面App图标,Launcher进程采用Binder IPC向system_server进程发起startActivity请求system_server进程接收到请求后,向zygote进程发送创建进程的请求Zygote进程fork出新的子进程,即App进程App进程,通过Binder IPC向sytem_server进程发起a
2021-07-08 10:28:35 266
原创 Android异常介绍与分析:
Android异常介绍与分析:http://www.mamicode.com/info-detail-1768679.htmlhttp://www.cnblogs.com/xiyuan2016/p/6740623.html
2021-07-08 10:17:16 94
转载 android系统架构
一,android系统架构andorid系统架构从上到下分别有应用层、应用框架层、系统运行时库层、硬件抽象层、Linux内核层。应用层:包括系统应用比如闹钟、日历等这些在内的以及非系统级别的应用都属于应用层。负责用户交互,也就是我们需要开发的东西。应用框架层:这一层主要是为咱们开发人员提供用来开发应用程序的API,平常我们开发程序大部分都是调用这部分的API来进行开发。这一层主要提供一些ActivityManager 管理应用生命周期、locationManager 地理位置服务、还有就是Noti
2020-08-02 15:51:59 191
转载 ip
网络的基本概念客户端:应用 C/S(客户端/服务器) B/S(浏览器/服务器)服务器:为客户端提供服务、数据、资源的机器请求:客户端向服务器索取数据响应:服务器对客户端请求作出反应,一般是返回给客户端数据screenshot.pngURLUniform Resource Locator(统一资源定位符)网络中每一个资源都对应唯一的地址——URLIP 、子网掩码 、路由器 、DNSscr...
2019-07-09 18:10:01 180
原创 进程控制 创建、等待、替换
进程创建:首先认识一下fork()函数:pid_t fork();函数作用:创建一个子进程;返回值:1.调用成功,子进程返回0;父进程返回子进程的PID;2.调用失败,返回-1;子进程创建成功,子进程会采用写时拷贝的方式拷贝父进程的数据;进程等待:先认识两个函数:pid_t wait(int* status);pid_t waitpid(pid_t pid,int* s...
2019-05-16 11:19:48 121
原创 进程的地址空间(虚拟地址)
先来看一组代码:#include<stdio.h>#include<stdlib.h>#include<unistd.h>int main(){int m=0;pid_t ret=fork();if(ret<0){perror("fork");}else if(ret==0){m=100;printf("child [%d] ...
2019-05-09 16:57:08 173
原创 Linux下环境变量 (查看、添加)
环境变量是一个键值对结构键:变量名值:变量内容查看环境变量的一些指令:env: 查看系统上所有的环境变量echo $+环境变量名 :查看某个环境变量export :修改环境变量,对于PATH环境变量修改一般只是追加,不会把原来的内容修改掉unset : 清除环境变量set :显示本地定义的shell变量和环境变量export 指令的具体用法: export PATH=$PATH:...
2019-05-09 15:51:59 237
原创 进程概念&& 什么是PCB
一、什么是进程?什么是PCB???进程是一个正在执行的程序。 进程是程序的一个实例。 进程能分配处理器并由处理器执行的实体。 如果从内核的角度看的话:进程是分配系统资源的单位。当一个程序被加载到内存之后并为他分配一个PCB(进程控制块),这时候就称为进程了。在linux中PCB就是一个名字叫做task_struct的结构体,我们叫他”进程描述符”。它里面有进程执行的所有...
2019-05-08 09:35:54 4799
原创 进程的几种状态(僵尸进程、孤儿进程)
进程状态:1.R (TASK_RUNNING)状态,可执行状态。只有在该状态的进程才可能在CPU上运行。而同一时刻可能有多个进程处于可执行状态,这些进程的task_struct结构(进程控制块)被放入对应CPU的可执行队列中(一个进程最多只能出现在一个CPU的可执行队列中)。进程调度器的任务就是从各个CPU的可执行队列中分别选择一个进程在该 CPU上运行。很多操作系统教科书将正在CPU上执...
2019-05-07 21:10:00 1407
原创 c++ 多态
多态:就是不同对象执行同一行为的多种表现形态;多态的前提是继承;先来看一组代码:class person{public:virtual void buyTicket() { cout<<"买全票"<<endl; }}class student : public person //这里发生了继承{public:...
2019-04-23 20:41:56 163
原创 Linux权限管理
Linux下有两种用户: root(超级用户) 、普通用户;超级用户(root)的命令提示符为 #普通用户的命令提示符为$两种用户的切换可以用su指令完成;由root用户切换到lwt用户 (su lwt),由lwt用户切换到root (su root)或者(su)root可以省略;文件类型和访问权限:文件类型:访问权限:r代表可读 w代表可写 x代表可...
2019-04-22 17:36:25 187
原创 touch指令 find指令
语法:touch [选项] [参数]linux下touch的作用:1.用来创建新的空文件;2.修改已存在文件的时间;此时间具体包括:access(最后一次访问时间):最后一次访问文件的时间;modify(最后一次对文件内容更改的时间);最后一次更改文件内容的时间;change:对后一次对文件属性或者状态进行修改的时间;选项:具体修改时间如下:...
2019-04-22 12:47:58 545
原创 gcc和g++
什么是g++和gcc:首先说明:gcc 和 GCC 是两个不同的东西GCC:GNU Compiler Collection(GUN 编译器集合),它可以编译C、C++、JAV、Fortran、Pascal、Object-C、Ada等语言。gcc是GCC中的GUN C Compiler(C 编译器)gcc是GCC中的GUN C++ Compiler(C++编译器)一个有趣的事实就是,就本质...
2019-04-21 23:00:55 105
原创 Linux的基本操作
基本命令ifconfig: 该命令用于查看当前linux机器的ip地址;使用xshell登录主机:在xshell终端输入ssh+ip,会提示你输入用户名及密码,登录就行;ls: 查看目录底下有什么东西;ls -l:详细显示目录底下的东西;它等价于ll;/:表示根目录;tab:自动补全命令;(快速按两下tab可以提示所有补全命令的情况);clear:清屏;它等价于ctrl+l;pwd...
2019-04-21 21:18:36 367
原创 string类的模拟实现
模拟实现class String{public:typedef char* iterator;private:size_t _size;size_t _capacity;char* _str;}构造函数String(char* s=""){_size=strlen(s);_capacity=_size;_str=new char[_capacity+1];str...
2019-04-17 10:37:49 143
原创 c++ 继承
1.继承的定义及说明:class person{ public: void print() { cout<<_name<<endl; cout<<_age<<endl; } protected: string _name="lwt"; int _age=23;...
2019-04-16 16:54:48 160
原创 两个栈实现一个队列(力扣)
使用栈实现队列的下列操作:push(x) -- 将一个元素放入队列的尾部。pop() -- 从队列首部移除元素。peek() -- 返回队列首部的元素。empty() -- 返回队列是否为空。class MyQueue {public: /** Initialize your data structure here. */ MyQueue() { ...
2019-04-09 22:31:55 131
原创 二叉树的层序遍历(力扣)
给定一个二叉树,返回其按层次遍历的节点值。 (即逐层地,从左到右访问所有节点)。例如:给定二叉树: [3,9,20,null,null,15,7],3/ 9 20/ 15 7返回其层次遍历结果:[[3],[9,20],[15,7]]/** * Definition for a binary tree node. * struct TreeNode...
2019-04-09 22:28:44 452
原创 找出字符串中只出现一次的两个数
只出现一次的数字3(力扣)给定一个整数数组 nums,其中恰好有两个元素只出现一次,其余所有元素均出现两次。 找出只出现一次的那两个元素。输入: [1,2,1,3,2,5] 输出: [3,5]#include<iostream>#include<vector>using namespace std;vector<int> singleNum...
2019-03-30 23:17:33 215
原创 c++字符串相加
字符串相加:#include<iostream>#include<string>using namespace std;string addStrings(string num1, string num2){ int a1 = num1.size() - 1; int a2 = num2.size() - 1; int step = 0; //进位...
2019-03-23 13:04:16 7684
原创 c++单例模式(懒汉模式)
#include<iostream>using namespace std;//懒汉模式#include<thread> //线程库#include<mutex> //锁class singleton{public: static singleton* getinstance() { if (_ps == nullptr) {...
2019-03-23 13:02:53 169
原创 c++类模板
#include<iostream>#include<vector>using namespace std;//模板template<class T>class vector //顺序表{public: vector(size_t capacity = 5) :_data(new T[capacity]) , _si...
2019-03-23 12:55:48 140
原创 c++内存管理
通过这张图我们大概知道代码中各个变量是在哪存储的;【说明】栈又叫堆栈,非静态局部变量/函数参数/返回值等等,栈是向下增长的。内存映射段是高效的I/O映射方式,用于装载一个共享的动态内存库。用户可使用系统接口创建共享共 享内存,做进程间通信。(Linux课程如果没学到这块,现在只需要了解一下)堆用于程序运行时动态内存分配,堆是可以上增长的。数据段–存储全局数据和静态数据。代码段–可执...
2019-03-20 16:58:30 176
原创 c++单例模式
单例模式是任何面向对象语言绕不过的,单例模式是很有必要的,接下来我用最朴素的语言来解释和记录单例模式的学习。什么是单例模式?单例模式就是一个类只能被实例化一次 ,更准确的说是只能有一个实例化的对象的类。创建一个单例模式的类(初想)一个类只能有一个实例化的对象,那么这个类就要禁止别人new出来,或者通过直接定义一个对象出来class CAR{public: CAR(){} ...
2019-03-19 23:09:23 127
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人