Android通过应用程序创建快捷方式的方法
作者:Ruthless 发布时间:2021-07-08 00:41:09
标签:Android,快捷方式
本文实例讲述了Android通过应用程序创建快捷方式的方法。分享给大家供大家参考。具体如下:
Android 快捷方式是桌面最基本的组件。它用于直接启动某一应用程序的某个组件。
一般情况下,可以在Launcher的应用程序列表上,通过长按某一个应用程序的图标在左面上创建改该应用程序的快捷方式。另外,还可以通过两种方式在桌面上添加快捷方式:
一:在应用程序中创建一个Intent,然后以Broadcast的形式通知Launcher创建一个快捷方式。
二:为应用程序的组件注册某一个符合特定条件的IntentFilter,然后可以直接在Launcher的桌面添加启动该组件的快捷方式。
下面模拟在应用程序中添加快捷方式
main.xml布局文件:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<Button android:id="@+id/createShortcut"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:textSize="20px"
android:text="创建快捷键"/>
<Button android:id="@+id/exit"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:textSize="20px"
android:text="退出"/>
</LinearLayout>
清单文件:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.ljq.action" android:versionCode="1"
android:versionName="1.0">
<application android:icon="@drawable/icon"
android:label="@string/app_name">
<activity android:name=".ShortCutAction"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category
android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
<uses-sdk android:minSdkVersion="7" />
<!-- 添加快捷键权限 -->
<uses-permission
android:name="com.android.launcher.permission.INSTALL_SHORTCUT" />
</manifest>
ShortCutAction类:
package com.ljq.action;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.os.Parcelable;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
/**
* 通过应用程序创建快捷方式
*
* @author jiqinlin
*
*/
public class ShortCutAction extends Activity implements OnClickListener{
private Button createShortcut=null; //创建快捷键按钮
private Button exit=null;//退出系统
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
createShortcut=(Button)findViewById(R.id.createShortcut);
exit=(Button)findViewById(R.id.exit);
createShortcut.setOnClickListener(this);
exit.setOnClickListener(this);
}
public void onClick(View v) {
//Button btn=(Button)v;
switch (v.getId()) {
case R.id.createShortcut:
//String title=getResources().getString(R.string.title);
Intent addIntent=new Intent("com.android.launcher.action.INSTALL_SHORTCUT");
Parcelable icon=Intent.ShortcutIconResource.fromContext(this, R.drawable.png); //获取快捷键的图标
Intent myIntent=new Intent(this, ShortCutAction.class);
addIntent.putExtra(Intent.EXTRA_SHORTCUT_NAME, "快捷方式");//快捷方式的标题
addIntent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, icon);//快捷方式的图标
addIntent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, myIntent);//快捷方式的动作
sendBroadcast(addIntent);//发送广播
break;
case R.id.exit:
System.exit(0);
break;
}
}
}
运行结果:
希望本文所述对大家的Android程序设计有所帮助。


猜你喜欢
- Dictionary<TKey,TValue> 类,表示键和值的集合。Dictionary<TKey,TValue>
- 本文实例讲述了Android编程开发之RadioGroup用法。分享给大家供大家参考,具体如下:RadioGroup 有时候比较有用.主要特
- 背景:在Android中按照数据保存的方式,可以分为如下几种Content Provider (用的SQLite实现),SQLite,Sha
- 1.下载JRebel and XRebel for Intellij插件2. 激活请查看这个文章http://www.cicoding.cn
- 本文实例讲述了Java实现指定线程执行顺序的三种方式。分享给大家供大家参考,具体如下:方法一:通过共享对象锁加上可见变量来实现。public
- 详解房卡麻将分析系列 "牌局回放" 之 播放处理 昨天红孩儿给大伙讲了讲”牌局回放“的数据记录处
- 本文实例为大家分享了C#十五子游戏的具体代码,供大家参考,具体内容如下using System;using System.Collectio
- 本文介绍了Android定时器Timer的停止和重启实现代码,分享给大家,具体如下:7月份做了一个项目,利用自定义控件呈现一幅动画,当时使用
- 本文采用半译方式。在本文中,将会介绍 C# 7.2 中引入的新类型:Span 和 Memory,文章深入研究 Span<T&
- 事件函数的执行顺序先说一下执行顺序吧。 官方给出的脚本中事件函数的执行顺序如下图: 我们可以做一个小实验来测试一下: 在Hierarchy
- 1,MainActivity的xml布局<?xml version="1.0" encoding="ut
- 前言:已经有一个月没写点什么了,感觉心里空落落的。今天再来篇干货,想要学习Webapi的园友们速速动起来,跟着博主一起来学习吧。之前分享过一
- RecyclerView是Android 5.0新增的控件,在android-support-v7下面。官方文档对RecycleView介绍
- a.在.xaml文件中拖入一个datagrid,然后添加列名,使用Binding="{Binding 数据库中的列名称}"
- BufferedInputStream BufferedInputStream 是缓冲输入流。它继承于FilterInputSt
- 前言Kotlin越来越流行,在Google的推动下发展的很迅猛,现在的项目大多使用上了Kotlin,其简练的语法糖确实能减少不少代码。Ada
- 前言今天看到某一篇文章的一句话 单例DCL 前面加 V 。就这句话让我把 单例模式 又仔细看了一遍。Java
- 本文实例为大家分享了java实现二叉树遍历的具体代码,供大家参考,具体内容如下二叉树如下:遍历结果如下:以下是实现代码:package bi
- 一、前言程序界面上的按钮多种多样,常用的就这几种:普通按钮、图标按钮、文字按钮、图片文字混合按钮。本文章记录了不同样式类型的按钮实现方法。下
- 在整合SpringBoot和Mybatis-plus时,想写自定义的sql,所以创建了Mapper.xml文件,但是启动后却老是报错:org