当任何浏览器在 android 上保存文件时,是否发送广播?如何在 Android 上的浏览​​器中拦截 saved/downloaded 文件?

When any browser saves a file on android, is there a broadcast sent? How can I intercept saved/downloaded files in a browser on Android?

我想创建一个应用程序,用户可以在其中选择 将文件保存 到我的应用程序中,然后通过 activity 来执行此操作。

我是 Android 编程的新手,但我成为 Java 开发人员已经有一段时间了。在阅读了一些文档之后,我发现我可能会通过广播接收器或涉及意图的方式来解决这个问题。

我想在 phone 上看到的确切内容:

我很好奇我将如何实现这一目标。

  • Users holds finger down on image in the browser
  • User chooses to download (or some other choice as created by my application)

欢迎您编写自己的 Web 浏览器,您可以在其中控制用户长按图像时发生的情况。其他网络浏览器的作者将控制当用户长按其应用程序中的图像时发生的情况。

一些 Web 浏览器开发人员可能会在用户长按图像时提供 "share image" 选项。对于那些这样做的人,您可以选择通过实现支持 ACTION_SEND 的 activity 来处理 "share" 请求,无论您支持什么 MIME 类型。

一些 Web 浏览器开发人员可能会在用户长按图像时提供 "save image" 或 "view image" 或 "open image in another app" 选项。如果他们这样做,取决于他们这样做的地点和方式,用户可能可以选择查看图像(例如,一旦它是 "saved")。您可以通过实施支持 ACTION_VIEW 的 activity 来查看图像,无论您支持何种 MIME 类型。

但是,请记住,这些都不是 Web 浏览器独有的。您可以选择任何匹配的 ACTION_SENDACTION_VIEW 请求,无论它是由在 Web 浏览器中长按图像还是其他任何方式触发的。