欢迎来到皮皮网网首页

【免费系统源码】【lua编写源码】【sift 源码下载】packageinstaller安装源码_安装包源码

来源:学习打卡小程序源码 时间:2024-11-24 17:32:17

1.Package Manager
2.安卓包管理机制之PackageInstaller安装APK
3.Android 7.1.1 Framework 修改记录(一) 静默安装/卸载 (pm命令抛异常的安装安装过来看看)
4.荣耀6中哪些软件可以卸载

packageinstaller安装源码_安装包源码

Package Manager

        PackageInstaller是安卓上默认的应用程序,用它来交互式地安装普通包文件。 PackageInstaller提供了用户界面来管理应用或者包文件。PackageInstaller调用一个叫 InstallAppProgress的activity来获取用户发出的指令。InstallAppProgress会请求Package Manager Service,然后通过indalld来安装包文件。源码提供在/packages/apps/PackageInstaller上。

        这个系统守护程序的首要角色是获取来自Package Manager Service的请求,而该请求是通过Linux套接字/dev/socket/installed获得的。

        Installd使用管理员权限执行一系列的步骤来安装APK。

        Package Manger是一个实际上管理应用程序安装、卸载和升级的API。当我们安装APK文件 时,Package Manager会解析APK包文件和显示确认信息。当我们点击OK按钮后,Package Manger会调用一个叫“InstallPackage”的方法,这个方法有四个参数,也就是uri、installFlags、observer和 installPackagename。Package Manger请求服务。

        Package Manger服务运行在系统服务进程中,而安装守护程序(installd)作为一个本地进程运行着,他们都在系统启动时开始运行。

安卓包管理机制之PackageInstaller安装APK

       前言

       本文继续探讨Android包管理机制中的PackageInstaller组件,特别是源码其在安装APK文件时的运作机制。讨论基于Android 8.0版本的包源源码。

       在PackageInstallerActivity中,安装安装调用startInstallConfirm方法后,源码安装确认界面显现给用户,包源免费系统源码用户选择继续安装应用程序时,安装安装触发PackageInstallerActivity的源码onClick方法。该方法处理确定和取消按钮的包源交互,主要关注确定按钮的安装安装响应,调用startInstall方法,源码从而跳转至InstallInstalling界面,包源关闭当前Activity。安装安装

       在InstallInstalling界面,源码根据保存的包源mSessionId和mInstallId进行安装处理。如果之前有保存信息,会根据mInstallId注册观察者,接收安装事件的回调,无论成功与否均关闭当前Activity。lua编写源码若无保存信息,则创建SessionParams,解析APK的参数,注册观察者,生成mInstallId,最终与PackageInstallerService进行交互。

       在InstallInstalling的onResume方法中,根据mSessionId获取SessionInfo,创建并执行InstallingAsyncTask,sift 源码下载将APK信息通过IO流写入PackageInstaller.Session。onPostExecute方法中创建PendingIntent,并通过PackageInstaller.Session的commit方法发送,最终调用PackageInstallerSession的commit方法,进入Java框架层处理。

       在Java框架层,通过PackageInstallerSession的commit方法,将APK信息封装为PackageInstallObserverAdapter,并通过Handler发送MSG_COMMIT消息。apacheorc源码调研该消息处理程序获取IPackageInstallObserver2类型的观察者,调用commitLocked方法,进一步调用PMS的installStage方法。如果在PMS中出现异常,会通过dispatchSessionFinished方法,调用观察者的onPackageInstalled方法,将异常信息回调给PackageInstallObserverAdapter。

       总结而言,PackageInstaller安装APK的宁国网站源码过程分为两个关键步骤:调用PackageInstallerActivity的onClick方法启动安装流程,然后在Java框架层中,通过PMS处理APK安装的具体细节。后续文章将深入探讨PMS中的复杂处理过程。

