1

私はこのコードを使用してgoogle+で共有しています:

    ShareCompat.IntentBuilder builder = ShareCompat.IntentBuilder.from(activity);
    builder.setType("text/plain");
    builder.setText(text);
    if (imageURI != null) {
        builder.setStream(imageURI)
               .setType("image/png");
    }

    Intent shareIntent = builder.getIntent()
            .setPackage("com.google.android.apps.plus");
    activity.startActivity(shareIntent);

また、画像がある場合(テキストなしで画像を共有している場合、画像がない場合)、テキストを正常に共有します。テキストと画像を一緒に投稿するにはどうすればよいですか?

4

1 に答える 1

2

私は今日これを解決しようとしていて、私はそれを理解したと思います-あなたがそれを解決したことを願っていますが、それでも他の誰かがこれが役に立つかもしれません。

File f = new File(your_file_path);
                ContentValues values = new ContentValues(2);
                values.put(MediaStore.Images.Media.MIME_TYPE, "image/png"); //or /jpeg or whatever
                values.put(MediaStore.Images.Media.DATA, f.getAbsolutePath());
                Uri uri = getContentResolver().insert(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, values);
                Intent intent = new Intent(Intent.ACTION_SEND);
                intent.setType("image/png");
                intent.putExtra(Intent.EXTRA_STREAM, uri);
                intent.putExtra(Intent.EXTRA_TEXT, "blahblah");
                intent.setPackage("com.google.android.apps.plus");
                startActivity(intent);

コードの問題は、テキストタイプを画像で「オーバーライド」することかもしれないと思います。ただし、私はIntentBuildersを使用したことがないので、遠慮なく修正してください。

于 2013-02-18T11:01:08.667 に答える