android intent过滤模式匹配

时间:2013-03-08 18:47:32

标签: android android-intent

My Intent过滤器如下所示:

        <intent-filter>
            <action android:name="android.intent.action.VIEW" />
            <category android:name="android.intent.category.DEFAULT"/>
            <category android:name="android.intent.category.BROWSABLE"/>
            <data android:scheme="*" 
                  android:host="*" 
                  android:pathPattern="/pickup.jsp\?h=.+&p=.*&l=-?[0-9]+" />
        </intent-filter>

我在eclipse中遇到了解析器错误:

[com.android.ide.eclipse.adt.internal.project.AndroidManifestHelper] 
Parser exception for C:\projects\myapp\AndroidManifest.xml: 
The reference to entity "p" must end with the ';' delimiter.

我尝试使用正则表达式匹配任何方案和任何主机的URL /path/pickup.jsp?h=handle&p=&l=4234。那可能吗?如果是这样,我将如何匹配?

2 个答案:

答案 0 :(得分:1)

  

我正在尝试匹配网址/path/pickup.jsp?h=handle&p=&l=4234

这是不可能的。从Uri角度来看,查询参数不属于<intent-filter>,因此无法匹配。

答案 1 :(得分:0)

看起来像'&amp;' XML解析器正在解释符号。

您应该将&替换为&amp;