我有創建以下列方式快捷方式的應用程序:快捷方式啓動的活動
Intent shortcutIntent = new Intent(this, MYWEBVIEW.class);
String fileHtml = trovaHtml(path);
shortcutIntent.putExtra("appToLaunch", appId);
shortcutIntent.putExtra("fileHtml", fileHtml);
shortcutIntent.setAction(Intent.ACTION_VIEW);
Intent addIntent = new Intent();
addIntent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, shortcutIntent);
addIntent.putExtra(Intent.EXTRA_SHORTCUT_NAME, dirAppName);
addIntent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE,
Intent.ShortcutIconResource.fromContext(this, R.drawable.icon));
addIntent.setAction("com.android.launcher.action.INSTALL_SHORTCUT");
this.sendBroadcast(addIntent);
我知道這個代碼已被棄用,但讓我們忘掉它.......
MYWEBVIEW不是我的應用程序的主要活動,是一個打開離線html頁面的webview,並且此html文件的路徑在額外值「fileHtml」內。
當我上的快捷方式點擊我得到這個錯誤:
08-08 14:15:37.907: ERROR/Launcher(165): Launcher does not have the permission to launch Intent { act=android.intent.action.VIEW flg=0x10000000 cmp=market.finestraprincipale/.MyAppActivity bnds=[3,217][77,296] (has extras) }. Make sure to create a MAIN intent-filter for the corresponding activity or use the exported attribute for this activity. tag=ShortcutInfo(title=myFile) intent=Intent { act=android.intent.action.VIEW flg=0x10000000 cmp=market.finestraprincipale/.MYWEBVIEW bnds=[3,217][77,296] (has extras) }
08-08 14:15:37.907: ERROR/Launcher(165): java.lang.SecurityException: Permission Denial: starting Intent { act=android.intent.action.VIEW flg=0x10000000 cmp=market.finestraprincipale/.MYWEBVIEW bnds=[3,217][77,296] (has extras) } from ProcessRecord{405875c8 165:com.android.launcher/10026} (pid=165, uid=10026) requires null
如何解決這些錯誤?有沒有辦法創建同一個應用程序的兩個實例?例如,我在我的應用程序中,我創建了一個快捷方式,我按Home按鈕,以便應用程序進入背景,當我點擊快捷方式時,我開始MYWEBVIEW活動,但在我的應用程序的新實例中...基本上,我可以同時打開更多網頁瀏覽。
是的,我沒有得到創建快捷方式的錯誤,當我點擊快捷方式時得到它......可能會導致它調用一個不是主要的活動..... 。至少我想.. – Sgotenks
嘗試添加''permission.INTERNET''。這可能是快捷方式試圖啓動瀏覽器(因爲您試圖打開一個URL)。您是否按照[建議](http://developer.android.com/resources/tutorials/views/hello-webview.html)中的建議對子類「WebViewClient」類進行了分類? –
是的,我正在做兩個....如果我通過我的應用程序從主要活動衝浪到MYWEBVIEW,一切工作正常,它打開正確的HTML頁面.....但如果我試圖從快捷方式打開它直我得到那個錯誤......可以通過快捷方式打開一個不是主要活動的活動嗎?原因,如果我改變了我的應用程序的主要活動的快捷方式的目標,它的工作原理:(但我需要直接去另一個 – Sgotenks