【问题标题】:Launch Android app from browser, when app doesn't have an intent filter defined当应用没有定义意图过滤器时,从浏览器启动 Android 应用
【发布时间】:2014-03-05 19:48:47
【问题描述】:

我知道如何打开定义了意图过滤器的应用程序,如 Launch custom android application from android browser 中所回答的那样,但是如果我无法控制 Android 应用程序,并且它还没有定义我可以定义的意图过滤器怎么办用吗?

我是否需要联系开发人员并要求添加意图过滤器,或者是否有其他方法可以从浏览器打开应用程序?

【问题讨论】:

    标签: android android-intent


    【解决方案1】:

    如果应用程序的Activity 没有定义IntentFilter,默认情况下系统会将Activity 保密,不会将其导出以供其他应用程序启动。但是,如果开发人员在应用程序的清单中为 Activity 设置了 android:exported="true",您应该可以通过在 Intent 中指定组件名称来启动它。

    【讨论】:

    • 很遗憾,没有设置 android:exported="true"。无论如何,这是从另一个应用程序启动的,对吧?我需要从浏览器中的网页启动。
    • 如果您要启动一个Activity,它是您应用程序的一部分(具有浏览器功能),那么您可以通过Intent 中的组件名称启动它。无需操作、类别或数据。但是,如果应用程序是一个完全不同的包并且 Activity 尚未导出,那么您将无法启动它。
    • 对于浏览器,我指的是 Chrome、Firefox 或 Android 库存浏览器。不是具有浏览器功能的自定义 Android 应用程序。我想要完成的是从普通网页启动第三方应用程序。
    • 好的,那你肯定要联系应用作者了。
    • 我害怕那个。谢谢
    猜你喜欢
    • 1970-01-01
    • 2023-03-03
    • 2023-03-06
    • 1970-01-01
    • 1970-01-01
    • 2013-02-05
    • 2017-09-13
    • 1970-01-01
    相关资源
    最近更新 更多