Facebook не появляется в окнах общего доступа при попытке поделиться изображением

Я создаю растровое изображение в своем приложении и хочу поделиться им через приложения электронной почты или Facebook, используя Intent.ACTION_SEND. откроется окно общего доступа и появится значок приложений gmail и yahoomail, но нет фейсбука или g +! Я действительно не знаю, в чем проблема. Другая проблема заключается в том, что приложение gmail не может прикрепить файл (созданный из растрового изображения). Я прочитал несколько похожих вопросов, но все еще у меня есть запас. Помоги мне, пожалуйста.

вот мой код для обмена:

private  static File writePhotoPng(Bitmap data, String pathName) {
    File file = new File(pathName);
    try {

        file.createNewFile();
        // BufferedOutputStream os = new BufferedOutputStream(
        // new FileOutputStream(file));
        FileOutputStream os = new FileOutputStream(file);
        data.compress(Bitmap.CompressFormat.PNG, 100, os);
        os.flush();
        os.close();


    } catch (Exception e) {
        e.printStackTrace();
    }
    return file;
}

public static void ShareOnFb(Bitmap share, Activity activity, String emailSubject){
    Intent intent = new Intent(android.content.Intent.ACTION_SEND);
    // EDIT:
    // !!! childish mistake. below line is correct !!! intent.setType("Image/*");
    intent.setType("image/*");
    //add data to intent, the receiving app will decide what to do with it.

    // email subject:
    if (emailSubject != null && !emailSubject.equals("")){
        intent.putExtra(Intent.EXTRA_SUBJECT, emailSubject);
    }



    intent.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(writePhotoPng(share, "temp.png")));

    activity.startActivity(Intent.createChooser(intent, "Share on"));
}

Ответы на вопрос(1)

Ваш ответ на вопрос