• 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;
    }
    }
    }

    运行结果

  • 相关阅读:
    python爬虫学习之MongoDB学习笔记
    python基础学习笔记
    基于python的turtle模块画国旗
    基于tkinter的gui编程基础学习笔记
    python爬虫实现各视频网站vip付费电影下载
    网页模板收藏
    python爬虫实战项目
    python爬取詹姆斯职业生涯数据并生成图标展示
    爬虫框架scrapy学习笔记
    基于python的OpenCV图像处理学习笔记
  • 原文地址:https://www.cnblogs.com/linjiqin/p/1967187.html
Copyright © 2020-2023  润新知