I use the code below for sharing images but unfortunately it works only for Line, not for Facebook and Viber
Code:
Intent share = new Intent(android.content.Intent.ACTION_SEND);
share.setType("image/png");
share.putExtra(Intent.EXTRA_STREAM, Uri.parse(G.DIR_APP + "/sample_image.png"));
startActivity(Intent.createChooser(share, "Share image"));
Share directly to Facebook and Viber...