- 博客(21)
- 资源 (1)
- 收藏
- 关注
原创 MediaPlayer视频播放流程
MediaPlayer视频播放流程(基于Android8.0)MediaPlayer视频播放流程(基于Android8.0)
2024-10-09 14:25:00
1524
原创 系统内存-cpu-gpu常用命令
常用命令1.1 cpu性能常用命令top 命令查看系统的实时负载, 包括进程、CPU负载、内存使用Tasks: 249 total, 2 running(运行状态), 239 sleeping(睡眠状态), 0 stopped(暂停状态), 8 zombie(僵尸状态)
2024-10-09 14:10:19
1841
原创 鸿蒙OS启动流程
实现原理是将服务启动的函数通过宏定义的方式申明之后,放在预定义好的zInit代码段中,系统启动的时候调用OHOS_SystemInit接口遍历该代码段并调用其中的函数。支持了ramdisk的启动过程,此场景需要修改productdefine中的产品配置文件,通过"enable_ramdisk"开关开启ramdisk生成,这一部分与平台相关,不同的平台对于ramdisk的处理方式不一样。在创建块设备节点的过程中,会有一个将设备路径与default_boot_device的值匹配的操作,匹配成功后,会在。
2024-10-09 14:01:53
2677
原创 鸿蒙OS投票机制
可以看到foundation进程有4个投票事件,会在相应的时机,代码中调用system::SetParam eter方法进行投票。如果有需要投票的地方没有投,会导致开机动画不会退出,开机动画退出会检测bootevent.boot.completed事件。
2024-10-09 13:38:26
894
原创 鸿蒙OS---cfg文件解析
init进程启动时,首先完成系统初始化工作,然后开始解析配置文件。init.cfg默认配置文件,由init系统定义,优先解析。/system/etc/init/*.cfg各子系统定义的配置文件。/vendor/etc/init/*.cfg厂商定义的配置文件。当需要添加配置文件时,用户可以根据需要定义自己的配置文件,并拷贝到相应的目录下。
2024-10-08 17:15:54
1149
原创 鸿蒙微内核IPC数据结构
内核为任务之间的通信提供了多种机制,包含队列、事件、互斥锁、信号量等,其中还有Futex(用户态快速锁),rwLock(读写锁),signal(信号)。
2024-10-08 17:04:55
1044
转载 修改系统默认时间
一 : 修改Android系统默认时间源码路径:frameworks/base/services/java/com/android/server/SystemServer.java主要变量EARLIEST_SUPPORTED_TIME // The earliest supported time. We pick one day into 1970, to // give any timezone code room without going into negative time.
2020-05-27 16:33:35
663
原创 shell脚本批量增加后缀名,bat脚本批量去除后缀名
由于需求需要,需要在linux系统批量给文件加上后缀名,然后拷贝到Windows上,在批量删除增加的后缀名,特写了两个脚本程序去实现。1.shell脚本#!/bin/bashfunction read_dir(){ for file in `ls $1` do if [ -d $1"/"$file ] then read_dir $1"/"$file else mv $1"/"$file $1"/"
2020-05-20 18:02:28
1248
原创 Android编译的APK导入系统签名
由于APK需要系统的一些权限,所以需要给APK添加系统签名当我们在AndroidStudio中编译APK的时候,使编译出来的APK自带签名,需要如下的几步。1.获取系统签名文件系统签名文件的获取,需要在源码中拷贝出来如下几个文件,platform.pk8 platform.x509.pem然后编写如下脚本,运行这个脚本就可以生成系统签名文件啦:#!/bin/sh./keytool-importkeypair -k system_signature.jks -p 123456 -pk8 pla
2020-05-15 17:26:49
670
原创 Android跨进程通信传输大数据
Android跨进程通信的方式大概有如下几种:1.Activity方式:Intent callIntent = new Intent(Intent.ACTION_CALL, Uri.parse("tel:12345678" ); startActivity(callIntent);2.Content Provider 方式:Android应用程序可以使用文件或SqlLite数据库来存储数据。Content Provider提供了一种在多个应用程序之间数据共享的方式(跨进程共享数据),应用程序
2020-05-14 10:56:04
2965
2
原创 java和python读写CSV文件
java的读写操作1.读取CSV文件try { BufferedReader buffeReader = new BufferedReader(new FileReader("test.csv")); buffeReader.readLine();//读取标题行 String data = null; while((data = buffeReader.readLine())!=null){ //循环读取每一行数据
2020-05-11 20:06:58
390
原创 pandas的基本操作
转载的一篇关于pandas的文章,很好的笔记(侵权联系速删)。 数据读写 # 读入MySQL数据库数据# 导入第三方模块import pymysql# 连接MySQL数据库conn = pymysql.connect(host='localhost', user='root', password='test', database='test', port=3306, charset='utf8')# 读取数据u.
2020-05-11 19:29:32
282
原创 修改APP默认横屏或竖屏
由于机器可能是横屏机器或者竖屏机器,并且因为功能需要不支持旋转屏幕。此时如果在机器上安装第三方APK,如微信,需要默认为和机器一样的方向,然而没有第三方APK的源码,修改默认屏幕方向的话只能需要去系统里想办法啦。系统中修改APK默认方向的话,在WindowManagerService .java这个类中可以修改。首先需要知道当前应用的包名:获取应用包名,可以通过adb命令获取;adb shell pm list packages -3 获取当前安装的所有第三方APK的包名aapt dump bad
2020-05-09 10:10:17
3921
原创 传感器数据采样率控制
一般情况下,不需要太高的传感器数据采样率,采样太快,对设备有一定的耗电影响。1.传感器的种类SENSOR_TYPE_ACCELEROMETER 1 //加速度SENSOR_TYPE_MAGNETIC_FIELD 2 //磁力SENSOR_TYPE_ORIENTATION 3 //方向SENSOR_TYPE_GYROSCOPE 4 //陀螺仪SENSOR_TYPE_LIGHT 5 //光...
2020-05-08 15:27:05
4489
原创 Python中的一些骚操作
1.交换变量值a,b = 10 ,5print(a,b)a,b = b,aprint(a,b)2.将列表中的所有元素组合成字符串a = ["hello", "python"]print(" ".join(a))3.合并集合a = [[1, 2], [3, 4]]b = [[5], [6]]print(list(list(i) for i in zip(a, b)))4...
2020-05-07 14:40:30
312
原创 Android8.1 系统修改默认的wifi直连名字
关于修改默认wifi直连的名字其实很简单,打开frameworks\opt\net\wifi\service\java\com\android\server\wifi\p2p\WifiP2pServiceImpl.java这个文件,修改如下: // default that has low likelihood of collision with a peer ...
2020-05-07 14:18:36
875
原创 AS导入Framework.jar
AS导入framework.jar由于在framework层添加了一些接口,然后又不想每次更改APP都在源码环境下编译验证,特把APP源码拷贝到AS中进行编译修改,这就需要在AS中导入系统编译出来的framework.jar包,才能正常编译。编译framework.jar包make -j24编译出framework.jar;并在 out\target\common\obj\JAVA_...
2020-05-06 16:56:38
1086
系统签名需要的签名工具.zip
2020-05-15
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人