标签:android manifest文件 shortcut
Android-Shortcut
一 shortcut
应用程序快捷方式
二 创建shortcut的两种方式
通过配置manifest文件,让程序可以从Launcher中添加
1 在manifest文件中注册一个Activity_1,目的是添加到快捷方式列表上
<activity android:name="com.chengzhi.shortcuttest.Activity_1">
<intent-filter >
<action android:name="android.intent.action.CREATE_SHORTCUT"/> //必须加上
</intent-filter>
</activity>
2 在Activity_1中设置intent
package com.chengzhi.shortcuttest;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
public class Activity_1 extends Activity
{
@Override
protected void onCreate(Bundle savedInstanceState)
{
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
if (getIntent().getAction().equals("android.intent.action.CREATE_SHORTCUT"))
{
//创建intent对象
Intent _intent = new Intent();
//快捷方式的名称
_intent.putExtra(Intent.EXTRA_SHORTCUT_NAME, "chengzhi app");
//快捷方式的图标
_intent.putExtra(Intent.EXTRA_SHORTCUT_ICON, Intent.ShortcutIconResource.fromContext(this, R.id.icon));
//MainActivity是点击创建的快捷方式打开的另外一个Activity,不可以是自身,因为后面还有finish()步骤
_intent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, new Intent(this, MainActivity.class));
//设置结果
setResult(RESULT_OK, _intent);
//创建完毕要关闭当前的Activity,时间非常短暂
finish();
}
}
}
程序启动后,在Launcher中即可通过长按屏幕来添加
在应用程序内部通过点击按钮等来添加快捷方式
1,在manifest文件中添加必要的权限,因为这种方式是通过在Launcher中集成的BroadcastReceiver来实现的
<uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT"></uses-permission>
2,在一个Activity_2中实现操作
package com.chengzhi.shortcuttest;
import com.chengzhi.androidlauncher.R;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class Activity_2 extends Activity
{
@Override
protected void onCreate(Bundle savedInstanceState)
{
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
//设置界面的属性
setContentView(R.layout.activity_main);
Button _button = (Button)findViewById(R.id.installShortcut);
//通过按钮来创建快捷方式
_button.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View arg0)
{
// TODO Auto-generated method stub
//创建intent对象
Intent _intent = new Intent();
//设定action
_intent.setAction("com.android.launcher.action.INSTALL_SHORTCUT");
//快捷方式的名称
_intent.putExtra(Intent.EXTRA_SHORTCUT_NAME, "chengzhi app2");
//点击快捷方式后打开的Activity为自身
_intent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, new Intent(Activity_2.this, Activity_2.class));
//通过发送消息来实现
sendBroadcast(_intent);
}
});
}
}
程序启动后,在启动的Activity中点击按钮即可添加快捷方式,默认会有Toast通知
版权声明:本文为博主原创文章,未经博主允许不得转载。
标签:android manifest文件 shortcut
原文地址:http://blog.csdn.net/qq_22075977/article/details/46732143