Java 从android应用程序创建主屏幕浏览器快捷方式

Java 从android应用程序创建主屏幕浏览器快捷方式,java,android,Java,Android,我有一个php站点,它基本上就像一个站点目录,我想要实现的是在我单击应用程序中的URL时创建一个主屏幕快捷方式,这意味着: 我需要首先截取url,对其进行解码,并创建指向url中某个参数的浏览器快捷方式 提前谢谢,伊泰。走捷径很容易 final Intent i = new Intent(); //intent for the shortcut final Intent shortcutIntent = new Intent( /*put necessary parameters (i.e ac

我有一个php站点,它基本上就像一个站点目录,我想要实现的是在我单击应用程序中的URL时创建一个主屏幕快捷方式,这意味着: 我需要首先截取url,对其进行解码,并创建指向url中某个参数的浏览器快捷方式


提前谢谢,伊泰。

走捷径很容易

final Intent i = new Intent(); //intent for the shortcut
final Intent shortcutIntent = new Intent( /*put necessary parameters (i.e activity to launch)*/ );
shortcutIntent.putExtra(Browser.EXTRA_APPLICATION_ID /*if your launching a browser*/,
        Long.toString(/*put unique id e.g. system time etc.*/));
i.putExtra(Intent.EXTRA_SHORTCUT_INTENT, shortcutIntent);
i.putExtra(Intent.EXTRA_SHORTCUT_NAME, /*title*/);
i.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE,/*drawable*/);
i.setAction("com.android.launcher.action.INSTALL_SHORTCUT");
sendBroadcast(i);
对于url拦截,在WebViewClient中

@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
    if (url.equalsIgnoreCase(/*your sitemap url*/)) {
        //use the above code
    }
    return true;
}

我希望这有帮助。我没有测试过这个,但这是一般的想法!祝你好运

走捷径很容易

final Intent i = new Intent(); //intent for the shortcut
final Intent shortcutIntent = new Intent( /*put necessary parameters (i.e activity to launch)*/ );
shortcutIntent.putExtra(Browser.EXTRA_APPLICATION_ID /*if your launching a browser*/,
        Long.toString(/*put unique id e.g. system time etc.*/));
i.putExtra(Intent.EXTRA_SHORTCUT_INTENT, shortcutIntent);
i.putExtra(Intent.EXTRA_SHORTCUT_NAME, /*title*/);
i.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE,/*drawable*/);
i.setAction("com.android.launcher.action.INSTALL_SHORTCUT");
sendBroadcast(i);
对于url拦截,在WebViewClient中

@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
    if (url.equalsIgnoreCase(/*your sitemap url*/)) {
        //use the above code
    }
    return true;
}

我希望这有帮助。我没有测试过这个,但这是一般的想法!祝你好运

你能再充实一点吗,我有点困惑-我们是说在你的应用程序中拦截网络视图中的点击,或者每次在任何应用程序中单击一个已知的URL?你的意思是这样的:创建一个android应用程序,让用户在主屏幕上为他们喜欢的网站创建一个浏览器快捷方式,包括网站URL中的参数????:-/@Harry Joy,是的,在主屏幕上创建浏览器快捷方式。然而,创建此快捷方式的按钮位于php页面上,因此我需要截取@Phil Lello,我的应用程序中的一个WebView,我知道这是使用shouldOverrideUrlLoading完成的,问题是我不知道如何从那里创建快捷方式。顺便说一句,我是一个Java新手。你能不能再充实一点,我有点困惑-我们是说在你的应用程序中拦截网络视图中的点击,或者每次在任何应用程序中单击一个已知的URL?你的意思是这样的:创建一个android应用程序,让用户在主屏幕上为他们喜欢的网站创建一个浏览器快捷方式,包括网站URL中的参数????:-/@Harry Joy,是的,在主屏幕上创建浏览器快捷方式。然而,创建此快捷方式的按钮位于php页面上,因此我需要截取@Phil Lello,我的应用程序中的一个WebView,我知道这是使用shouldOverrideUrlLoading完成的,问题是我不知道如何从那里创建快捷方式。顺便说一句,我是一个Java新手。这帮了我很大的忙,但是,我希望快捷方式是一个浏览器书签(这意味着它将使用favicon.ico以及我正在制作的快捷方式页面的标题。嗨,Itai,很高兴这有帮助。不幸的是,上面的代码部分来自我自己的一个浏览器应用程序,发布所有详细信息将是不好的,但我可以给你一些建议。对于favicon,WebViewClient.onReceivedIcon和webView.getFavicon()可以帮助您,将其转换为drawable,并将其放置在i.putExtra(Intent.EXTRA快捷方式图标资源,/*drawable*/)部分。您可以使用webView.getTitle()获得的标题这非常有帮助,但是,我希望快捷方式成为浏览器书签(这意味着它将使用favicon.ico以及我正在制作的快捷方式页面的标题。嗨,Itai,很高兴这有帮助。不幸的是,上面的代码部分来自我自己的一个浏览器应用程序,发布所有详细信息将是不好的,但我可以给你一些建议。对于favicon,WebViewClient.onReceivedIcon和webView.getFavicon()可以帮助您将其转换为drawable,并将其放置在i.putExtra(Intent.EXTRA快捷方式图标资源,/*drawable*/)部分。您可以使用webView.getTitle()获得的标题