0

ShareActionProvider ( support.v7) を使用してアプリの共有を実行しようとしています。Gmail、Evernote などのすべてのアプリ。アル、うまく動作します-Facebookを除く。何が問題なのかわからない。ここに私のコードスニペットがあります:

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.share, menu);
    MenuItem shareItem = menu.findItem(R.id.action_share);
     mShareActionProvider = (ShareActionProvider) MenuItemCompat.getActionProvider(shareItem);
    mShareActionProvider.setShareIntent(shareIntent());

    return true;
}

public Intent shareIntent () {
    Intent shareIntent = new Intent(Intent.ACTION_SEND);
    shareIntent.setType("type/plain");
    shareIntent.setType("image/*");
    shareIntent.putExtra(Intent.EXTRA_SUBJECT,"SUBJECT");
    shareIntent.putExtra(Intent.EXTRA_TEXT,"TEXT TEXT");
    return shareIntent;
}
4

1 に答える 1

4

setType()最初の呼び出しは 2 番目の呼び出しで置き換えられるため、最初に 2 回呼び出さないでください。

次に、type/plain有効な MIME タイプではありません。試してみてくださいtext/plain

3 番目に、 を使用する場合はimage/*、 を使用して画像を提供する必要がありますEXTRA_STREAM

于 2013-09-21T14:31:48.307 に答える