android:我如何从我的应用程序中打开另一个应用程序?

Posted

技术标签:

【中文标题】android:我如何从我的应用程序中打开另一个应用程序?【英文标题】:android: how do i open another app from my app? 【发布时间】:2011-02-24 18:44:19 【问题描述】:

我了解在我自己的应用中打开另一个 Activity 时如何使用 Intent 和 startActivity(),但是如何启动另一个应用?具体来说:

您如何确定用户的设备上是否安装了所需的应用程序? 如何启动该应用程序? 如何将参数传递给该应用程序? 如何找到特定应用程序(例如 Adob​​e 阅读器或谷歌地图)的所有这些信息?

【问题讨论】:

【参考方案1】:

这对我有用:

Intent launchIntent = getPackageManager().getLaunchIntentForPackage("com.example.testing_app");
if (launchIntent != null) 
    startActivity(launchIntent);
 else 
    Toast.makeText(MainActivity.this, "testing_app is not installed", Toast.LENGTH_LONG).show();

【讨论】:

【参考方案2】:

如何查看 Intent 是否可用:

    如果不可用,请尝试调用 Intent 并处理 ActivityNotFoundException

    Intent intent = new Intent(Intent.ACTION_VIEW);
    intent.setDataAndType(path, "application/pdf");
    intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
    
    try 
        startActivity(intent);
     
    catch (ActivityNotFoundException e) 
        Toast.makeText(OpenPdf.this, 
            "No Application Available to View PDF", 
            Toast.LENGTH_SHORT).show();
    
    

    Query the Package Manager看是否提前:

    PackageManager packageManager = getPackageManager();
    Intent intent = new Intent(Intent.ACTION_VIEW);
    intent.setType("application/pdf");
    
    List list = packageManager.queryIntentActivities(intent,
        PackageManager.MATCH_DEFAULT_ONLY);
    
    if (list.size() > 0) 
        intent.setDataAndType(path, "application/pdf");
        startActivity(intent);
    
    

如何将参数传递给应用程序或了解其功能:

    List of Available Intents for Google Applications List of Intents by 3rd parties @ OpenIntents

【讨论】:

【参考方案3】:

您正在寻找的是 intentsintent 过滤器

android 开发者指南中详细介绍了您想了解的一切。

http://developer.android.com/guide/topics/intents/intents-filters.html

【讨论】:

以上是关于android:我如何从我的应用程序中打开另一个应用程序?的主要内容,如果未能解决你的问题,请参考以下文章

如何直接从我的 Android 应用程序打开 Amazon AppStore?

如何在 Android 中从另一个应用程序启动 Activity

如何从我的 android 应用程序中尽快获得准确的纬度/经度?

如何从我的网络浏览器 (Chrome) 在 Android 中打开任何应用程序?我与 A Href 链接有啥关系?

如何从我的应用程序在MS-Excel或MS-Word - Android中打开excel,doc文件

如何从我的设备中选择文件? [关闭]