近期在進行數(shù)字展廳項目時症汹,發(fā)現(xiàn)安裝好的APP在設(shè)備重啟后應(yīng)用圖標就消失了,APP無法打開贷腕,但事實上在應(yīng)用里仍然能夠找到剛才安裝的APP背镇,從網(wǎng)上嘗試了多種方法(SD卡、本地安裝等)都沒能解決泽裳。
今天安裝應(yīng)用寶和QQ的時候瞒斩,發(fā)現(xiàn)桌面上生成了兩個應(yīng)用圖標,于是查看其應(yīng)用權(quán)限诡壁,發(fā)現(xiàn)其使用了【快捷方式】的功能济瓢。
于是,參照這個思路妹卿,實現(xiàn)了數(shù)字展廳的快捷方式:
//創(chuàng)建桌面快捷方式
Intent shortCutIntent =new Intent("com.android.launcher.action.INSTALL_SHORTCUT");
shortCutIntent.putExtra("duplicate",false);
shortCutIntent.putExtra(Intent.EXTRA_SHORTCUT_NAME,"數(shù)字展廳V");
shortCutIntent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, Intent.ShortcutIconResource.fromContext(getApplicationContext(),R.mipmap.ic_launcher));
Intent intent =new Intent();
intent.addFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);
intent.setClass(getApplicationContext(), MainActivity.class);
shortCutIntent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, intent);
// 發(fā)送廣播
getApplicationContext().sendBroadcast(shortCutIntent);
除了上述通過廣播創(chuàng)建快捷方式的代碼外旺矾,還需要添加快捷方式相關(guān)權(quán)限蔑鹦,如下所示:
<!--創(chuàng)建桌面快捷方式-->
? ? <uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT"/>
? ? <uses-permission android:name="com.android.launcher.permission.UNINSTALL_SHORTCUT"/>
? ? <uses-permission android:name="com.android.launcher.permission.READ_SETTINGS"/>