`
dimple
  • 浏览: 95651 次
  • 性别: Icon_minigender_1
  • 来自: 辽宁
社区版块
存档分类
最新评论

Android应用自动添加桌面图标

阅读更多

每个可以交互的应用,在项目清单文件中都有Launcher类,除了提示系统这个Activity是入口函数外,还会在应用列表中添加一个应用的快捷图 标。本文讲述Launcher通过自己注册的InstallShortCutReceiver和UnInstallShortCutReceiver实现 了快捷方式图标的生成与移除过程,分析外部apk实用Intent请求生成快捷方式和移除快捷方式图标的问题。

 

添加图标:

 Intent intent = new Intent("com.android.launcher.action.INSTALL_SHORTCUT");
  intent.putExtra(Intent.EXTRA_SHORTCUT_NAME, getString(R.string.app_name));
  // 是否可以有多个快捷方式的副本,参数如果是true就可以生成多个快捷方式,如果是false就不会重复添加
  intent.putExtra("duplicate", false);
  
  Intent intent2 = new Intent(Intent.ACTION_MAIN);
  intent2.addCategory(Intent.CATEGORY_LAUNCHER);
  // 删除的应用程序的ComponentName,即应用程序包名+activity的名字
  intent2.setComponent(new ComponentName(this.getPackageName(), this.getPackageName() + ".Main"));

  intent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, intent2);
  intent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, Intent.ShortcutIconResource.fromContext(this,
    R.drawable.icon));
  sendBroadcast(intent);

 

需要添加的权限:

<uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT" />

 

删除图标:

 

Intent intent = new Intent("com.android.launcher.action.UNINSTALL_SHORTCUT" );
  intent.putExtra(Intent.EXTRA_SHORTCUT_NAME, appName);
// 要删除的应用程序的ComponentName,即应用程序包名+activity的名字
  intent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, new Intent()
  .setComponent(new ComponentName(info.activityInfo.packageName,
    info.activityInfo.name)).setAction("android.intent.action.MAIN"));
  sendBroadcast(intent);

 

添加删除的权限:

 

<uses-permission android:name="com.android.launcher.permission.UNINSTALL_SHORTCUT"/>
 
分享到:
评论

相关推荐

    安卓添加桌面图标

    在Android系统中,添加桌面图标是一项常见的功能,它能让用户快速启动应用或执行特定操作。本文将详细解析如何通过源代码实现向Android设备添加桌面图标。 首先,我们需要了解Android的Intent系统,它是Android应用...

    怎么让一个APP隐藏桌面图标与启动这个APP

    在Android和iOS操作系统中,隐藏应用的桌面图标和启动应用有特定的方法,这些方法涉及到系统权限和编程技术。以下是对这两个平台的详细说明: **Android系统:** 1. **隐藏桌面图标:** - **使用快捷方式:** ...

    android多个图标显示在桌面上

    要实现多个桌面图标,我们需要在Manifest文件中为每个需要独立显示图标的Activity添加特定的标签。 1. **定义多个Activity**:为每个要显示为独立图标的Activity创建一个新的类,并在AndroidManifest.xml中声明。...

    android 应用 源代码——桌面小程序 免费

    以下是一些关于Android应用源代码和桌面小程序开发的重要知识点: 1. **Android SDK**: 开发Android应用的基础是Android Software Development Kit (SDK),它包含了开发者需要的所有工具,包括编译器、模拟器、调试...

    android如何添加桌面图标和卸载程序后自动删除图标

    总之,添加和删除Android应用的桌面图标涉及到对Intent的正确使用,同时考虑到安全性和权限限制。在某些情况下,你可能需要采用间接的方式来达到目的,例如在应用启动时检查自身状态并提醒用户删除图标。在设计这样...

    9.0 10.0Launcher3设置app图标和hotseat图标为圆角图标

    在Android系统中,Launcher3是默认的主屏幕和应用程序抽屉管理器,它负责显示和管理手机上的应用快捷方式和小部件。随着Android版本的更新,界面设计也在不断进化,9.0和10.0版本引入了圆角图标的设计趋势,以提供...

    Android 12.0 Launcher 客制化指导手册.pdf

    Hotseat(快捷方式栏)的图标会根据屏幕尺寸和设备方向自动调整大小和位置。 **4.5 最近任务扩展功能** 对最近使用的应用卡片进行客制化,如添加更多卡片、修改滑动行为等。 ### 5. **注意事项** 在进行Launcher...

    一种加快定制android系统桌面快捷图标的方法.docx

    Launcher是Android系统中负责管理桌面图标和应用启动的组件。开发者提取Launcher的数据库,通过对数据库的查询,找到被拖到桌面的快捷图标所对应的包名和类名。这些信息是每个应用程序在系统中的唯一标识,它们是...

    解析Android应用启动后自动创建桌面快捷方式的实现方法

    总的来说,Android应用自动创建桌面快捷方式是通过发送一个特定的Broadcast Intent实现的,涉及到对`com.android.launcher.permission.INSTALL_SHORTCUT`权限的使用。同时,应考虑到用户体验,合理地控制创建快捷...

    Android应用源码之隐藏安装包图标使用其他应用启动本应用-IT计算机-毕业设计.zip

    在Android应用开发中,有时我们可能需要实现一些特殊的功能,比如隐藏应用的主启动图标,使得用户在手机桌面看不到该应用的快捷方式,但依然可以通过其他应用或特定方式来启动它。这种技术常用于系统应用或者希望...

    Android自定义桌面2.0

    在Android系统中,桌面应用程序(Launcher)是用户与设备交互的主要入口,允许用户启动其他应用、管理快捷方式和小部件。"Android自定义桌面2.0"是一个项目,旨在提供一个更加个性化和功能丰富的桌面体验,它可能...

    Android 桌面快捷方式

    1. **通过应用抽屉**:当您安装一个新的应用后,Android系统通常会在桌面自动创建一个快捷方式。如果系统没有这样做,你可以打开应用抽屉,找到你需要的应用,长按应用图标,然后拖动到桌面。 2. **通过应用信息**...

    Android widget 桌面插件

    在Android系统中,Widget是应用程序可以提供的一种桌面扩展功能,...理解并掌握Widget的开发技术,对于提升Android应用的互动性和实用性具有重要意义。通过深入研究和实践,你将能创建出更加丰富多彩和实用的桌面插件。

    超多Android小图标

    在Android应用开发中,图标是用户界面不可或缺的一部分,它们提供了视觉指示,帮助用户识别和操作应用中的各个元素。本资源“超多Android小图标”包含了丰富的图标集合,适合用于多种场景,如应用图标、菜单图标、...

    android 类似于桌面切换的滑动效果

    在Android开发中,实现“类似于桌面切换的...通过以上步骤,开发者可以为Android应用构建出一个流畅、有弹性的滑动界面,提供类似Android桌面的用户体验。同时,不断优化动画性能和手势响应,将使应用更加吸引用户。

    android桌面程序Launcher

    1. **Android组件**: Activity、Service、BroadcastReceiver和ContentProvider是Android应用的四大组件,其中Activity在Launcher中尤为重要。 2. **意图(Intent)**: Intent用于在组件之间传递消息,比如启动一个...

    900多个android开发小图标素材

    在Android应用开发中,图标是用户界面不可或缺的组成部分,它们为用户提供直观的视觉标识,帮助用户识别和理解应用的功能。本资源包含超过900个专门为Android开发设计的小图标素材,这些图标覆盖了多种风格、类型和...

    androidlauncher应用开发完整清晰版

    - **智能排序**:根据用户的使用习惯自动调整应用图标顺序。 - **手势定制**:允许用户自定义手势操作,提高操作便捷性。 3. **适配不同设备**: - **屏幕尺寸适应**:确保Launcher能在不同尺寸的屏幕上正常显示...

    X9桌面替换图标

    在IT领域,用户界面(UI)的设计与个性化是用户体验的重要组成部分,而桌面图标作为UI的直观元素,其风格和个性化程度直接影响着用户对操作系统的第一印象。"X9桌面替换图标"是一个针对这一需求的解决方案,旨在为用户...

Global site tag (gtag.js) - Google Analytics