按照这个简单的代码:
String tweetUrl = "https://twitter.com/intent/tweet?text=PUT TEXT HERE &url="+"https://www.google.com";
Uri uri = Uri.parse(tweetUrl);
startActivity(new Intent(Intent.ACTION_VIEW, uri));
也可以与那些文本和图像共享吗?不使用twitter4j
库。
谢谢!
按照这个简单的代码:
String tweetUrl = "https://twitter.com/intent/tweet?text=PUT TEXT HERE &url="+"https://www.google.com";
Uri uri = Uri.parse(tweetUrl);
startActivity(new Intent(Intent.ACTION_VIEW, uri));
也可以与那些文本和图像共享吗?不使用twitter4j
库。
谢谢!
Try this it is worked for me. I will use it for share my product details. i will get details of product like name,image,description from the server and display in app and then share it to twitter.
Get image url from server.
URL url = ConvertToUrl(imgURL);
Bitmap imagebitmap = null;
try {
imagebitmap = BitmapFactory.decodeStream(url.openConnection()
.getInputStream());
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Post image and text on twitter.
// post on twitter
Intent intent = new Intent();
intent.setAction(Intent.ACTION_SEND);
intent.putExtra(
Intent.EXTRA_TEXT,
"Check this out, what do you think?"
+ System.getProperty("line.separator")
+ sharedescription);
intent.putExtra(Intent.EXTRA_SUBJECT, sharename);
intent.setType("image/*");
intent.putExtra(Intent.EXTRA_STREAM,
getImageUri(HomeActivity.this, imagebitmap));
intent.setPackage("com.twitter.android");
startActivity(intent);
Convert Uri String to URL
private URL ConvertToUrl(String urlStr) {
try {
URL url = new URL(urlStr);
URI uri = new URI(url.getProtocol(), url.getUserInfo(),
url.getHost(), url.getPort(), url.getPath(),
url.getQuery(), url.getRef());
url = uri.toURL();
return url;
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
Convert Bitmap to Uri
public Uri getImageUri(Context inContext, Bitmap inImage) {
ByteArrayOutputStream bytes = new ByteArrayOutputStream();
inImage.compress(Bitmap.CompressFormat.JPEG, 100, bytes);
String path = MediaStore.Images.Media.insertImage(
inContext.getContentResolver(), inImage, "Title", null);
return Uri.parse(path);
}