亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

APP實用開發—桌面添加快捷圖標

2019-11-09 15:54:03
字體:
來源:轉載
供稿:網友

原理:

這里寫圖片描述 從圖上可以看出,Android大致分7步完成快捷方式的創建:

**第1步:**Android系統的launcher程序會調用它的pickShortcut()方法去啟動系統的pickActivity程序(應用);

**第2步:**pickActivity程序(應用)啟動后會調用它的CheckIntentFilter()方法,去在系統中尋找可以創建快捷方式的應用有哪些,并且列舉出來。只要第三方 App用標簽進行了相應的注冊(具體如何注冊請看下面的代碼)就可以被發現并列舉出來;

第3步:調用Choseitem()方法選擇創建誰的快捷方式;

第4步:完成第三步之后,pickActivity程序(應用)會將選擇的消息通過Intent返回給系統的launcher;

**第5步:**launcher程序獲得pickActivity返回的消息后,就會知道創建誰的快捷方式,通過調用PRocessShortcut()方法去啟動第三方App中負責創建快捷方式 的Activity,這個Activity就是第二步中我們提到的用標簽進行了注冊的Activity;

第6步:第三方App中負責創建快捷方式的Activity會將快捷方式的名稱,圖標和點擊后跳轉路徑通過Intent返回給launcher;

**第7部:**launcher收到返回的消息后調用本身的ComPleteAddShortcut()方法完成快捷方式的創建,并顯示在桌面上;

權限

<!-- 添加快捷方式 --> <uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT" />

這個方法一般放在引導頁面

