限制 Android Sharesheet 中的可用应用
Limiting the available apps in Android Sharesheet
我已经完成了很多 Google,但我没有看到任何答案。我的要求是我们需要将内容共享到 Microsoft Teams,并且只能共享到 Teams。
显然我们已经看到 Android 的 Sharesheet 是在应用程序之间共享内容的首选方法,但是我还没有找到一种方法来限制哪些应用程序出现在 Sharesheet 中。
有没有办法限制应用程序,即白名单 Teams?
我也在探索使用带有 Teams 包名称的 Intent 的方法。
Is there a way to limit the apps, i.e. whitelist Teams?
制作一个 Intent
,通过 setPackageName()
.
将其范围限制为 Teams 的应用程序 ID
此外,当您调用 startActivity()
时,请确保将您的调用包装在 try
/catch
块中并处理用户没有该应用程序的情况他们可以使用,因为您将获得 ActivityNotFoundException
.
I'm also exploring the method of using an Intent with the Teams package name.
这是你唯一的选择。这是一个脆弱的选择,因为微软可以提供尽可能多的应用程序,描述为 "Teams",因为微软想要。您可能还会看到 Microsoft 是否有专门的 API 用于与他们的 Teams 应用共享。
我已经完成了很多 Google,但我没有看到任何答案。我的要求是我们需要将内容共享到 Microsoft Teams,并且只能共享到 Teams。
显然我们已经看到 Android 的 Sharesheet 是在应用程序之间共享内容的首选方法,但是我还没有找到一种方法来限制哪些应用程序出现在 Sharesheet 中。
有没有办法限制应用程序,即白名单 Teams?
我也在探索使用带有 Teams 包名称的 Intent 的方法。
Is there a way to limit the apps, i.e. whitelist Teams?
制作一个 Intent
,通过 setPackageName()
.
此外,当您调用 startActivity()
时,请确保将您的调用包装在 try
/catch
块中并处理用户没有该应用程序的情况他们可以使用,因为您将获得 ActivityNotFoundException
.
I'm also exploring the method of using an Intent with the Teams package name.
这是你唯一的选择。这是一个脆弱的选择,因为微软可以提供尽可能多的应用程序,描述为 "Teams",因为微软想要。您可能还会看到 Microsoft 是否有专门的 API 用于与他们的 Teams 应用共享。