11

アプリのスキーマがあるかどうかを調べていますが、

チャットしたい特定のユーザーIDで(インテント経由で)Snapchatアプリを開くには?

ところで、ユーザーIDを見つけるには:

ここに画像の説明を入力

4

1 に答える 1

14

これは私のために働く唯一のものです。残念ながら、ユーザーにブラウザーまたは Snapchat アプリを選択させる追加の手順が追加されます.

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

奇妙なことに、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)));
}
于 2016-05-27T19:09:39.880 に答える