将Android APP安装到sm8550 HDK的NVMe SSD
APP存储路径
在Android中,App在运行过程中主要访问的数据路径通常包括以下几个方面:
内部存储(Internal Storage):App会访问其私有的内部存储空间,这个空间通常位于:
/data/data/<package_name>/:这个目录是每个App的专属内存空间,用于存储私有数据,如数据库、SharedPreferences、文件等。
外部存储(External Storage):如果App需要存储对用户可见的数据或是共享文件,可能会访问外部存储:
/sdcard/Android/data/<package_name>/ 或 /storage/emulated/0/Android/data/<package_name>/:用于存储可被用户或者设备上其他App访问的非私有数据。
缓存目录(Cache):App运行过程中会产生临时数据,内部缓存路径为:
/data/data/<package_name>/cache/:内部缓存目录,用于临时存储数据。
外部缓存路径为:
/sdcard/Android/data/<package_name>/cache/:外部缓存目录,也用于临时存储,但存储在外部存储上。
应用程序资源和代码(Application Resources and Code):
/data/app/<package_name>/:App安装在这个位置,在这里可以找到APK文件以及和App相关的其他执行文件。
系统提供的公共目录:一些公共的数据,如音乐、照片等,App可以通过相应权限访问系统提供的公共目录:
/sdcard/Music/
/sdcard/Pictures/
/sdcard/Download/等等。
方法一:基于mount --bind方法
# selinux会检测权限问题所以先关闭它
setenforce 0
# 创建挂载点
mkdir /data/nvme_ssd
# 挂载nvme ssd
mount /dev/block/nvme0n1p1 /data/nvme_ssd
# 复制目录到nvme ssd
cp -r -p /data/data /data/nvme_ssd/
cp -r -p /data/app /data/nvme_ssd/
cp -r -p /sdcard/Android /data/nvme_ssd/
# 挂载目录到nvme ssd
mount --bind /data/nvme_ssd/data /data/data
mount --bind /data/nvme_ssd/app /data/app
mount --bind /data/nvme_ssd/Android /sdcard/Android
# 查看挂载结果
df -h -a
方法二:/data/app路径转移到NVMe设备
# selinux会检测权限问题所以先关闭它
setenforce 0
# 将盘挂载到/data/app路径下
mount /dev/block/nvme0n1p1 /data/app
# 修改目录权限
chown -R system:system /data/app
方法三:/data/data路径软连接到NVMe设备
因为这里已经存储了很多原厂的app数据,而且各个目录/各级目录的权限也不同,因此修改起来比较麻烦
确定要迁移的APP,这里以com.sohu.inputmethod.sogou为例
# 在/data/app下创建新的data目录
mkdir /data/app/data
# 修改权限
chown -R system:system /data/app/data
# 迁移APP数据
mv /data/data/com.sohu.inputmethod.sogou /data/app/data/
# 看一下权限所有者,应该没有变,是app号
ls -lh /data/app/data
total 3.0K
drwx------ 9 u0_a163 u0_a163 3.4K 2024-02-26 01:42 com.sohu.inputmethod.sogou
# 创建软连接
ln -s /data/app/data/com.sohu.inputmethod.sogou /data/data/com.sohu.inputmethod.sogou
# 修改软连接权限
chown -h u0_a163:u0_a163 /data/data/com.sohu.inputmethod.sogou
#看一下修改结果
cd /data/data
ls -lh
lrwxrwxrwx 1 u0_a163 u0_a163 41 2024-02-26 01:46 com.sohu.inputmethod.sogou -> /data/app/data/com.sohu.inputmethod.sogou
相关文章:
将Android APP安装到sm8550 HDK的NVMe SSD
APP存储路径 在Android中,App在运行过程中主要访问的数据路径通常包括以下几个方面: 内部存储(Internal Storage):App会访问其私有的内部存储空间,这个空间通常位于: /data/data/<package…...
(Arcgis)Python编程批量将HDF5文件转换为TIFF格式并应用地理转换和投影信息
国家青藏高原科学数据中心下载中国1千米分辨率逐日全天候地表土壤水分数据集(2003-2022) 问题:数据在arcgis打开特别大,无法和矢量数据重合,没有设置地理坐标系 数据在网站上提供了投影信息,提示可以进行py…...
Linux:进度条的创建
目录 使用工具的简单介绍: \r : fflush : 倒计时的创建: 倒计时的工作原理: 进度条的创建: 不同场景下、打印任意长度的进度条: main .c procbor.c 测试效果: 使用工具…...
treeview
QML自定义一个TreeView,使用ListView递归 在 Qt5 的 QtQuick.Controls 2.x 中还没有 TreeView 这个控件(在 Qt6 中出了一个继承自 TableView 的 TreeView),而且 QtQuick.Controls 1.x 中的也需要配合 C model 来自定义,…...
Android开发中自定义View实现RecyclerView下划线
本篇文章主要讲解的是有关RecyclerView下划线的使用,主要有几个方法,具体如下: 第一种方式:网格分割线 public class GridDivider extends RecyclerView.ItemDecoration { private Drawable mDividerDarwable; private i…...
MySQL前百分之N问题--percent_rank()函数
PERCENT_RANK()函数 PERCENT_RANK()函数用于将每行按照(rank - 1) / (rows - 1)进行计算,用以求MySQL中前百分之N问题。其中,rank为RANK()函数产生的序号,rows为当前窗口的记录总行数 PERCENT_RANK()函数返回介于 0 和 1 之间的小数值 selectstudent_…...
【高效开发工具系列】Wolfram Alpha
💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…...
分享7种SQL的进阶用法
推荐一款ChatGPT4.0国内站点,每日有免费使用额度,支持PC、APP、VScode插件同步使用 SQL(Structured Query Language)是一种强大的数据库查询和操作语言,它用于与关系数据库进行交互。随着数据的不断增长和应用需求的日益复杂,掌握SQL的进阶用法对于数据库管理员、数据分析…...
protobuf-go pragma.go 文件介绍
pragma.go 文件 文件位于: https://github.com/protocolbuffers/protobuf-go/blob/master/internal/pragma/pragma.go 该文件核心思想: 利用 Golang 语法机制,扩展 Golang 语言特性 目前,该文件提供以下 4 个功能: …...
C#设置程序开机启动
1:获取当前用户: System.Security.Principal.WindowsIdentity identity System.Security.Principal.WindowsIdentity.GetCurrent();System.Security.Principal.WindowsPrincipal principal new System.Security.Principal.WindowsPrincipal(identity);…...
爱可声助听器参与南湖区价值百万公益助残捐赠活动成功举行
“声音大小合适吗?能听清楚吗?”今天下午,一场助残捐赠活动在南湖区凤桥镇悄然举行,杭州爱听科技有限公司带着验配团队和听力检测设备来到活动现场,为南湖区听障残疾人和老人适配助听器。 家住余新镇的75岁的周奶奶身体…...
SpringBoot 实现定时任务
在项目我们会有很多需要在某一特定时刻自动触发某一时间的需求,例如我们提交订单但未支付的超过一定时间后需要自动取消订单。 定时任务实现的几种方式: Timer:java自带的java.util.Timer类,使用这种方式允许你调度一个java.util…...
将Vue2中的console.log调试信息移除
前端项目构建生产环境下的package时,咱们肯定要去掉development环境下的console.log,如果挨个注释可就太费劲了,本文介绍怎么使用 babel-plugin-transform-remove-console 移除前端项目中所有的console.log. 1. 安装依赖 npm install babel-…...
EMC设计检查建议,让PCB layout达到最佳性能
EMC:Electro Magnetic Compatibility的简称,也称电磁兼容,各种电气或电子设备在电磁环境复杂的共同空间中,以规定的安全系数满足设计要求的正常工作能力。 本章对于 RK3588产品设计中的 ESD/EMI防护设计及EMC的设计检查给出了建议…...
常用抓包软件集合(Fiddler、Charles)
1. Fiddler 介绍:Fiddler是一个免费的HTTP和HTTPS调试工具,支持Windows平台。它可以捕获HTTP和HTTPS流量,并提供了丰富的调试和分析功能。优点:易于安装、易于使用、支持多种扩展、可以提高开发效率。缺点:只支持Wind…...
C++入门(一)— 使用VScode开发简介
文章目录 C 介绍C 擅长领域C 程序是如何开发编译器、链接器和库编译预处理编译阶段汇编阶段链接阶段 安装集成开发环境 (IDE)配置编译器:构建配置配置编译器:编译器扩展配置编译器:警告和错误级别配置编译器࿱…...
PeakCAN连接到WSL2 Debian
操作步骤 按照以下步骤进行操作: 在Windows下安装PeakCAN驱动并安装,地址是https://www.peak-system.com/PCAN-USB.199.0.html?&L1 在Windows下安装usbipd,地址是https://github.com/dorssel/usbipd-win/releases,最新版是…...
Spring Boot导出EXCEL 文件
主要功能:实现java导出excel到本地 JDK版本:openJDK 20.0.1 依赖pom.xml <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0" xmlns:xsi"http://www.w3.org/2001/XMLSchem…...
编程笔记 html5cssjs 060 css响应式布局
编程笔记 html5&css&js 060 css响应式布局 一、响应式布局二、Bootstrap简介总结 CSS响应式布局是一种可以在不同设备(例如桌面电脑、平板电脑、手机等)上自动调整页面布局和样式的技术。 一、响应式布局 使用CSS响应式布局的关键是媒体查询&am…...
建筑行业如何应用3D开发工具HOOPS提升实时设计体验?
建筑行业一直在迅速发展,技术的不断创新也为其带来了新的机遇与挑战。在这一领域,三维图形技术的应用变得尤为重要。HOOPS技术,作为一套用于开发三维图形应用程序的工具和库,为建筑行业带来了深刻的变革。本文将探讨HOOPS技术在建…...
网络安全学习(面试题)
1、jeecg框架有哪些漏洞, 弱口令漏洞,admin/123456,jeecg/123456,jeecg/jeecg123 信息泄露,接口任意用户密码重置,sql注入等历史漏洞,用工具一键梭哈 找了好久,一直都没找到学校关于…...
高效下载B站视频全攻略:Downkyi让你轻松管理视频资源
高效下载B站视频全攻略:Downkyi让你轻松管理视频资源 【免费下载链接】downkyi 哔哩下载姬downkyi,哔哩哔哩网站视频下载工具,支持批量下载,支持8K、HDR、杜比视界,提供工具箱(音视频提取、去水印等&#x…...
mbed OS USB串口缓冲库:线程安全环形缓冲设计
1. 项目概述buffered-serial0是一个专为 ARM mbed OS 平台设计的轻量级串口缓冲封装库,其核心目标是为 mbed 平台默认的主 USB 虚拟串口(即UART0,在 mbed 中通常映射为Serial pc(USBTX, USBRX))提供可靠、线程安全、零拷贝倾向的底…...
告别纯手工!用X-AnyLabeling的SAM2模型,5分钟搞定复杂目标分割标注
5分钟解锁X-AnyLabeling的SAM2黑科技:复杂目标分割标注效率提升指南 当面对医学影像中不规则肿瘤轮廓、遥感图像中的破碎地块边界,或是工业质检场景下的缺陷区域时,传统矩形框标注就像用粉笔画框测量云朵形状——既笨拙又低效。X-AnyLabelin…...
智慧教育——解读AI一体化智慧校园解决方案【附全文阅读】
适应人群为学校管理人员、教师、学生、技术运维人员及教育信息化建设相关从业者。主要内容围绕 AI 一体化智慧校园建设,阐述总体规划及革命性意义(提升教学管理水平、降低成本等);介绍八大应用中心(教学管理、物联网管控、校园安全等),涵盖智能选课排课、校园安防监控等…...
OpenClaw语音交互方案:千问3.5-27B对接Whisper实现听写
OpenClaw语音交互方案:千问3.5-27B对接Whisper实现听写 1. 为什么需要语音交互自动化 上个月帮朋友整理一场3小时的行业访谈录音时,我对着逐字稿反复暂停播放、标记重点、提炼观点,整整花了6小时才完成笔记。这种机械劳动让我开始思考&…...
为什么80%AI率降完后还有残留?根本原因在这
你用了降AI工具,处理前90%,处理后17%。 17%达标了,但还是有AI率残留。或者更糟,处理后22%,还是没过。 为什么工具处理后AI率不能降到0%?残留从哪来?怎么进一步处理? 残留AI率的三…...
告别卡顿:在Windows10上通过QEMU与WHPX硬件加速高效部署Ubuntu20.04开发环境
1. 为什么选择QEMUWHPX方案? 很多开发者都遇到过这样的困境:在Windows系统上运行Linux虚拟机时,要么性能拉胯到让人抓狂,要么配置复杂得让人望而却步。我之前用VMware跑Ubuntu时,光是开个浏览器就能让CPU飙到100%&…...
从实战到复盘:K8s服务器电子数据取证竞赛全解析与核心技巧
1. K8s服务器电子数据取证竞赛全景解析 第一次参加K8s服务器电子数据取证竞赛时,我完全被复杂的集群环境搞懵了。三个节点、七个命名空间、近20个Pod,还有各种加密算法和数据库连接,简直像走进了一个技术迷宫。但经过几轮实战后,我…...
“16QAM调制与解调系统的SystemView仿真及分析”
通信原理 systemview 16QAM调制与解调系统的仿真 16QAM调制解调系统与解调系统的仿真 用SystemView建立一个16QAM调制解调器电路,分析理解系统的各个模块功能,观察波形图 判断是不是实现了16QAM调制解调系统功能 基本要求: (1)在SystemView软 件中构建短波16QAM仿真…...