Android 7.1.1 Framework 修改记录(一) 静默安装/卸载 (pm命令抛异常的过来看看)

       RK平台Android 7.1.1版本下,为满足客户需求提供静默安装/卸载的API,团队选择了自行实现。

       初期探索发现,通过PM命令实现安装基本可行,且能够跳过未知来源进行安装。然而,尝试使用PM命令卸载时却遭遇异常问题。经过多番研究,团队最终决定深入系统源代码实现静默安装与静默卸载功能。

       实际上,桌面操作的卸载功能最终调用的是PackageManager.deletePackage方法。然而,此方法为隐藏API,虽然可通过引入framework.jar调用,操作繁琐。因此,团队决定利用PM命令作为卸载解决方案。

       实现原理基于PM命令的执行,实际上是由framework层的PackageInstallerService类负责处理。为允许非ROOT级用户执行卸载操作,团队修改了PackageInstallerService.java文件。通过增加SYSTEM_UID的支持,使得指定为系统应用的程序能够顺利执行卸载操作。若希望普通应用也能执行卸载,只需注释掉mAppOps.checkPackage(callingUid, callerPackageName)这行代码,但此操作需谨慎以避免潜在安全风险。

       完整封装后的代码已经实现,包括安装与卸载方法。至此,团队成功解决了静默安装与卸载的问题,满足了特定需求,同时优化了用户体验。

