androidandroid-studioandroid-intentwhatsappexplicit

How to open both WhatsApp and GB-Whatsapp using an Intent in your Android App


I want to open chooser for both whatsapp and gb-whatsapp so the user can choose any of one from them. This code is only opening whatsapp only.

 Intent intentWhatsapp = new Intent(Intent.ACTION_VIEW);
        String url = "https://chat.whatsapp.com/JPJSkaiqmDu5gLKqUPAfMM";
        intentWhatsapp.setData(Uri.parse(url));
        intentWhatsapp.setPackage("com.whatsapp");
        startActivity(intentWhatsapp);

Solution

  • To handle business whatsapp, GB-Whatsapp and normal whatsapp, the url scheme intent needs to be used, since the normal method of using package "com.whatsapp" only works for normal whatsapp.

    Here's the code sample to handle gb, normal and business whatsapp :

    try {
        Intent i = new Intent(Intent.ACTION_VIEW);
        i.setData(Uri.parse("whatsapp://send?phone="+ "+92300xxxxxxx" +"&text=" + URLEncoder.encode("Message\n", "UTF-8")));
        context.startActivity(i);
    } catch (Exception e){
        Toast.makeText(context, "Whatsapp not installed!", Toast.LENGTH_LONG).show();
    }