Android Webview share with whatsapp, twitter, facebook and google +

0

I need one or several links, that allow me to share a text with a link of my application within my Android Webview application, I've tried with Intent View, set package, start activity, [share with] whatsapp, twitter, facebook, google +.

When sharing in whatsapp I want to let me select the contact, the only thing I get is the Activity blank, I wonder if I could try whatsapp out of my Activity so that in the launcher android I see whatsapp, and so with other applications mentioned above, I want people to be able to inform another about my application and I want a button that opens my profile of fecebook, google + twitter etc in the applications installed on my device, google + twitter facebook, instagram etc ... I attach the code:

public boolean shouldOverrideUrlLoading(WebView WebView, String url) {

if url start with whatsapp, facebook,twitter,google+
if url contains   whatsapp, facebook,twitter,google+


Intent whatsappIntent = new Intent(Intent.ACTION_SEND);
whatsappIntent.setType("text/plain");
whatsappIntent.setPackage("com.whatsapp");
whatsappIntent.putExtra(Intent.EXTRA_TEXT, "Enlace de mi Aplicacion con un texto e imagen");
try {
    activity.startActivity(whatsappIntent);
} catch (android.content.ActivityNotFoundException ex) {
    ToastHelper.MakeShortText("Whatsapp no esta instalado.");
}
public void invokeShare(Activity activity, String quote, String credit) {
    Intent shareIntent = new Intent(android.content.Intent.ACTION_SEND);
    shareIntent.setType("text/plain");
    shareIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, activity.getString(R.string.share_subject));
    shareIntent.putExtra(android.content.Intent.EXTRA_TEXT, "Enlace de mi Aplicacion con un texto e imagen");    
    activity.startActivity(Intent.createChooser(shareIntent, activity.getString(R.string.share_title)));
}

@Override
public boolean shouldOverrideUrlLoading(WebView WebView, String url) {

if(url.startsWith("whatsapp://")) {
            Intent intent = new Intent(Intent.ACTION_SEND);
            intent.setType("text/plain");
            intent.putExtra(Intent.EXTRA_TEXT, "Enlace de mi Aplicacion con un texto e imagen");
            intent.setPackage("com.whatsapp");
            startActivity(intent);
            intent.setPackage("com.whatsapp");


Intent sendIntent = new Intent();
sendIntent.setAction(Intent.ACTION_SEND);
sendIntent.putExtra(Intent.EXTRA_TEXT, "Enlace de mi Aplicacion con un texto e imagen");
sendIntent.setType("text/plain");
startActivity(sendIntent);
sendIntent.setPackage("com.whatsapp");

PackageManager pm=getPackageManager();
try {
    Intent waIntent = new Intent(Intent.ACTION_SEND);
    waIntent.setType("text/plain");
    PackageInfo info=pm.getPackageInfo("com.whatsapp", PackageManager.GET_META_DATA);
    waIntent.setPackage("com.whatsapp");
    waIntent.putExtra(Intent.EXTRA_TEXT, "Enlace de mi Aplicacion con un texto e imagen");
    startActivity(Intent.createChooser(waIntent, "Compartir con:"));
} catch (PackageManager.NameNotFoundException e) {
    Toast.makeText(MainActivity.this, "WhatsApp no esta instalado!", Toast.LENGTH_SHORT)
            .show();
} }
            return true;
        }else{ return false; }



