avatar
Articles
883
Tags
284
Categories
186

Yan 的杂物志_个人主页分享
Search
android的包管理
Created2010-08-20|2_Note0_Technic3_编程Android工具
android 的包管理 #移动开发 #Android 1. 说明 包管理(Package manager)非常重要,它关系着软件包的安装,卸载,查看和使用,它是运行在后台的一个服务,名叫 PackageManagerService,包括对软件包的解包,验证,安装等 2. 系统软件包管理信息存储在哪 /data/system/packages.xml 通过它可以看到系统安装的所有软件包,以及软件包的信息 3. 包管理相关源码在哪 frameworks/base/services/java/com/android/server/PackageManagerService.java 4. 系统自带的软件能升级吗(即安装在系统分区 system 中的包,如电话,短信) 可以升级,如果升级 /system/app 目录中的包,PackageManagerServer.java 对此情况进行处理,被升级的包出现 package.xml 的 updated-package 字段中,新的包信息会写在 package 字段中,卸载新包后,原包会恢复到 package 字段中。启动时新的包会优先地被启动 ...
Android的开机流程
Created2010-08-20|2_Note0_Technic3_编程Android系统
Android 的开机流程 #移动开发 #Android y 1. 系统引导 bootloader 源码:bootable/bootloader/* 说明:加电后,CPU 将先执行 bootloader 程序,此处有三种选择 开机按 Camera+Power 启动到 fastboot,即命令或 SD 卡烧写模式,不加载内核及文件系统,此处可以进行工厂模式的烧写 开机按 Home+Power 启动到 recovery 模式,加载 recovery.img,recovery.img 包含内核,基本的文件系统,用于工程模式的烧写 开机按 Power,正常启动系统,加载 boot.img,boot.img 包含内核,基本文件系统,用于正常启动手机(以下只分析正常启动的情况) 2. 内核 kernel 源码:kernel/* 说明:kernel 由 bootloader 加载 3. 文件系统及应用 init 源码:system/core/init/* 配置文件:system/rootdir/init.rc, 说明:init 是一个由内核启动的用户级进程,它按照 init.r ...
android系统自带的Service原理与使用
Created2010-08-20|2_Note0_Technic3_编程Android系统
android 系统自带的 Service 原理与使用 #移动开发 #Android 1. 说明 android 的后台运行在很多 service,它们在系统启动时被 SystemServer 开启,支持系统的正常工作,比如 MountService 监听是否有 SD 卡安装及移除,ClipboardService 提供剪切板功能, PackageManagerService 提供软件包的安装移除及查看等等,应用程序可以通过系统提供的 Manager 接口来访问这些 Service 提供的数据,以下将说明他们的工具流程 2. 举例说明基本流程 以 android 系统支持 sensor(传感器)实例来说明框架层的 service 和 manager 是如何配合工作的 什么是 sensor sensor 是传感器, 比如控制横竖屏切换利用的就是重力传感器 (gsensor), 还有 accelerator sensor 可取得 x, y, z 三个轴上的加速度 (应用如平衡球, 小猴吃香蕉等) 应用程序调用(以下为关键代码) sensorManager=(SensorManager ...
Android的传感器
Created2010-08-20|2_Note0_Technic3_编程Android应用
Android 的传感器 #移动开发 #Android 1. sensor sensor 译做感应器或传感器,android 架构支持多种 sensor,手机硬件不一定支持每一种 2. android 系统支持的 sensor,以 froyo 为例(详见 SensorManager.java 中的定义) 重力 STANDARD_GRAVITY 加速度:XYZ 三个方向上的加速度 SENSOR_ACCELEROMETER 温度:周围温度 SENSOR_TEMPERATURE 磁场:XYZ 三轴上的磁场 SENSOR_MAGNETIC_FIELD 光线:周围亮度,用于调节对应的屏幕亮度 SENSOR_LIGHT 接近:相应传感器与物体的距离,如在接电话时,判断耳朵与手机的距离,耳朵触屏被忽略,适里黑屏 SENSOR_PROXIMITY 角度:XYZ 轴的角度 SENSOR_ORIENTATION SENSOR_ORIENTATION_RAW 其它 与具体应用相关,比如照相模块中实现的 CAMERA SENSOR 3. 如何访问 sensor 应用通过 SensorManager 访问各 ...
Android的键盘事件处理
Created2010-08-18|2_Note0_Technic3_编程Android应用
Android 的键盘事件处理 #移动开发 #Android 1. 基本流程 内核处理按键,通过设备文件的方式提供给 framework 层 framework 层的 KeyInputQueue.java 启动线程从设备文件中读出键码,然后把读出的键码按 kl 文件转成相应键值 (JNI 调用 EventHub.cpp),最后写入事件队列 framework 层的 WindowManagerService.java 启动线程从事件队列中读出键值,然后根据当前 focus 分发给相应窗口 UI 通过 KeyCharacterMap.java 处理 kcm 规则将用户基本按键与功能键 (Shift, Alt 等) 组合,得出最终按键 2. 两个配置文件 通常更换一种新的硬件,可能其键盘布局及键码与标准版本不同,不用更改代码,只要修改以下配置文件即可(如果增加新的未定义功能的按键,则需要修改代码) xxx.kl 位置 development/emulator/keymaps/.kl (1.6 版本模拟器使用) sdk/emulator/keymaps/.kl (2.2 版本 ...
android的图像识别
Created2010-08-18|2_Note0_Technic3_编程Android应用
android 的图像识别 #移动开发 #Android 1. 什么是 opencv 简单的说这是基于图像动态捕捉处理、人脸识别、机器人视觉处理、图像信息认知录入等多为一体计算机视觉库 2. 安装 下载 ndk [http://bbs.weiphone.com/read-htm-tid-521406.html ](http://bbs.weiphone.com/read-htm-tid-521406.html) 安装 ndk _ $ tar xvjf OpenCV-2.1.0.tar.bz2 $ cd android-ndk-1.6_r1 $ export NDKROOT=pwd $./build/host-setup.sh _ 下载 opencv [http://github.com/billmccord/OpenCV-Android/downloads ](http://github.com/billmccord/OpenCV-Android/downloads) 编译 opencv _ $ tar xvzf bill* $ cd app $ ln -s bill* ...
android的文字识别OCR
Created2010-08-18|2_Note0_Technic3_编程Android应用
android 的文字识别 OCR #移动开发 #Android 1. 功能: 光学字符识别 (OCR,Optical Character Recognition) 是指对文本资料进行扫描,然后对图像文件进行分析处理,获取文字及版面信息的过程 2. 典型应用: 名片扫描 3. android 源码实现: external/tesseract/* 4. 编译: _ $ cd external/tesseract/ $ mm _ 生成 libocr.so,push 系统 /system/lib/ 中,它也可以放在软件的安装包里 5. 例程下载: 在此下载 [http://code.google.com/p/mezzofanti/ ](http://code.google.com/p/mezzofanti/) 直接下载 apk 是能用的, 在源码中编译程序运行就退出,是由于可能 libocr.so 未安装, 把它 push 到系统中即可 _ $ adb push libocr.so /data/data/com.itwizard.mezzofanti/lib/ _ 主要借鉴 OCR ...
android之安装使用NDK
Created2010-08-16|2_Note0_Technic3_编程Android工具
android 之安装使用 NDK #移动开发 #Android 1. 为什么需要 NDK NDK 不能做界面,只能做功能支持的库。 NDK 与不使用 NDK,直接使用 JNI 相比,它能把库打包,并且很方便的安装。 NDK 使得没有源码的 eclipse 的环境编译 C/C++ 库变得非常方便。 NDK 通常是用来编译和安装 C/C++ 库的,常用做库的移植,很多软件会以此方式提供源码。 2. 下载 [http://bbs.weiphone.com/read-htm-tid-521406.html ](http://bbs.weiphone.com/read-htm-tid-521406.html) 3. 安装 NDK _ $ tar xvjf OpenCV-2.1.0.tar.bz2 $ cd android-ndk-1.6_r1 $ export NDKROOT=pwd $./build/host-setup.sh _ 4. 试用:编译其测试程序 _ $ _ _ make APP=hello-jni _ __ 此时生成 out/apps/hello-jni/libhello-jn ...
android之JNI
Created2010-08-16|2_Note0_Technic3_编程Android系统
android 之 JNI #移动开发 #Android 1. 为什么使用 JNI JNI(Java Native Interface)Java 程序中调用 C/C++ 开发的共享库,主要用于提高程序效率,或者 Android 应用对 C/C++ 库的调用(多用于调用移植的库,如语音合成库 pico,图像识别库 opencv 等) 2. android 源码中自带的实例 development/samples/SimpleJNI/* 3. 实例 编译环境 Ubuntu 10.04, android 源码环境 重要代码说明 java 代码 123456789101112131415161718192021222324252627_ package com.android.myjni; __ __ import android.app.Activity; __ import android.widget.TextView; __ import android.os.Bundle; __ __ public class MyJniActivity extends Activi ...
Android自带的人脸识别
Created2010-08-16|2_Note0_Technic3_编程Android应用
Android 自带的人脸识别 1. Android 自带的人脸识别 Android 自带的人脸识别只能识别出人脸在画面中的位置,中点,眼间距,角度等基本特性,提供给拍照性质的应用使用。从基本功能中不能得出明显的特征数据 2. 底层库支持 external/neven/* 3. 接口 frameworks/base/media/java/android/media/FaceDetector.java 4. Android 源码参考 packages/apps/Gallery/src/com/android/camera/* 5. 关键代码分析 _ package com.android.mydetect; _ _ _ _ import android.app.Activity; _ _ import android.widget.TextView; _ _ import android.os.Bundle; _ _ import android.media.FaceDetector; // _ _ 人脸识别接口 _ __ _ import android.widget.ImageVie ...
1…828384…89
avatar
Yan.xie
顺流而下还是逆流而上?
Articles
883
Tags
284
Categories
186
Follow Me
Announcement
This is my Blog
Recent Post
自建 NAS 系统指南2025-11-07
为什么我们总是卖飞2025-11-06
GitHub Copilot用量优化指南2025-11-06
选股中的财务指标运用2025-11-05
指标学习与应用2025-10-28
Categories
  • 0_IMO90
    • 工作1
    • 方法1
      • 工作1
    • 说给一个人听88
      • 01_自我建构36
        • 实修3
        • 思考与觉悟17
Tags
Transformer 数学 深度学习/扩散模型 辅助编程 阅读/社会学 概率 大模型 日常琐事 开源许可 讽刺 饮食 阅读哲学 人生哲学 模型工具 Agent 自动驾驶 CentOS Python/图形图像 模型优化 叙事治疗 随笔 知识库 版本管理 知识图/知识图谱 工作思考 卡片 模型增强 沟通 成长 认知建构 大语言模型 笔记 大型语言模型 语音 论文阅读 菜谱 关系 人际关系 Paper 驱动
Archives
  • November 20254
  • October 202517
  • September 20255
  • August 202518
  • July 202538
  • June 202537
  • May 202529
  • April 202516
Info
Article :
883
Total Count :
1234.9k
UV :
PV :
Last Push :
©2020 - 2025 By Yan.xie
Framework Hexo|Theme Butterfly
京公网安备11010802043346号
京ICP备2023029600号-1
Search
Loading the Database