在我的应用程序中,我想处理使用以下模式的链接:
scheme://host/folder1/folder2/folder3/folder4/article
我通过使用以下内容暂时让它工作:
<intent-filter>
<data android:scheme="http" />
<data android:host="www.laprensa.com.ni" />
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
</intent-filter>
Run Code Online (Sandbox Code Playgroud)
但是,正如您可能想象的那样,打开任何以此开头的链接scheme://host,并且我想确保我只接收那些具有上述模式的页面,其中页面是主机内的4个文件夹.
另一个小问题是文件夹名称永远不会相同,因此我不能简单地使用android:path.值得注意的android:pathPrefix是,前三个文件夹与日期相关,因此不一样.
例如,网址是这样的:
scheme://host/year/month/day/articleType/article
我一直在阅读有关如何使用的文档和问题,android:pathPattern但我真的不明白我应该输入什么.
有任何想法吗?
谢谢!
编辑
根据建议,我试过:
android:pathPattern="/.*/.*/.*/.*/.*"
其中每个'.*'代表一个文件夹,但似乎仍然拿起其他不是文章的网址.例如,以下是两个不同的网址:
我想要处理的网址:
http://www.laprensa.com.ni/2013/05/10/vida/145996-lionel-richie-defiende-a
Run Code Online (Sandbox Code Playgroud)
网址我不想处理
http://www.laprensa.com.ni/2013/05/10/vida/
Run Code Online (Sandbox Code Playgroud)
我想这里的问题是它们都有相同数量的水平,唯一的区别是在最后一个之后实际上有一些东西'/',我可以尝试其他任何想法吗?我确实尝试添加一个,'/.*'但完全停止工作,应用程序停止处理任何链接期间:(