我想在youtube应用中拦截一个关于BroadcastReceiver的意图,当视频开始播放时 - 我设法从日志中读取这个:
Starting: Intent { cmp=com.google.android.youtube/.WatchActivity (has extras) } from pid 18710
我尝试将其添加到清单中:
<intent-filter>
<component android:name="com.google.android.youtube/.WatchActivity"/>
</intent-filter>
但这不起作用。
您怎么看?
答案 0 :(得分:2)
您怎么看?
当Intent
用于启动活动时,您无法“截取与BroadcastReceiver的意图”。
此外,<component>
中没有<intent-filter>
元素。
答案 1 :(得分:2)
如果您想让您的应用响应特定格式的HTTP网址(例如YouTube视频网址),请设置一个意图过滤器,该过滤器响应ACTION_VIEW意图,其中<data> element定义您要匹配的网址格式。
Android使用ACTION_SEND意图来分享链接或照片等内容。您还可以让您的应用响应共享链接。设置它与为ACTION_VIEW意图设置意图过滤器几乎相同。
有关更多详细信息,请参阅有关意图过滤器here的Android文档的“数据测试”部分。
无论如何,除非该应用程序发布其他应用程序的信息,否则无法以静默方式“窥探”另一个第三方应用程序。上述两种方法都将涉及用户专门告知系统使用您的应用程序来处理相关URL。第一种方式,用户将首先选择用于查看内容的应用程序。第二种方式,用户必须按原始应用中的分享按钮,然后选择分享指向您应用的链接。
所有这些都说,既然你提到了你上面要做的事情,请尊重他人的版权。