Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setDataAndType(Uri.parse(url), mimetype);
if (getPackageManager().resolveActivity(intent,
PackageManager.MATCH_DEFAULT_ONLY) != null) {
// someone knows how to handle this mime type with this scheme, don't download.
try {
startActivity(intent);
return;
} catch (ActivityNotFoundException ex) {
if (Config.LOGD) {
Log.d(LOGTAG, "activity not found for " + mimetype
+ " over " + Uri.parse(url).getScheme(), ex);
}
}
查询是否有符合Uri.parse(url), mimetype这两个条件的Activity
public abstract ResolveInfo resolveActivity (Intent intent, int flags)
Since: API Level 1
Determine the best action to perform for a given Intent. This is how resolveActivity(PackageManager) finds an activity if a class has not been explicitly specified.
Parameters
intent An intent containing all of the desired specification (action, data, type, category, and/or component).
flags Additional option flags. The most important is MATCH_DEFAULT_ONLY, to limit the resolution to only those activities that support the CATEGORY_DEFAULT.
Returns
Returns a ResolveInfo containing the final activity intent that was determined to be the best action. Returns null if no matching activity was found.
See Also
MATCH_DEFAULT_ONLY
GET_INTENT_FILTERS
GET_RESOLVED_FILTER
resolveContentProvider和resolveService的作用一样。
分享到:
相关推荐
react-native-android-packagemanager 使您可以访问Android的 API,例如读取APK文件中的元数据。入门$ npm install react-native-android-packagemanager --save 简易安装$ react-native link react-native-android-...
Laravel开发-packagemanager 提供以PSR-4格式生成控制器、请求、模型和视图的能力,以构建新模块。
PackageManager实例,内容包含ApplicationInfo、PackageInfo、ResolveInfo、ActivityInfo的实例
|--Activity不允许横竖屏切换 |--Activity常用小技巧 |--Activity按返回直接回到桌面 |--aidl之结合反射获取应用缓存大小等空间占用 |--aidl调用系统service未公开的方法挂电话 |--aidl调用系统未公开的方法代码示例...
Android中获取应用程序(包)的大小
//import android.app.... /> --> android:layout_width="fill_parent" android:layout_height="fill_parent" android:enabled="true" android:clickable="true" android:apiKey="YOUR API key" /> ...
Android中获取系统应用程序列表(有代码注释)
Android中获取应用程序(包)的信息-PackageManager的使用方法
Android PackageManager 有很多方法是没有暴漏出来的,我们如果想调用的话需要用Java反射。android_dependency.jar 提供了反射调用相关的class定义,直接放到你的工程libs目录下面,然后就可以进行反射调用...
Android PackageManager 有很多方法是没有暴漏出来的,我们如果想调用的话需要用Java反射。android_dependency.jar 提供了反射调用相关的class定义,直接放到你的工程libs目录下面,然后就可以进行反射调用...
PackageManager获取App基本信息实现Apk导出、分享、卸载
可根据包名打开应用程序(不算系统的)MainActivity里面的getLaunchIntentForPackage里面的("com.wandoujia.phoenix2")需要修改,这里我是用的是豌豆荚的包名,如果没装豌豆荚的请安装,或者包名参数改成你自己的...
Android_PackageManager学习的好资料。
>初始化 此命令初始化一个新项目。 添加--q可使用默认值初始化老板。 boss init boss init --q >安装 此命令安装新的依赖项 boss install <dependency> 别名:i,添加 >卸载 此命令卸载依赖项 boss uninstall ...
本文实例讲述了Android实现整理PackageManager获取所有安装程序信息的方法。分享给大家供大家参考,具体如下: List<PackageInfo> packs = getPackageManager().getInstalledPackages(0);//获取安装程序的包名 for ...
可根据包名打开系统的应用程序【直接下载,解压后倒入eclipse里面即可使用,使用ListView展示,可看到应用名包名,点击可打开】
这一点貌似在 Linux 和 Mac OS X 下不用操心,在 Windows 下有可能遇到需要安装驱动的情况,确认这一点可以右键「计算机」-「属性」,到「设备管理器」里查看相关设备上是否有黄色感叹号或问号,如果没有就说明驱动...
用于DOTS的Latios框架软件包– [0.3.0] 该存储库中包含的软件包是基于Unity DOTS构建的软件包,我将其用于自己的个人爱好者游戏开发。... 通过PackageManager添加软件包->从git URL添加软件包通过添加
Android中获取应用程序(包)的信息 PackageManager的使用
PackageManager是Android中一个很有用的类,能够获取已安装的应用(包)的信息,如应用名称、图标、权限,安装、删除应用(包)等