意图在Snapchat应用程序上与特定用户打开聊天

Dav*_*vid 9 schema android android-intent snapchat

我试图找到是否有任何应用程序架构,

使用我要聊天的特定用户ID打开Snapchat应用程序(通过Intent)?

顺便说一句,找到userID:

在此输入图像描述

Eri*_* B. 9

这是唯一对我有用的东西.不幸的是,它增加了让用户选择浏览器或Snapchat应用程序的额外步骤.

Intent nativeAppIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("https://snapchat.com/add/" + snapchatId));
startActivity(nativeAppIntent);
Run Code Online (Sandbox Code Playgroud)

奇怪的是,URL方案snapchat://add/" + snapchatId适用于iOS但不适用于Android(它打开Android应用程序,但不会弹出用户).

编辑:添加intent.setPackage("com.snapchat.android");,它将打开没有选择器的应用程序.但添加这意味着您需要使用try/catch包围所有内容以防止崩溃.

try {
    Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("https://snapchat.com/add/" + snapchatId));
    intent.setPackage("com.snapchat.android");
    startActivity(intent);
} catch (Exception e) {
    startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("https://snapchat.com/add/" + snapchatId)));
}
Run Code Online (Sandbox Code Playgroud)