android设备修改默认桌面为自定义应用

android设备修改默认桌面为自定义应用

应用场景
在一些专用安卓设备(例如丰巢柜),可能需要在点击默认的home键时启动自定义应用,屏蔽用户开启其他应用的入口,可通过下面介绍的方法将自己的应用设置为默认桌面。但是这时用户无法开启android设备的其他应用了,所以还需要为管理用户提供开启其他应用(例如系统设置)的入口。

1、修改默认桌面
假设需要设置为桌面应用app入口activity为MainActivity。

1.1 修改应用的AndroidManifest.xml
在MainActivity的intent-filter节点中添加如下配置:

1.2 创建工具类PackageListCache,缓存当前android安装的应用。

import android.app.Activity;
import com.alibaba.fastjson.JSONObject;
import java.util.HashMap;
import java.util.Map;

public final class PackageListCache {
    //应用报名对应的启动入口activity和app名称
    private static Map<String, JSONObject> PACKAGE_2_ACTIVITY = new HashMap<>();
    private static Activity MAIN_ACTIVITY = null;

    public static Activity getMainActivity() {
        return MAIN_ACTIVITY;
    }

    public static void setMainActivity(Activity mainActivity) {
        MAIN_ACTIVITY = mainActivity;
    }

    public static void addPackage(String pkg, JSONObject info) {
        PACKAGE_2_ACTIVITY.put(pkg, info);
    }

    public static Map<String, JSONObject> getPackage2Activity() {
        return PACKAGE_2_ACTIVITY;
    }
}

1.3 修改 MainActivity
1.3.1 MainActivity添加变量,存储当前安卓设备的安装应用。
private List localApps = new ArrayList<>();

1.3.2 MainActivity启动后获取安卓设备的安装应用,供其他逻辑使用。
在onCreate方法中添加如下处理:

localApps = getPackageManager().queryIntentActivities(mainIntent, 0);
PackageListCache.setMainActivity(this);
PackageManager pManager = MainActivity.this.getPackageManager();
if (localApps.size() > 0) {
    for (int i = 0; i < localApps.size(); i++) {
        ActivityInfo act = localApps.get(i).activityInfo;
        PackageListCache.addPackage(act.packageName, new JSONObject().fluentPut("name", act.name).fluentPut("label", localApps.get(i).loadLabel(pManager).toString()));
    }
}

1.4 在自定义应用中启动其他应用
String pkgName;//PackageListCache的PACKAGE_2_ACTIVITY中的key,即某个应用的包名

ComponentName componet = new ComponentName(pkgName, list.get(pkgName).getString("name"));
Intent intent = new Intent();
intent.setComponent(componet);
PackageListCache.getMainActivity().startActivity(intent);

在这里插入图片描述

1.5 说明
完成如上设置并启动自定义应用后,再点击系统home键会弹出桌面选项,可将当前自定义应用设置为默认桌面(如果设置为永久桌面,可在设置>应用>当前自定义应用>清除默认设置 来解除永久桌面)。

  • 2
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
安卓源码包android web应用Dialog对话框OCR图像识别listview相关EditText输入框Launcher 桌面45个合集: [四次元]Android Launcher 桌面分页滑动代码.rar [四次元]Android Launcher 源码修改可编译.rar [四次元]android 自定义对话框.rar [四次元]android-styled-dialogs 可自定义样式的dialog.zip [四次元]Android中实现Iphone样式的AlertDialog.zip [四次元]Android实现Windows风格的Dialog.zip [四次元]dlna库源代码包.zip [四次元]gridview分页效果.zip [四次元]HerilyAlertDialog完全自定义的Dialog.zip [四次元]HorizontalListViewDemo 横向滑动的ListView.zip [四次元]HorizontalListView仿微信发起群聊.zip [四次元]jqmMobileDemo-master.zip [四次元]jqmMobileDemo1_1-master.zip [四次元]listview 的各种动画效果.rar [四次元]listview 适配器 优化 重用.rar [四次元]ListView+CheckBox UI 完美版。实现 全选 、 全不选 、 删除等功能.rar [四次元]ListView停止滚动开启下载图片.zip [四次元]Listview分页加载数据.rar [四次元]ListView多级展示,item由对象Leaf提供数据,可设置多个控件.zip [四次元]listview实现图片的异步加载.rar [四次元]listview快速滑动,修改默认的滑动条.rar [四次元]ListView滚动气泡提示.rar [四次元]listview获取网络图片缓存优化.zip [四次元]Location1014.rar [四次元]map_baidu.zip [四次元]MyNFCDemon.rar [四次元]OAuth认证以及使用网易微博开放平台实现聊天功能.rar [四次元]一个ExpandableListView的例子,实现多级菜单分类展示.rar [四次元]仿QQ消息列表(ListView)滑动删除效果源码.rar [四次元]仿QQ的头像选择弹出的对话框,酷似!.zip [四次元]前面部分可以编辑后面部分不可编辑的EditText.zip [四次元]动态添加RadioGroup的RadioButton.zip [四次元]单排显示gridview并从解析JSON读取数据加载项目.zip [四次元]双列关联listview.rar [四次元]基于JBox2D的Android游戏开发全源码.zip [四次元]安卓桌面应用EyeRoom.zip [四次元]实现列表多选的DEMO.zip [四次元]带有拼音首字母排序的listview.rar [四次元]带有进度条的button.rar [四次元]最全的OCR图像识别技术源码内有说明.zip [四次元]横向ListView的完整实现(包含基于横向listview做的一个小相册demo).rar [四次元]横竖都能滑动的 listview 嵌套在一起的.zip [四次元]自定义单选、多选对话框及popwindow窗口实例源码.rar [四次元]自定义彩色Toast.rar [四次元]自定义组件实现可滑动的ToggleButton的功能..rar
Android设备默认launcher设置是指系统默认的启动器(Launcher)应用程序。启动器是用户在设备上看到和操作的主屏幕,它提供了桌面应用程序列表、小部件和壁纸等功能。 在Android设备上,不同的制造商可能会有不同的默认启动器设置,例如Samsung可能会有自己的启动器样式,而Google的Pixel设备则使用原生的Android启动器。 默认启动器有以下几个主要特点和功能: 1. 桌面默认启动器会在设备主屏幕上显示桌面,用户可以在桌面上添加和管理应用程序、小部件和快捷方式等。 2. 应用程序列表:用户可以通过默认启动器访问设备上安装的所有应用程序的列表,并进行搜索和排序。 3. 小部件:默认启动器支持用户在桌面上添加各种小部件,例如天气、日历、音乐播放器等,以便用户更方便地获取相关信息。 4. 壁纸:默认启动器还允许用户更改桌面背景壁纸,可以选择自己喜欢的图片或者使用系统提供的预设壁纸。 对于用户来说,选择适合自己的默认启动器可以增加使用Android设备的个性化和便利性。用户可以根据自己的需求和偏好,选择不同功能和样式的启动器来进行设置。有些启动器还提供了更多的自定义选项,例如主题、图标包等,使用户能够将设备界面个性化到自己喜欢的样子。 总之,Android设备默认启动器设置是一个重要的用户体验方面的设置选项,通过它可以实现设备主屏幕的个性化和功能拓展。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值