我希望能够在用户点击给定模式的URL而不是允许浏览器打开它时提示我的应用程序打开链接.这可能是当用户在浏览器或电子邮件客户端中的网页上或在新鲜应用中的WebView中时.
例如,从手机中的任意位置点击YouTube链接,您就有机会打开YouTube应用.
我如何为自己的应用程序实现此目的?
我正在尝试使用JDBC身份验证设置Spring 3安全性.除了我尝试为拦截网址指定多个访问角色时,一切都工作正常.例如,我希望任何角色为ROLE_USER和ROLE_ADMIN的人能够访问所有页面,我在spring配置文件中使用了以下行 -
<security:intercept-url pattern="/**" access="ROLE_USER, ROLE_ADMIN" />
Run Code Online (Sandbox Code Playgroud)
但是这会引发以下错误 -
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.security.web.access.intercept.FilterSecurityInterceptor#0': Invocation of init method failed; nested exception is java.lang.IllegalArgumentException: Unsupported configuration attributes: [ ROLE_ADMIN]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1401)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:512)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:450)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:289)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:286)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:188)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:558)
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:852)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:422)
at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:261)
at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:192)
at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:47)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3843)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4342)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:719)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
at org.apache.catalina.core.StandardService.start(StandardService.java:516)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
at org.apache.catalina.startup.Catalina.start(Catalina.java:578)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用WebView开发Android浏览器应用程序,使用户能够从自定义协议访问内容.自定义协议可能是foobar://
我想拦截对此自定义协议的所有请求.这意味着:
我需要能够将这些操作的结果交还给WebView.
可以使用shouldInterceptRequest(可从API级别11获得)处理GET请求.
现在我的问题是:我如何能够接受和处理POST请求?
android url-interception protocol-handler android-webview webviewclient