Intent intent = new Intent("android.intent.category.LAUNCHER");
                intent.setClassName("com.facebook.katana", "com.facebook.katana");
                startActivity(intent);


                Intent iintent = new Intent(Intent.ACTION_MAIN);
                iintent.setComponent(ComponentName.unflattenFromString("Enlace de mi Aplicacion con un texto e imagen"));
                iintent.addCategory(Intent.CATEGORY_LAUNCHER);
                startActivity(iintent);


                myBrowser.getSettings().setUserAgentString("Chrome");


                Intent intent = new Intent(Intent.ACTION_SEND);
                intent.setType("text/plain");
                intent.putExtra(Intent.EXTRA_TEXT, "Enlace de mi Aplicacion con un texto e imagen");
                //intent.setPackage("com.whatsapp");
                startActivity(intent);
                intent.setPackage("com.Whatsapp");

                PackageManager packageManager = MainActivity.this.getPackageManager();
                Intent i = new Intent(Intent.ACTION_VIEW);

                try {
                    url = "https://api.whatsapp.com/send?phone=" + 111111111 + "&text=" + URLEncoder.encode("Enlace de mi Aplicacion con un texto e imagen", "UTF-8");
                    i.setPackage("com.whatsapp");
                    i.setData(Uri.parse(url));
                    if (i.resolveActivity(packageManager) != null) {
                        MainActivity.this.startActivity(i);
                    }
                } catch (Exception e){
                    e.printStackTrace();


                Intent sendIntent = new Intent();
                sendIntent.setAction(Intent.ACTION_SEND);
                sendIntent.setType("text/plain");
                sendIntent.putExtra("jid",111111111);
                sendIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
                sendIntent.setPackage("com.whatsapp");
                startActivity(sendIntent);


                Intent intent = new Intent(Intent.ACTION_SEND);
                intent.setType("text/plain");
                intent.putExtra(Intent.EXTRA_TEXT, "Enlace de mi Aplicacion con un texto e imagen");
                //intent.setPackage("com.whatsapp");
                startActivity(intent);
                intent.setPackage("com.Whatsapp");


                Intent launchIntent = getPackageManager().getLaunchIntentForPackage("com.whatsapp");
                if (launchIntent != null) {
                    startActivity(launchIntent);//null pointer check in case package name was not found
                }


                Intent sendIntent = new Intent();
                sendIntent.setAction(Intent.ACTION_SEND);
                sendIntent.putExtra(Intent.EXTRA_TEXT, "Enlace de mi Aplicacion con un texto e imagen");
                sendIntent.setType("text/plain");
                startActivity(sendIntent);
                // sendIntent.setPackage("com.whatsapp");
                startActivity(sendIntent.setPackage("com.whatsapp"));
                */
                /*
                Intent sendIntent = new Intent();
                sendIntent.setAction(Intent.ACTION_SEND);
                sendIntent.putExtra(Intent.EXTRA_TEXT, "Enlace de mi Aplicacion con un texto e imagen");
                sendIntent.setType("text/plain");
                // Put this line here
                sendIntent.setPackage("com.whatsapp");
                //
                startActivity(sendIntent);*/

                Intent sendIntent = new Intent();
                sendIntent.setAction(Intent.ACTION_SEND);
                sendIntent.putExtra(Intent.EXTRA_TEXT, "Enlace de mi Aplicacion con un texto e imagen");
                sendIntent.setType("text/plain");
                sendIntent.setPackage("com.whatsapp");
                startActivity(sendIntent);


                Intent sendIntent = new Intent();
                sendIntent.setAction(Intent.ACTION_SEND);
                sendIntent.putExtra(Intent.EXTRA_TEXT, "Enlace de mi Aplicacion con un texto e imagen");
                sendIntent.setType("text/plain");
                startActivity(sendIntent);
                sendIntent.setPackage("com.google.android.whatsapp");


                Intent intent = new Intent(Intent.ACTION_VIEW);
                intent.setData(Uri.parse("whatsapp://send?text="));
                if (intent.resolveActivity(getPackageManager()) != null) {
                    startActivity(intent);
                }


                //  Uri IntentUri = Uri.parse(url);
                Uri IntentUri = Uri.parse("whatsap://send?text=");
                Intent whatssap1Intent = new Intent(Intent.ACTION_VIEW, IntentUri);
                whatsapp1ntent.setPackage("com.google.android.apps.whatsapp");


                PackageManager pm=getPackageManager();
                try {

                    Intent waIntent = new Intent(Intent.ACTION_SEND);
                    waIntent.setType("text/plain");
                    String text = "YOUR TEXT HERE";

                    PackageInfo info =pm.getPackageInfo("com.whatsapp", PackageManager.GET_META_DATA);
                    //Check if package exists or not. If not then code
                    //in catch block will be called
                    waIntent.setPackage("com.whatsapp");

                    waIntent.putExtra(Intent.EXTRA_TEXT, text);
                    startActivity(Intent.createChooser(waIntent, "Share with"));

                } catch (PackageManager.NameNotFoundException e) {
                    Toast.makeText(MainActivity.this, "WhatsApp not Installed", Toast.LENGTH_SHORT)
                            .show();
                }

                 PackageManager pm=getPackageManager();
                    try {
                        Intent waIntent = new Intent(Intent.ACTION_SEND);
                        waIntent.setType("text/plain");
                        String text = "This is  a Test"; // Replace with your own message.

                        PackageInfo info=pm.getPackageInfo("com.whatsapp", PackageManager.GET_META_DATA);
                        //Check if package exists or not. If not then code
                        //in catch block will be called
                        waIntent.setPackage("com.whatsapp");

                        waIntent.putExtra(Intent.EXTRA_TEXT, text);
                        startActivity(Intent.createChooser(waIntent, "Share with"));

                    } catch (PackageManager.NameNotFoundException e) {
                        Toast.makeText(MainActivity.this, "WhatsApp not Installed", Toast.LENGTH_SHORT)
                                .show();
                    }catch(Exception e){

                    }




            }


                Intent sendIntent = new Intent();
                sendIntent.setAction(Intent.ACTION_SEND);
                sendIntent.putExtra(Intent.EXTRA_TEXT, "Enlace de mi Aplicacion con un texto e imagen");
                sendIntent.setType("text/plain");
                startActivity(sendIntent);
                sendIntent.setPackage("com.whatsapp");

                PackageManager pm=getPackageManager();
                try {
                    Intent waIntent = new Intent(Intent.ACTION_SEND);
                    waIntent.setType("text/plain");
                    PackageInfo info=pm.getPackageInfo("com.whatsapp", PackageManager.GET_META_DATA);
                    waIntent.setPackage("com.whatsapp");
                    waIntent.putExtra(Intent.EXTRA_TEXT, "Enlace de mi Aplicacion con un texto e imagen");
                    startActivity(Intent.createChooser(waIntent, "Compartir con:"));
                } catch (PackageManager.NameNotFoundException e) {
                    Toast.makeText(MainActivity.this, "WhatsApp no esta instalado!", Toast.LENGTH_SHORT)
                            .show();
                }



