Android7.0中如何使用MTK设置默认桌面
发表于:2024-09-22 作者:千家信息网编辑
千家信息网最后更新 2024年09月22日,这篇文章主要讲解了"Android7.0中如何使用MTK设置默认桌面",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"Android7.0中如何使用MTK
千家信息网最后更新 2024年09月22日Android7.0中如何使用MTK设置默认桌面
这篇文章主要讲解了"Android7.0中如何使用MTK设置默认桌面",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"Android7.0中如何使用MTK设置默认桌面"吧!
1.找到安装应用的文件
frameworks\base\services\core\java\com\android\server\pm\PackageManagerService.java try { PackageParser.Package newPackage = scanPackageTracedLI(pkg, policyFlags, scanFlags, System.currentTimeMillis(), user); updateSettingsLI(newPackage, installerPackageName, null, res, user); if (res.returnCode == PackageManager.INSTALL_SUCCEEDED) { prepareAppDataAfterInstallLIF(newPackage); Log.d("yh", "pkgName " +pkgName); // 由于客户的应用保密 这里使用点心桌面的包名---com.dianxinos.dxhome if (pkgName.equals("com.dianxinos.dxhome")){ //发送广播 Intent intent = new Intent("android.intent.action.UPDATE_LANUCHER_APPS"); mContext.sendBroadcast(intent); } //------------------------ } else { // Remove package from internal structures, but keep around any // data that might have already existed deletePackageLIF(pkgName, UserHandle.ALL, false, null, PackageManager.DELETE_KEEP_DATA, res.removedInfo, true, null); } } catch (PackageManagerException e) { res.setError("Package couldn't be installed in " + pkg.codePath, e); } Trace.traceEnd(TRACE_TAG_PACKAGE_MANAGER); }
2.由于设置默认桌面时,是在Settings中设置的所以广播接收者在settings中添加并设置默认桌面(添加文件-packages\apps\Settings\src\com\android\settings下-UpdateLanucherReceiver.java)
package com.android.settings;import android.content.BroadcastReceiver;import android.content.Context;import android.content.Intent;import android.content.ComponentName;import android.content.IntentFilter;import android.content.pm.PackageManager;import android.content.pm.ResolveInfo;import java.util.ArrayList;import android.util.Log;import android.content.pm.ActivityInfo;import java.util.List;public class UpdateLanucherReceiver extends BroadcastReceiver { public UpdateLanucherReceiver() { } @Override public void onReceive(Context context, Intent intent) { if (intent.getAction().equals("android.intent.action.UPDATE_LANUCHER_APPS")) { Log.e("yhyh" ," onReceive"); final PackageManager mPm = context.getPackageManager(); // 点心桌面的包名类名 com.dianxinos.dxhome / com.nd.hilauncherdev.launcher.Launcher设置默认桌面 ComponentName DefaultLauncher=new ComponentName(" com.dianxinos.dxhome", "com.nd.hilauncherdev.launcher.Launcher"); ArrayListhomeActivities = new ArrayList (); ComponentName currentDefaultHome = mPm.getHomeActivities(homeActivities); ComponentName[]mHomeComponentSet = new ComponentName[homeActivities.size()]; for (int i = 0; i < homeActivities.size(); i++) { final ResolveInfo candidate = homeActivities.get(i); Log.e("yhyh","homeActivitie: candidate = "+candidate); final ActivityInfo activityInfo= candidate.activityInfo; ComponentName activityName = new ComponentName(activityInfo.packageName, activityInfo.name); mHomeComponentSet[i] = activityName; } IntentFilter mHomeFilter = new IntentFilter(Intent.ACTION_MAIN); mHomeFilter.addCategory(Intent.CATEGORY_HOME); mHomeFilter.addCategory(Intent.CATEGORY_DEFAULT); List Activities=new ArrayList(); mPm.replacePreferredActivity(mHomeFilter, IntentFilter.MATCH_CATEGORY_EMPTY,mHomeComponentSet, DefaultLauncher); //刷新桌面 Intent intent2 = new Intent(Intent.ACTION_MAIN); intent2.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); intent2.addCategory(Intent.CATEGORY_HOME); context.startActivity(intent2); } }}
3.packages\apps\Settings\AndroidManifest.xml
感谢各位的阅读,以上就是"Android7.0中如何使用MTK设置默认桌面"的内容了,经过本文的学习后,相信大家对Android7.0中如何使用MTK设置默认桌面这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!
桌面
学习
内容
文件
点心
广播
应用
客户
就是
思路
情况
接收者
文章
是在
更多
知识
知识点
篇文章
类名
跟着
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
工行软件开发中心架构
网络安全监测装置11型
fish game服务器是什么
大渡口区网络软件开发流程报价表
给网络安全饭圈乱象的海报
突发网络安全应急处置预案
ajax数据库查询结果
贵阳互联网金融科技有限公司
惠普服务器默认ilo地址
郧阳区专业软件开发市场
软件开发人员劳务费
网络安全员法制竞赛
直销软件开发北京
如何给服务器安装防护
网络安全中菠菜是啥意思
北京易安天下网络技术
陕西东信网络技术有限公司
沃达丰网络安全管理
电脑变免流服务器
河南软件开发大专
一念逍遥找不到服务器了
数据库迁移技术要求
酒店管理服务器配置
access数据库答题系统
网吧游戏服务器软件
宇视8500接入大华存储服务器
关于网络安全提出建议和意见
沈阳区块链软件开发
西安java软件开发行情
软件开发的架构