private void createShortCut() { boolean b = SharedPreferencesTool.getBoolean(this, Constants.SHORTCUT, false); if (!b) { Intent intent = new Intent(); intent.setAction("com.android.launcher.action.INSTALL_SHORTCUT"); //通過intent告訴launcher快捷方式的細節 intent.putExtra(Intent.EXTRA_SHORTCUT_NAME, "淘寶");//設置快捷方式的名稱 Bitmap bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.ic_launcher); intent.putExtra(Intent.EXTRA_SHORTCUT_ICON, bitmap);//設置快捷方式的圖標 Intent value = new Intent(this,SplashActivity.class); intent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, value);//設置快捷方式的操作 sendBroadcast(intent); //如果創建了快捷方式,保存一個標示,表示快捷方式創建 SharedPreferencesTool.saveBoolean(this, Constants.SHORTCUT, true); } }

或者 用標簽進行注冊

<activity android:name=".CreatShortCut"> <intent-filter> <action android:name="android.intent.action.CREATE_SHORTCUT"/> </intent-filter></activity>

向Launcher返回相關數據

public class CreatShortCut extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); if (getIntent().getAction().equals(Intent.ACTION_CREATE_SHORTCUT)) { Intent _returnIntent = new Intent(); _returnIntent.putExtra(Intent.EXTRA_SHORTCUT_NAME, "csx");// 快捷鍵的名字 _returnIntent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE,// 快捷鍵的ico Intent.ShortcutIconResource.fromContext(this, R.drawable.ic_launcher)); _returnIntent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, new Intent(this, MainActivity.class));// 快捷鍵的跳轉Intent setResult(RESULT_OK, _returnIntent);// 發送 finish();// 關閉本Activity } }}

拷貝數據庫的方法

引用外置的數據庫,在引導頁面初始化

private void copyDb(String fileName) { File file = new File(getFilesDir(), fileName); if (!file.exists()) { //1.獲取assets目錄的管理者 assets = getAssets(); InputStream in = null; FileOutputStream out = null; try { //2.讀取資源 in = assets.open(fileName);//打開assets目錄的資源,fileName:資源的名稱 //getCacheDir():data/data/應用程序包名/cache //getFilesDir():data/data/應用程序包名/files out = new FileOutputStream(file); //3.讀寫操作,實現拷貝 byte[] b = new byte[1024];//緩存區域 int len = -1;//保存讀取長度 while((len = in.read(b)) != -1){ out.write(b, 0, len); } } catch (IOException e) { e.printStackTrace(); }finally{ //關流操作 if (out != null) { try { out.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } if (in != null) { try { in.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } } }
上一篇:Swift 隱式可選型

下一篇:Button和TextView

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
中文字幕亚洲自拍| 精品网站999www| 亚洲激情视频在线播放| 欧美日韩国产精品一区| 精品爽片免费看久久| 久久激情视频免费观看| 国产精品久久久久久一区二区| 欧美肥婆姓交大片| 亚洲视频综合网| 国产精品白丝av嫩草影院| 中文字幕日本欧美| 国产成人97精品免费看片| 亚洲精品成a人在线观看| 亚洲free性xxxx护士hd| 日韩av一区在线| 国产第一区电影| 日本午夜精品理论片a级appf发布| 亚洲国产精品大全| 日韩在线一区二区三区免费视频| 韩曰欧美视频免费观看| 中文字幕不卡在线视频极品| 91精品国产乱码久久久久久久久| 亚洲精品小视频在线观看| 日本欧美在线视频| 精品日韩视频在线观看| 欧美成人免费一级人片100| 日韩中文字幕在线观看| 日韩久久午夜影院| 色中色综合影院手机版在线观看| 国产精品99久久久久久人| 97香蕉久久夜色精品国产| 欧美另类暴力丝袜| 亚洲福利视频在线| 精品动漫一区二区| 成人国产精品日本在线| 国产精品国产自产拍高清av水多| 欧美精品videossex88| 中文字幕在线观看亚洲| 亚洲国产古装精品网站| 国产999精品久久久影片官网| 最新的欧美黄色| 国产视频精品va久久久久久| 国产精品三级久久久久久电影| 亚洲欧美另类国产| 国产精品自产拍在线观看| 韩国福利视频一区| 国产精品高精视频免费| 亚洲精品网站在线播放gif| 亚洲精品视频网上网址在线观看| 久久视频在线观看免费| 国产日产欧美a一级在线| 精品久久久久久中文字幕| 国产97色在线| 国产69精品99久久久久久宅男| 亚洲欧美视频在线| 亚洲美女免费精品视频在线观看| 久热爱精品视频线路一| 精品国产鲁一鲁一区二区张丽| 91精品国产高清自在线| 国产精品午夜国产小视频| www.日韩不卡电影av| 欧美性猛交xxxx黑人| 精品国产欧美一区二区五十路| 91在线视频九色| 91干在线观看| 欧美激情区在线播放| 在线精品高清中文字幕| 欧美日韩在线观看视频| 午夜精品久久久久久久久久久久| 日韩女在线观看| 国产91精品在线播放| 亚洲自拍av在线| 色偷偷偷综合中文字幕;dd| 成人xxxxx| 欧美巨乳在线观看| 亚洲精品国产综合区久久久久久久| 成人h视频在线| 国产精品国产三级国产aⅴ浪潮| 日韩中文av在线| 亚洲一区二区久久久久久久| 亚洲精品www久久久| 国模精品视频一区二区三区| 亚洲国产天堂久久综合| 欧美激情奇米色| 国产日本欧美一区二区三区在线| 国产精品日韩久久久久| 国产精品久久久久久久久久尿| 日韩在线观看电影| 日韩电影在线观看中文字幕| 国自产精品手机在线观看视频| 亚洲成色777777在线观看影院| 精品亚洲夜色av98在线观看| 成人亚洲综合色就1024| 国产精品欧美久久久| 成人免费观看网址| 欧美专区在线播放| 欧美精品一本久久男人的天堂| 91国内产香蕉| 97国产在线视频| 久久露脸国产精品| 中国日韩欧美久久久久久久久| 91九色综合久久| 国产亚洲精品日韩| 欧美老女人bb| 一区二区亚洲精品国产| 色爱av美腿丝袜综合粉嫩av| 欧美日韩高清区| 国产精品视频一区国模私拍| 精品日韩美女的视频高清| 亚洲一区二区三区四区视频| 欧美日本高清视频| 韩国视频理论视频久久| 国产亚洲精品久久久久久777| 在线观看视频亚洲| 欧美日韩免费区域视频在线观看| 亚洲欧美一区二区精品久久久| 亚洲黄色av网站| 一区二区三区亚洲| 97色在线播放视频| 日本一区二区三区四区视频| 中文字幕成人精品久久不卡| 在线视频欧美日韩精品| 免费av一区二区| 国产噜噜噜噜噜久久久久久久久| 中文字幕视频在线免费欧美日韩综合在线看| 亚洲一区二区三区在线免费观看| 5566成人精品视频免费| 亚洲精品成人网| 国产欧美日韩综合精品| 一区二区三区久久精品| 国产精品久久久久久久久久久久久| 国产精品久久久久久久电影| 亚洲精品美女网站| 久久99久久亚洲国产| 亚洲精品wwwww| 亚洲精品一区久久久久久| 美女国内精品自产拍在线播放| 日韩av片电影专区| 久久91亚洲人成电影网站| 日本高清+成人网在线观看| 欧美性猛交xxxxx免费看| 九九精品视频在线| 欧美成人精品三级在线观看| 日韩美女主播视频| 亚洲加勒比久久88色综合| 色偷偷av亚洲男人的天堂| 成人h视频在线| 日韩精品在线免费观看| 欧美性猛交视频| 欧美日韩激情小视频| 日本精品久久久久久久| 在线观看精品自拍私拍| 国色天香2019中文字幕在线观看| 久久久www成人免费精品张筱雨| 国产有码一区二区| 精品国产一区二区三区四区在线观看| 成人有码在线视频| 亚洲成人999| 国产91热爆ts人妖在线| 亚洲第一精品夜夜躁人人躁| 国产精品久久久久久久久久久不卡| 欧美成人激情视频免费观看| 欧美黑人一级爽快片淫片高清| 欧美日韩色婷婷|