<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    溫馨提示:您的每一次轉(zhuǎn)載,體現(xiàn)了我寫此文的意義!!!煩請您在轉(zhuǎn)載時注明出處http://www.tkk7.com/sxyx2008/謝謝合作!!!

    雪山飛鵠

    溫馨提示:您的每一次轉(zhuǎn)載,體現(xiàn)了我寫此文的意義!!!煩請您在轉(zhuǎn)載時注明出處http://www.tkk7.com/sxyx2008/謝謝合作!!!

    BlogJava 首頁 新隨筆 聯(lián)系 聚合 管理
      215 Posts :: 1 Stories :: 674 Comments :: 0 Trackbacks
    ShortCutActivity
    package com.zhy.shortcut;

    import android.app.Activity;
    import android.content.ComponentName;
    import android.content.Intent;
    import android.content.SharedPreferences;
    import android.content.SharedPreferences.Editor;
    import android.os.Bundle;
    import android.preference.PreferenceManager;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.widget.Button;

    public class ShortCutActivity extends Activity {

        
    private static final String CREATE_SHORTCUT_ACTION = "com.android.launcher.action.INSTALL_SHORTCUT";

        
    private static final String DROP_SHORTCUT_ACTION = "com.android.launcher.action.UNINSTALL_SHORTCUT";

        
    private static final String PREFERENCE_KEY_SHORTCUT_EXISTS = "IsShortCutExists";

        Button button;

        
    // 獲取默認(rèn)的SharedPreferences
        SharedPreferences sharedPreferences ;

        
    // 從SharedPreferences獲取是否存在快捷方式 若不存在返回false 程序第一次進(jìn)來肯定返回false
        boolean exists ;

        @Override
        
    public void onCreate(Bundle savedInstanceState) {
            
    super.onCreate(savedInstanceState);
            
            sharedPreferences 
    = PreferenceManager.getDefaultSharedPreferences(this);
            exists 
    = sharedPreferences.getBoolean(PREFERENCE_KEY_SHORTCUT_EXISTS, false);
            
    //創(chuàng)建桌面快捷方式
            
    //若第一次啟動則創(chuàng)建,下次啟動則不創(chuàng)建
            if (!exists) {
                setUpShortCut();
            }
            
            Intent intent
    =getIntent();
            String action
    =intent.getAction();
            
    //長按桌面 創(chuàng)建快捷方式
            if(Intent.ACTION_CREATE_SHORTCUT.equals(action)){
                
                Intent shortCut
    =new Intent(Intent.ACTION_MAIN);
                shortCut.setClassName(
    thisthis.getClass().getName());
                
                Intent data
    =new Intent();
                
                data.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, Intent.ShortcutIconResource.fromContext(
    this, R.drawable.logo));
                data.putExtra(Intent.EXTRA_SHORTCUT_NAME, 
    "sina");
                data.putExtra(Intent.EXTRA_SHORTCUT_INTENT, shortCut);
                data.putExtra(
    "duplicate"false);
                
                setResult(RESULT_OK, data);
                
                finish();
                
                
    return;
            }
            
            setContentView(R.layout.main);

            button 
    = (Button) findViewById(R.id.dropShortCut);

            button.setOnClickListener(
    new OnClickListener() {

                @Override
                
    public void onClick(View v) {
                    tearDownShortCut();
                }
            });
        }

        
        
        
        
    /**
         * 啟動時創(chuàng)建桌面快捷方式
         
    */
        
    private void setUpShortCut() {

            Intent intent 
    = new Intent(CREATE_SHORTCUT_ACTION);

            
    // 設(shè)置快捷方式圖片
            intent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE,Intent.ShortcutIconResource.fromContext(this, R.drawable.logo));

            
    // 設(shè)置快捷方式名稱
            intent.putExtra(Intent.EXTRA_SHORTCUT_NAME, "sina");

            
    // 設(shè)置是否允許重復(fù)創(chuàng)建快捷方式 false表示不允許
            intent.putExtra("duplicate"false);

            
            
            
    // 設(shè)置快捷方式要打開的intent
            
            
    // 第一種方法創(chuàng)建快捷方式要打開的目標(biāo)intent
            Intent targetIntent = new Intent();
            
    // 設(shè)置應(yīng)用程序卸載時同時也刪除桌面快捷方式
            targetIntent.setAction(Intent.ACTION_MAIN);
            targetIntent.addCategory(
    "android.intent.category.LAUNCHER");
            
            ComponentName componentName 
    = new ComponentName(getPackageName(), this.getClass().getName());
            targetIntent.setComponent(componentName);
            

            
    // 第二種方法創(chuàng)建快捷方式要打開的目標(biāo)intent
            /*
             * Intent
             * targetIntent=getPackageManager().getLaunchIntentForPackage(getPackageName
             * ());
             
    */
            intent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, targetIntent);

            
    // 發(fā)送廣播
            sendBroadcast(intent);

            Editor editor 
    = sharedPreferences.edit();
            editor.putBoolean(PREFERENCE_KEY_SHORTCUT_EXISTS, 
    true);
            editor.commit();

        }

        
    /**
         * 刪除桌面快捷方式
         
    */
        @Deprecated
        
    private void tearDownShortCut() {

            Intent intent 
    = new Intent(DROP_SHORTCUT_ACTION);
            
    // 指定要刪除的shortcut名稱
            intent.putExtra(Intent.EXTRA_SHORTCUT_NAME, "sina");

            String appClass 
    = getPackageName() + "." + this.getLocalClassName();

            ComponentName component 
    = new ComponentName(getPackageName(), appClass);
            intent.putExtra(Intent.EXTRA_SHORTCUT_INTENT,
    new Intent().setAction(Intent.ACTION_MAIN).setComponent(component));
            sendBroadcast(intent);

        }

        
        
        
        
        
        
        
        
    }
    AndroidManifest.xml
    <?xml version="1.0" encoding="utf-8"?>
    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
        package
    ="com.zhy.shortcut"
        android:versionCode
    ="1"
        android:versionName
    ="1.0" >

        
    <uses-sdk android:minSdkVersion="8" />
        
    <!-- 創(chuàng)建桌面快捷方式的權(quán)限 -->
        
    <uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT"/>
        
    <uses-permission android:name="com.android.launcher.permission.UNINSTALL_SHORTCUT"/>
        
    <application
            
    android:icon="@drawable/logo"
            android:label
    ="@string/app_name" >
            
    <activity
                
    android:label="@string/app_name"
                android:name
    =".ShortCutActivity" >
                
    <intent-filter >
                    
    <action android:name="android.intent.action.MAIN" />
                    
    <category android:name="android.intent.category.LAUNCHER" />
                
    </intent-filter>
            
    </activity>
            
    <activity-alias
                
    android:targetActivity=".ShortCutActivity"
                android:name
    =".AliasShortCutActivity" >
                
    <intent-filter >
                    
    <action android:name="android.intent.action.CREATE_SHORTCUT" />
                    
    <category android:name="android.intent.category.DEFAULT" />
                
    </intent-filter>
            
    </activity-alias>
        
    </application>

    </manifest>


    posted on 2011-12-13 14:24 雪山飛鵠 閱讀(1751) 評論(0)  編輯  收藏 所屬分類: android
    主站蜘蛛池模板: 亚洲第一成人影院| 成年黄网站色大免费全看| 国产一级淫片免费播放电影| 亚洲AV无码国产精品色| 在线日本高清免费不卡| 亚洲人成在线影院| 亚洲一区二区免费视频| 亚洲欧洲春色校园另类小说| 久久精品无码专区免费青青| 亚洲成综合人影院在院播放| av无码国产在线看免费网站 | 最新欧洲大片免费在线 | 国产中文字幕免费| 黄色片网站在线免费观看| 免费国产美女爽到喷出水来视频| 另类图片亚洲校园小说区| 无码专区一va亚洲v专区在线| 午夜在线免费视频| 亚洲欧洲自拍拍偷午夜色无码| 成人电影在线免费观看| 亚洲美女视频一区| 四虎免费大片aⅴ入口| 国产成人亚洲精品无码AV大片| 亚洲午夜日韩高清一区| 日本一卡精品视频免费 | 亚洲国产成人精品电影| 免费无码黄网站在线观看| 免费很黄无遮挡的视频毛片| 国产亚洲婷婷香蕉久久精品 | 成人a免费α片在线视频网站| www亚洲精品久久久乳| 亚洲热妇无码AV在线播放| 1000部夫妻午夜免费| 精品亚洲av无码一区二区柚蜜| 久久久无码精品亚洲日韩软件 | 亚洲一区二区三区在线观看网站| 婷婷亚洲天堂影院| 麻豆高清免费国产一区| 国产精品日本亚洲777| 亚洲va中文字幕无码久久不卡| 永久免费毛片在线播放|