荣耀6中哪些软件可以卸载

       ä¸‹é¢æ˜¯åŽä¸ºè£è€€6的系统应用精简列表,仅供参考

       ç³»ç»Ÿåº”用主要放在下面几个地方:

       /system/app 系统apk

       /system/priv-app 系统apk

       /system/delapp 可删除的第三方应用

       /cust/preinstalled/public/app 系统集成的第三方应用等,放在cust分区可删除,但恢复出厂设置的时候还会出来

       æ‰€æœ‰odex后缀在删除apk后可删除,如果push进去修改过的APK更不能保留odex

       /system/app

       AGPSProvider.apk AGPS定位 不可删

       ApkBatchInstall.apk 程序安装用 不可删

       BaiduInput_for_Huawei.apk 输入法 可删

       BasicDreams.apk 动态壁纸 可删

       Bluetooth.apk 蓝牙功能 不可删

       Calculator.apk 计算器 可删

       Calendar.apk 日历界面 因为pkg名称跟google相同,如果想安装google calendar,需要删除这个apk,

       å¹¶ä¸”删除CalendarProvider.apk,用gapps里面的替代,否则有提醒时会报错

       CalendarProvider.apk 日历数据 同上

       CertInstaller.apk 证书安装 不可删

       ChnCmccAutoReg.apk CMCC应用 可删

       CmccDMClient.apk CMCC增强售后服务 ?

       CountLapseTime.apk 功耗相关 如果不用省电精灵,可以一同删除

       DocumentsUI.apk 选择文档界面 不可删

       DownloadProviderUi.apk 下载界面 不可删

       Email.apk 电子邮件 可删

       EmergencyData.apk 备份数据用 如果不用华为备份可删

       Exchange2.apk exchange邮箱 可删

       FaceLock.apk 人脸解锁 可删

       Galaxy4.apk 动态壁纸 可删

       GameBox.apk 游戏中心 可删

       GoogleTTS.apk google text to speech 建议不删

       HoloSpiralWallpaper.apk 动态壁纸 可删

       HTMLViewer.apk HTML源码查看器 建议不删

       HuaweiPayService.apk 华为支付 可删

       Huawei_Swype_for_Huawei.apk 滑动输入 可删

       HwAllBackup_CMCC.apk 华为备份 如果用钛备份不用这个,可删

       HwAppObserver.apk 第三方主题? 可删

       HwBigData.apk 华为大数据? 可删

       HwBluetoothImport.apk 蓝牙导入导出联系人 不可删

       HwCAService.apk 诺亚CA(日志) 可删

       HwDeskClock.apk 闹钟 看着办

       HwFileManager.apk 华为文件管理器 可删

       HwFlashlight.apk 手电筒 看着办

       HwFloatCalculator.apk 浮动计算器 可删

       HwFloatCalendar.apk 浮动日历 可删

       HwFloatMms.apk 浮动短信 可删

       HwFloatNotePad.apk 浮动记事本 可删

       HwFloatTasks.apk 悬浮菜单 可删

       HwFMRadio.apk 收音机 看着办

       HwID.apk 华为ID 可删

       HwInternetAudioService.apk 互联网音频IMCs 建议删除,如果仅冻结还会在后台运行

       HwLauncher6.apk 华为桌面 不用的话可以删,比如用google now luancher或nova launcher可完全替代

       HwLogCollectService.apk Log记录服务 可删

       HwLogTool.apk Log记录工具 可删

       HwMediaCenter.apk 音乐可删,但是删除之后锁屏界面双击不会出现音乐播放

       HwMeWidget_Honor.apk 华为集成widget 可删

       HwMirror.apk 镜子 看着办

       HwMultiscreen.apk 华为多屏互动 可删

       HwNotePad.apk 华为记事本 可删

       HwOUC.apk 系统升级服务 如果修改了系统分区就不能OTA升级了,留着这个也没什么用

       HwPhoneService.apk 华为手机服务

       HwPowerGenieEngine3.apk 省电精灵 可删

       HwProfileSwitcher.apk 情景模式切换 不用可删

       HwPushService.apk 华为推送 建议删除,如果仅冻结还会在后台运行

       HwRemoteController.apk 遥控器 看着办

       HwSoundRecorder.apk 华为录音机 可删

       HwStartupGuide.apk 华为初始化导航 可删

       HwSystemManager.apk 系统管理器 如果要用权限管理等,就保留,否则可删

       HwThemeManager.apk 主题 不用华为桌面的话可删

       HwWeatherClock.apk 华为天气widget 可删

       HwWiFiDirect.apk wifi direct功能 建议不删

       HwWiFiHotspot.apk Wifi热点 不可删

       KeyChain.apk 秘钥链 不可删

       LatinIME.apk google键盘 可删

       LiveWallpapers.apk 动态壁纸 可删

       LiveWallpapersPicker.apk 动态壁纸选择 建议不删

       MagicSmokeWallpapers.apk 动态壁纸 可删

       Magnifier.apk 放大镜 可删

       MMIFunctionTest.apk 工厂MMI测试 建议不删

       MMITest_II.apk 工厂MMI测试 建议不删

       MyCalendar.apk 日历widget 可删

       NfcNci.apk NFC功能 不可删

       NoiseField.apk 动态壁纸 可删

       OMACP.apk 配置信息用于OTA升级 如果不用OTA升级就可以删掉了

       PackageInstaller.apk 包安装界面 不可删

       PacProcessor.apk 处理代理自动配置的 不可删

       PhaseBeam.apk 动态壁纸 可删

       PhotoTable.apk 屏保 看着办

       PicoTts.apk text to speech 如果不用google语音功能可删除

       PrintSpooler.apk 打印 可删

       ProfileViewer.apk 貌似配置网络参数的? 可删?

       ProjectMenuAct.apk 工程菜单 建议不删

       Stk.apk SIM卡STK 建议不删

       StreamingProvider.apk 串流相关APN? 可删

       SystemUI.apk 系统UI 不可删

       TelephonyProvider.apk 通话信息存储服务 不可删

       TouchpalModuleOEM.apk 触宝公共号码 不用可删

       UEIAndroidServicesSDK.apk UEI公司的遥控驱动库 不用遥控的话可删

       UserDictionaryProvider.apk 用户词典 可删

       VisualizationWallpapers.apk 动态壁纸 可删

       VLife_huawei.apk 微乐动态壁纸 不用的话可删

       WAPPushManager.apk WAP推送管理 不用的话可删

       /system/priv-app/

       ApplicationsProvider.apk 应用数据库 不可删

       BackupRestoreConfirmation.apk 备份恢复 不可删

       Browser.apk 浏览器 可删

       Contacts.apk 联络人电话本 不可删

       ContactsProvider.apk 电话本存储 不可删

       DefaultContainerService.apk apk默认安装服务 不可删

       DownloadProvider.apk 下载 不可删

       ExternalStorageProvider.apk 外部存储 不可删

       FusedLocation.apk 定位相关 不可删

       Gallery2.apk 图库、相机 不用的话可删

       GmsCore.apk Google服务 建议不删

       GoogleLoginService.apk Google账号服务 建议不删

       GoogleServicesFramework.apk Google服务 建议不删

       HiSpace.apk 华为应用市场可删

       HwPhoneFinder.apk 手机找回 可删

       HwVmall.apk 华为商城 可删

       HwVPlayer.apk 播放器 可删

       InputDevices.apk 输入设备管理 建议不删,否则OTG功能受影响

       Keyguard.apk 锁屏相关 不可删

       MediaProvider.apk 媒体库 不可删

       Meituxiuxiu.apk 美图秀秀 看着办...

       Mms.apk 短信 如果有替代的可删

       MusicFX.apk 音乐 可删

       OneTimeInitializer.apk 首次开机使用 建议不删

       PapaqiSDK.apk 爱奇艺啪啪奇 可删,图库中会调用

       Phone.apk 电话 不可删

       ProxyHandler.apk 代理 不可删

       QuickSearchBox.apk 融合搜索 可删

       Settings.apk 设置 不可删

       SettingsProvider.apk 设置存储 不可删

       SharedStorageBackup.apk 共享数据备份服务 不可删

       Shell.apk android权限相关 不可删

       SmartcardService.apk 智能卡 建议不删

       Tag.apk NFC相关 看着办

       VpnDialogs.apk ***设置 不可删

       WallpaperCropper.apk 设置壁纸时剪切器选择 不可删

       /system/delapp/

       Mail.apk 移动邮箱 可删

       AirSharing.apk 华为即可分享 可删

       AirSharingCast.apk 华为即可分享 可删

       AirSharingCastClient.apk 华为即可分享 可删

       ApplicationManager.apk ?

       CMCCWifi.apk 移动定制apk 可删

       cmnavi.apk 移动定制apk 可删

       CMRead.apk 移动定制apk 可删

       Emag_GameHall.apk 移动定制apk 可删

       fetion.apk 飞信 可删

       iFlyIME.apk 讯飞输入法 可删

       ISJ_WH.apk 移动定制apk 可删

       lingxi.apk 灵犀语音助手 可删

       mcontact.apk 移动定制apk 可删

       MeituxiuxiuHelper.apk 美图秀秀 看着办

       MM.apk MM商场 可删

       MMPlugCartoon.apk MM商场

       MMPlugComic.apk MM商场

       MMPlugKvSafeCenter.apk MM商场

       MMPlugMusic.apk MM商场

       MMPlugRead.apk MM商场

       MMPlugVideo.apk MM商场

       MobilePortal.apk 移动门户 可删

       moffice.apk moffice 可删

       MyTime.apk 华为MyTime 可删

       OupengBrowser.apk 欧朋Opera 可删

       QQlive.apk qqlive 可删

       qqmusic.apk qq音乐 可删

       SohuTV.apk 搜狐TV 可删

       tmall.apk 天猫 可删

       T_Client.apk 免费WLAN 可删

       /cust/preinstalled/public/app/

       AMAP.apk 高德地图 可删

       BaiduSearch.apk 百度搜索 可删

       DM.apk 多米音乐 可删

       HwMotionRecognition.apk 手势控制 可删

       iReader.apk 掌阅 可删

       NetworkLocation_AMap.apk 高德AGPS服务 可删

       QQ.apk QQ 可删

       smartcom_itravel_w3.apk 惠通商旅 可删

       SohuNewsClient.apk 搜狐新闻 可删

       Taobao.apk 手机淘宝 可删

       Weibo.apk 微博可删

       å…¶ä»–可删除的例如

       /system/media/Pre-loaded/Pictures默认的图片

       /system/themes/ 下面有三个主题,如果不是用华为桌面,可以删除两个,留下默认的那个主题;还有一个icons包,是一个图标扩展包,

       æ‰€åº”用的主题中不包含的icons如果在这里有索引到,就会启用这个icon,基本上是把图标的底色延展出来,方便各种主题的剪裁,如果不用华为桌面可以删除

       /cust/Samples 下面有Music和Wallpaper可åˆ