And*_* T. 5 android android-intent
我正在研究系统应用程序,我需要以编程方式了解应用程序能够处理的意图.我已经看到了与此相关的其他问题,但它们似乎都没有答案,但似乎也没有关注系统权限.
PackageManager似乎只提供查询给定intent的活动的方法.我无法找到一种方法来获取给定活动的意图.
例如,如果我有一个具有如此定义的intent过滤器的活动:
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED"/>
<action android:name="android.intent.action.USER_PRESENT"/>
</intent-filter>
Run Code Online (Sandbox Code Playgroud)
我知道活动类名和包名,我想从包管理器(或任何其他来源)中找出它可以处理的意图(在这种情况下,BOOT_COMPLETED和USER_PRESENT).
好问题。我认为不可能找出应用程序可以处理的意图。http://developer.android.com/reference/android/content/Intent.html列出了一些标准活动操作和广播操作。如果您正在编写自己的应用程序,该应用程序有自己的意图过滤器,那么我认为其他应用程序不会知道您的应用程序可以处理哪些意图,因为我相信没有办法发布它们或向全世界宣布它们。
但可能的是,您可以调用特定意图,如果返回 null,那么您可以确定设备上没有可以处理该特定意图的应用程序。
HTH。
| 归档时间: |
|
| 查看次数: |
2717 次 |
| 最近记录: |