今天总结下app备份还原

本文详细介绍了安卓APP的备份和还原过程,包括获取APP列表、判断备份路径、使用SAF权限、执行备份与还原操作,以及SAF的主要功能。在备份过程中,利用packageManager获取APP信息,使用文件通道进行高效复制。在还原时,通过安装apk实现。SAF提供方便的文件系统浏览,支持多用户和临时内容服务。
摘要由CSDN通过智能技术生成

1.获取手机上所有的APP列表?

2.每个APP包从哪里来?

3.如何备份?

4.如何还原?

5.saf的主要工作?


写完今天的任务就完成了~~~~


1.获取手机上所有的app列表

无疑要用到应用框架层的packageManager

packageManager.getInstalledPackages()可以获取目前安卓机上已经安装的PakageInfo ,包信息,包括,包名(即manifest 中appname )版本号,版本名称

apk的size可以通过提供的路径名new File(path)得出,apk的名称通过file.getName获取。

获取已经备份的apk的包名信息,可通过

pm.getPackageArchiveInfo(filePath, 0);

解析出来packageInfo


2.每个app包的路径是通过packageInfo 中就可以获取


3.如何备份。

1.如果需要备份的路径是saf路径则首先判断saf权限是否申请成功, 如果没有则会通过

Intent.ACTION_OPEN_DOCUMENT_TREE

申请saf权限

2.开始备份 : 需要备份到的路径是否存在,如果被选取备份的app之前已经备份过,则跳过,否则进行备份,用fileInputStream, fileOUtputstream也可以,我们可以用他们的getchannel方法,用chanel 的transferTo方法进行备份,能提高速度。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值