if(url.contains("whatsapp://send?"))
                {


                    Intent intent = new Intent(Intent.ACTION_VIEW);
                    intent.setData(Uri.parse("whatsapp://send?text="Enlace de mi Aplicacion con un texto e imagen));
                    if (intent.resolveActivity(getPackageManager()) != null) {
                        startActivity(intent);
                    }

                    //  Uri IntentUri = Uri.parse(url);
                    Uri IntentUri = Uri.parse("whatsapp://send?text="Enlace de mi Aplicacion con un texto e imagen"");
                    Intent WPIntent = new Intent(Intent.ACTION_VIEW, IntentUri);
                    WPIntent.setPackage("com.whatsapp");
                    //Intent WPintent = getPackageManager().getLaunchIntentForPackage("com.whatsapp");

                    if (WPIntent.resolveActivity(getPackageManager()) != null) {
                        startActivity(WPIntent);
                    }
                    return true;
                }
    
asked by Java_Pro 13.11.2017 в 11:51
source

1 answer

0

If anything is of any use to you, I use the following: Addthis.com

in my android app.

public static boolean checkUrl(Activity mActivity, String url) {
    Uri uri = Uri.parse(url);
    if (url.startsWith("tel:")) {
        phoneLink(mActivity, url);
        return true;
    } else if (url.startsWith("sms:")) {
        smsLink(mActivity, url);
        return true;
    } else if (url.startsWith("mailto:")) {
        email(mActivity, url);
        return true;
    } else if (url.startsWith("geo:") || uri.getHost().equals("maps.google.com")) {
        url = url.replace("https://maps.google.com/maps?daddr=", "geo:");
        map(mActivity, url);
        return true;
    } else if (url.contains("youtube")) {
        openYoutube(mActivity, url);
        return true;
    } else if (uri.getHost().equals("play.google.com")) {
        openGooglePlay(mActivity, url);
        return true;
    } else if (url.contains("whatsapp")) {
        send(mActivity, url);
        return true;
    } else if (url.contains("facebook")) {
        sendfacebook(mActivity, url);
        return true;
    } else {
        return false;
    }
}

private static void send(Activity mActivity, String url) {
    Intent sendIntent = new Intent();
    Uri uri = Uri.parse(url);
    String msg = uri.getQueryParameter("url");
    sendIntent.setAction(Intent.ACTION_SEND);
    sendIntent.putExtra(Intent.EXTRA_TEXT, "promoción en Pmotion: " +msg );
    sendIntent.setType("text/plain");
    sendIntent.setPackage("com.whatsapp");
    mActivity.startActivity(sendIntent);

I hope you serve

    
answered by 05.12.2017 в 23:48