将应用设为Launcher很简单,只需在AndroidManifest.xml文件中添加以下两条属性即可:

<category android:name="android.intent.category.HOME" />

<category android:name="android.intent.category.DEFAULT" />

然而这样设置之后,系统就有了多个launcher程序,在没有默认launcher之前,启动launcher时都会弹出对话框给用户选择,用户需要选择自己的应用并选择always,才能将自己的应用设为默认Launcher。

为了避免这次多余的选择,我们可以通过修改Framework层代码来优先启动自己的launcher。

首先,在AndroidManifest.xml中再添加一条属性,用来将自己的launcher程序和其他launcher区分开来,如:

<category android:name="android.intent.category.rayland.home" />

然后,修改android/frameworks/base/services/java/com/android/server/am/ActivityManagerService.java,优先筛选有rayland.home属性的launcher,若没有则再筛选普通launcher。

这样改完之后,系统开机启动时会优先启动带特殊标识的launcher。但home按键按下后仍会弹出选择对话框,修改android/frameworks/base/core/java/com/android/internal/app/ResolverActivity.java,同样优先筛选有rayland.home属性的launcher,若没有则再筛选普通launcher。

这样修改完之后,只要安装了带特定属性的Launcher,在启动和跳转launcher时,都只会跳转到我们指定的launcher。

Android在保留原launcher程序前提下,将应用设为默认Launcher相关推荐

  1. 京牌车辆过户以后能不能保留原号?

    很多有北京指标的客户近期打电话询问黛黛,自己的京牌车卖了想换个新车/二手车,但是自己的车牌号对自己有很大意义或者有的号比较好比较顺,自己比较喜欢,不想换掉号牌,能不能保留原号呢? 当然可以. 那保留原 ...

  2. Android内置多个launcher设置默认launcher

    Android设置默认launcher 前言 高通 code MTK code 结语 前言 launcher因为开机即启动,若添加默认launcher过早则可能导致其他进程崩溃,添加过晚则起不到启动默 ...

  3. Android 内置多个launcher 设置默认launcher

    前言 launcher因为开机即启动,若添加默认launcher过早则可能导致其他进程崩溃,添加过晚则起不到启动默认 设置的效果且会弹出选择launcher的提示框. 查看了一些其他的修改方法,均需在 ...

  4. android+主界面所有应用程序图标添加统一背景主题,Android 4.0替Launcher主界面所有应用程序图标添加统一背景主题...

    当前位置:我的异常网» Android » Android 4.0替Launcher主界面所有应用程序图标添加 Android 4.0替Launcher主界面所有应用程序图标添加统一背景主题 www. ...

  5. android studio 跳转后保留原页面数据_这些技巧和习惯,让你的原生 Android 手机更好用(上篇)...

    从此前的 EMUI 9 到尚未正式推出的 ColorOS 6,硬件上难以突破技术限制的国产 Android 手机厂商,近来都开始在软件体验,即定制安卓 ROM 上大做文章.国内长久以来糟糕的安卓生态体 ...

  6. 编写名为censor的函数,用来把字符串中出现的每一处字母“foo”替换成“xxx”。例如,字符串“food fool”会变为“xxxd xxxl”。再不失清晰性的前提下程序越短越好

    编写名为censor的函数,用来把字符串中出现的每一处字母"foo"替换成"xxx".例如,字符串"food fool"会变为"x ...

  7. 如何用LightningChart创建Android图表数据可视化应用程序?(下)

    LightningChart JS 是一款高性能的 JavaScript 图表工具,专注于性能密集型.实时可视化图表解决方案. LightningChart .JS | 下载试用(qun:740060 ...

  8. android开发:如何在卸载应用程序操作下,不删除原来程序数据库?

    情景: 做项目中发现,如果手动卸载安卓应用程序,会清除掉应用原来的数据,比如sqlite3数据库中的数据,为了避免用户卸载应用程序操作下,不会删掉原来的数据. 实现: public class MyA ...

  9. Android开发指南 1──应用程序基础

    登录 |  注册 译言精选 订阅 社区 译言译事 翻译答问 译言帮助 文库 原文库 译文库 全部项目 空间 控制台 个人主页 发布 发布原文 发布翻译 发布编译 发布原创 首页 商业 科技 文化 体坛 ...

最新文章

  1. php的反射技术,PHP 反射使用
  2. 闪灯什么意思_车灯闪1下、2下、3下各代表什么意思?关键时刻可以保命
  3. 下游传递唯一序列号如何实现幂等性?
  4. TypeScript 枚举指南
  5. Nginx模块学习之————accesskey权限模块使用(简单的m3u8防盗链)
  6. 2/7 SELECT语句:排序(ORDER BY)
  7. 论文阅读 - Jukebox: A Generative Model for Music
  8. SilverLight:基础控件使用(5)-TreeView控件-基本使用
  9. Oracle的dbf文件迁移
  10. abap 创建出口历程_SAP ABAP第一,两,三代出口型BADI实现 解释的概念
  11. VNPY2.0火币期货交易接口配置使用
  12. [公告]请不要在首页转载文章
  13. python最好的五个库_5 个Python 库,照亮你的机器学习之路
  14. php 简繁体字同时显示_(C++/php/Swift/Go/Ruby 篇)2020 年最火编程语言出炉!关键特性、普及程度、薪资全方位解读...
  15. cab文件打包的ActiveX控件(转)
  16. ES_BoolQueryBuilder
  17. 健身 赚钱 ; 旅行 用心爱一个人就行了 其他的都会开挂来临~
  18. android微信下拉出现小程序,微信下拉出现小程序怎么关闭 微信下拉小程序去掉方法...
  19. CNCC 2022| 隐私计算:理论、技术、应用与未来
  20. #ACCV2022还有两周截稿#疫情过后期待相聚澳门,相邀参与亚洲视觉盛会

热门文章

  1. Vue项目的性能优化
  2. 2022-2028全球汽车发电机用集电环行业调研及趋势分析报告
  3. 云天售后服务软件-手机APP介绍
  4. OA JBPM中的公文(发文、收文)流程
  5. SAPIEN PowerShell Studio 介绍
  6. jquary实现时间轴特效
  7. 苹果屏幕上的小圆点_原来苹果手机轻点两下就能截屏,黑科技十足,我也是才发现...
  8. MSP430fr6989配合A7129发送一帧无线数据包的操作过程
  9. 8m照片宽和高是多少_世界上最大的相册:每页宽达8米(能容纳一万张照片)
  10. 好书推荐|一本我舍不得送人的书