Tôi đang lãng phí rất nhiều thời gian, cố gắng chia sẻ một hình ảnh jpeg đơn giản hoạt động thông qua việc chia sẻ Intent.chia sẻ hình ảnh qua Intent (Facebook và đồng)
Điều quan trọng nhất như thường lệ là Facebook và như thường lệ, nó không hoạt động.
Intent shareIntent = new Intent(Intent.ACTION_SEND);
Uri picUri = Uri.parse("http://someserver.com/somepic.jpg");
shareIntent.setType("image/jpeg");
shareIntent.putExtra(Intent.EXTRA_STREAM, picUri);
shareIntent.putExtra(Intent.EXTRA_TEXT, someString);
startActivity(Intent.createChooser(shareIntent, "some text..."));
Trình chọn mở ra độc đáo, Facebook cũng mở và làm cho tôi đăng nhập, nhưng sau đó nó cho tôi biết rằng tải không thành công. Tôi cũng đã thử Flicker và Mail, và tất cả đều thất bại. Sau đó, tôi đã cố gắng để ghi ảnh vào tập tin địa phương và gửi từ đó, cũng thất bại:
Drawable dr = ImageLoader.getDrawable(url);
Bitmap bmp = ((BitmapDrawable)dr).getBitmap();
ByteArrayOutputStream stream = new ByteArrayOutputStream();
bmp.compress(Bitmap.CompressFormat.JPEG, 80, stream);
byte[] data = stream.toByteArray();
FileOutputStream ostream;
try {
ostream = this.openFileOutput("pic.jpeg", Context.MODE_WORLD_READABLE);
ostream.write(data);
} catch (Exception e) {
e.printStackTrace();
}
Uri picUri = Uri.fromFile(new File("pic.jpeg"));
shareIntent.putExtra(Intent.EXTRA_STREAM, picUri);
Tôi đã không có đầu mối nếu tôi làm điều đó một cách chính xác, đã không làm điều đó trước.
Lần thử cuối cùng của tôi là chỉ gửi chuỗi HTML có hình ảnh được bao gồm dưới dạng thẻ img. Nhưng Facebook dường như không xử lý loại "text/html", do đó, nó không phải là một lựa chọn. Tôi chắc rằng nó chỉ cần vài dòng mã. Nhưng cái nào?
chỉnh sửa
Tôi quên dòng
shareIntent.putExtra(Intent.EXTRA_STREAM, picUri);
trong đoạn mã đầu tiên. Nó đã ở đó khi tôi cố gắng, không làm việc. Không ngủ quá lâu ...
Bạn đã bao giờ tìm thấy cách hợp lý để chia sẻ ảnh từ một URL chưa? – cimnine
Hi didi_X8, Bạn có tìm thấy giải pháp cho vấn đề này không? Như tôi đang bị mắc kẹt tại nó quá – Elshaer