在我们的APP中不知道其包名称的情况下启动应用程序

时间:2018-04-11 10:12:59

标签: android

我正在创建一个应用程序,当由Arduino发送的蓝牙文本触发时,打开SDK中的语音到文本功能并处理用户说要做的操作。现在的问题是,我无法找到一种方法来打开用户说的应用程序。例如,Open whatsapp。我如何打开whatsapp或用户说的任何其他应用程序。请快点帮我我已经google了,但只使用包名找到了luanch应用程序。 - DevanCoder

1 个答案:

答案 0 :(得分:0)

Android基于包名管理应用程序。因此,您必须使用它来启动应用程序。请尝试以下步骤:

  1. 当用户说:"打开Whatsapp",从您的应用程序中搜索所有已安装的应用程序(获取应用程序名称和包名称)。像这样:

    Intent mainIntent = new Intent(Intent.ACTION_MAIN, null);
    mainIntent.addCategory(Intent.CATEGORY_LAUNCHER);
    List<ResolveInfo> pkgAppsList = context.getPackageManager().queryIntentActivities( mainIntent, 0);
    
  2. 从应用程序名称列表中,您可以选择最佳匹配项,然后根据其程序包名称打开应用程序基础