我正在尝试添加要发布到Google Plus的共享 Intent ,但似乎无法解决将新的ShareCompat.IntentBuilder(Android支持库类)传递给startActivity方法的问题。我开始使用this example。我的应用程序是使用Android 2.2平台编译的。是否有另一种支持方法来启动 Activity 以启动共享 Intent 。

IntentBuilder shareIntent = ShareCompat.IntentBuilder.from(MyActivity.this);
shareIntent.setText(message);
shareIntent.setSubject(subject);

if (mFullFileName != null) {
    File imageFile = new File(mFullFileName);
    if (imageFile.exists()) {
        shareIntent.setStream(Uri.fromFile(imageFile));
        shareIntent.setType("image/jpeg");
    }
} else {
    shareIntent.setType("*.*");
}
shareIntent.getIntent();
// doesn't compile only accepts Intent and not the Intentbuilder
startActivity(shareIntent);

最佳答案

那是我代码中的一个例子,但是如果您需要引用 Material ,请点击文章的超链接。

public void shareText(String text) {
        String mimeType = "text/plain";
        String title = "Example title";

        Intent shareIntent =   ShareCompat.IntentBuilder.from(this)
                                                    .setType(mimeType)
                                                    .setText(text)
                                                    .getIntent();
        if (shareIntent.resolveActivity(getPackageManager()) != null){
            startActivity(shareIntent);
        }
    }

Blog post on ShareCompat.IntentBuilder and sharing intents

10-08 15:30