`
夏文权
  • 浏览: 243893 次
  • 性别: Icon_minigender_1
  • 来自: 贵州
社区版块
存档分类
最新评论

Android创建桌面快捷方式几种方法

 
阅读更多
Android在桌面上生成快捷方式有两种情况,一种是直接在桌面直接生成;一种是长按桌面,在弹出的快捷菜单中生成。

第一个是通过广播(Broadcast)的形式向Luncher发送请求生成快捷方式的。在网上找到关于这方面的注册信息。

<!--   
  
Code highlighting produced by Actipro CodeHighlighter (freeware)   
http://www.CodeHighlighter.com/   
  
--><!--设置wallpapaer的activity -->  
        <!-- Intent received used to install shortcuts from other applications -->          
        
<receiver              
	android:name="com.android.launcher2.InstallShortcutReceiver"              
	android:permission="com.android.launcher.permission.INSTALL_SHORTCUT">              
	<intent-filter>                  
		<action android:name="com.android.launcher.action.INSTALL_SHORTCUT" />              
	</intent-filter>          
</receiver> 

		可以看出,要在桌面上创建快捷方式就需要权限了:
  android:permission="com.android.launcher.permission.INSTALL_SHORTCUT。
  所以在我们的manifest.xml文件中,我们需要加入下面这段话:
		<uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT"/>  
		
		下面就是代码层的实现:
  假如我在一个activity中创建一个创建快捷方式的方法:createShortCut();

public void createShortCut(){   
	//创建快捷方式的Intent                   
	Intent shortcutintent = new Intent("com.android.launcher.action.INSTALL_SHORTCUT");                   
	//不允许重复创建                   
	shortcutintent.putExtra("duplicate", false);                   
	//需要现实的名称                   
	shortcutintent.putExtra(Intent.EXTRA_SHORTCUT_NAME, getString(R.string.shortcutname));   
    //快捷图片                  
    Parcelable icon = Intent.ShortcutIconResource.fromContext(getApplicationContext(), R.drawable.icon);   
    shortcutintent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, icon);   
    //点击快捷图片,运行的程序主入口                   
    shortcutintent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, new Intent(getApplicationContext() , EnterActivity.class));                   
    //发送广播。OK                   
    sendBroadcast(shortcutintent);   
}



二、长按桌面弹出的桌面快捷方式创建

		如何在添加到一个SHORTCUTS列表中,就是你长按桌面弹出来的那个东东。
  首先在注册activity时,需要添加一个action为android.intent.action.CREATE_SHOERTCUT的intentFilter.如下所示:
	
	<activity android:name="ShortCutTest">              
		<intent-filter>                  
			<action android:name="android.intent.action.CREATE_SHORTCUT"/>              
		</intent-filter>          
	</activity> 
	
	接下来就是就是设置快捷方式的图标、名称、事件等属性。这里图表的生成,android里提供了专门的方法来生成。


public class ShortCutTest extends Activity{       
	@Override      
	protected void onCreate(Bundle savedInstanceState) {           
	// TODO Auto-generated method stub           
	super.onCreate(savedInstanceState);       
		createShortCut();
	}   
       
	public void createShortCut(){           
    	Intent addShortCut;   
        //判断是否需要添加快捷方式           
        if(getIntent().getAction().equals(Intent.ACTION_CREATE_SHORTCUT)){               
        	addShortCut = new Intent();               
        	//快捷方式的名称               
        	addShortCut.putExtra(Intent.EXTRA_SHORTCUT_NAME , "我的快捷方式");               
        	//显示的图片              
        	Parcelable icon = ShortcutIconResource.fromContext(this, R.drawable.icon);               
        	addShortCut.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, icon);   
            //快捷方式激活的activity,需要执行的intent,自己定义               
            addShortCut.putExtra(Intent.EXTRA_SHORTCUT_INTENT, new Intent());               
            //OK,生成               
            setResult(RESULT_OK, addShortCut);   
        }else{               
       		 //取消               
        	setResult(RESULT_CANCELED);   
        }   
    }   
} 


 

分享到:
评论

相关推荐

    Android 桌面快捷方式

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

    android新建桌面快捷方式

    在Android开发中,创建桌面快捷方式是常见的功能之一,它允许用户快速访问应用程序中的特定功能或活动。这个主题主要涉及到Android系统的Intent、BroadcastReceiver以及ShortcutManager API等关键知识点。接下来,...

    android程序卸载后无法删除桌面快捷方式的解决办法

    ### Android程序卸载后无法删除桌面快捷方式的解决办法 在Android开发过程中,经常会遇到一些棘手的问题,比如用户在卸载应用时,桌面上的应用快捷方式却未能被一同删除,这不仅影响用户体验,也可能导致用户对应用...

    android 桌面源代码

    在Android中,创建桌面快捷方式主要通过Intent的ACTION_CREATE_SHORTCUT动作来完成。开发者需要创建一个BroadcastReceiver,监听ACTION_CREATE_SHORTCUT的意图,然后在onReceive()方法中生成快捷方式。步骤如下: 1...

    android系统判断快捷方式是否存在

    在Android开发中,有时候我们需要检测用户是否已经为应用程序创建了桌面快捷方式。这在某些应用场景下是非常有用的,比如为了提高用户体验,当检测到未创建快捷方式时可以引导用户进行创建。然而,在不同版本的...

    Android场景桌面主题

    在Android平台上,场景桌面主题是一种个性化的用户界面设计,它允许用户根据自己的喜好和需求定制手机的主屏幕,提供不同的视觉体验。这个压缩包“Android场景桌面主题”包含了丰富的资源和指南,帮助用户或开发者...

    安卓数字提醒气泡提示角标相关-android桌面图标数字提醒一款高仿QQ桌面快捷方式显示未读数量的源代码.zip

    本资源提供了一款高仿QQ桌面快捷方式显示未读数量的源代码,帮助开发者实现类似的功能。 首先,我们需要理解这个系统的工作原理。在Android中,实现数字提醒通常涉及到以下几个关键组件: 1. **BroadcastReceiver*...

    给Android的应用换个图标(桌面快捷图标)sShortcut

    在Android上,快捷方式是一种指向应用程序特定功能的接口,用户可以通过长按应用图标或通过启动器(Launcher)创建。在API 25及更高版本中,Android引入了动态快捷方式(Dynamic Shortcuts),允许开发者创建和管理...

    快捷方式桌面+权限是否存在

    本话题将深入探讨如何判断一个Android应用是否已经获得了创建桌面快捷方式的权限,并介绍如何实现快捷桌面方法以及如何引导用户进行权限设置。 首先,我们需要理解Android的权限模型。在Android 6.0(API级别23)及...

    android 桌面控件appwidget

    Android 桌面控件(App...总的来说,Android AppWidget为用户提供了一种方便快捷的方式来访问应用功能,而无需打开完整的应用。通过理解和实践上述步骤,你可以创建出富有创意和实用性的桌面小部件,提升用户体验。

    android编程实现为程序创建快捷方式的方法

    以下是一个简单的示例代码,用于创建程序的桌面快捷方式: ```java private void addShortcut() { Intent shortcut = new Intent("com.android.launcher.action.INSTALL_SHORTCUT"); // 设置快捷方式的名称 ...

    android自定义桌面

    本项目是一个自定义的Android桌面应用,旨在提供一种替代系统默认Launcher的方法,允许开发者根据自己的需求进行定制,以实现个性化的用户体验。 一、Android桌面(Launcher)工作原理 1. 应用启动器(Launcher)是...

    android launcher桌面数字时钟控件

    在Android系统中,Launcher是用户界面的核心组成部分,它充当了手机桌面的角色,允许用户启动应用程序、管理快捷方式和小部件。而"android launcher桌面数字时钟控件"是指在Launcher界面上显示的一种特殊UI元素,它...

    Android桌面小组件

    Android桌面小组件是Android操作系统中一个独特且实用的功能,它允许用户将小应用程序或功能直接放在手机或...总的来说,Android桌面小组件是Android生态系统的一大亮点,它扩展了应用程序的交互方式,让信息触手可及。

    安卓数字提醒气泡提示角标相关-一款高仿QQ桌面快捷方式显示未读数量的源代码实现界面图标显示未读消息数量.rar

    这种设计在许多应用程序中都可以看到,比如QQ桌面,它会在快捷方式或者应用图标上显示一个带有数字的小红点或气泡,以提醒用户有未处理的内容。下面我们将深入探讨如何实现这样的功能。 首先,实现数字提醒气泡提示...

    Android_桌面开发系列(一).doc

    - **createDialog**函数创建一个弹出式对话框,询问用户是否要添加快捷方式、小部件、文件夹或壁纸。 - 对话框的内容来源于`AddAdapter`类。 综上所述,Home Screen不仅是Android设备的核心界面,也是用户与设备...

    Android桌面小组件(AppWidget)

    它们提供了一种快捷的方式,使用户无需打开应用就能获取信息或执行某些操作。"Android桌面小组件(AppWidget)"这个主题主要涵盖以下几个关键知识点: 1. **AppWidget介绍**:AppWidget是Android系统提供的一个特性,...

    基于Android 13添加桌面滑动特效功能

    在Android中,桌面(Launcher)是一个可定制的应用,用户可以在此添加、删除和组织应用快捷方式及小部件。滑动特效通常涉及到视图(View)的过渡动画,当用户在桌面之间切换时,这些动画使转换过程更加平滑且具有...

    Android中一个应用实现多个图标的几种方式

    然后,你可以创建一个Intent并调用`addShortcutIntent`方法来添加快捷方式: ```java private void addShortcut(String name) { Intent addShortcutIntent = new Intent(ACTION_ADD_SHORTCUT); addShortcutIntent...

    Android wiget Test

    Android小部件是桌面快捷方式的扩展,可以显示动态信息,如天气、时钟、日历事件等。它们基于AppWidgetProvider类,这是一个BroadcastReceiver的子类,负责处理小部件的生命周期事件和用户交互。 在创建一个Android...

Global site tag (gtag.js) - Google Analytics