如何在我的Android应用程序中添加一个按钮,将图像视图中的图片发布到Facebook页面?

时间:2018-02-14 06:18:14

标签: android facebook android-studio

如何在我的Android应用中添加一个按钮,将图片视图中的图片仅发布到脸书页?

此按钮此处将图像分享给所有不需要的媒体 这里init是执行任务的方法。

以下是我的尝试:

`private void init(){


    File dir = new File("/sdcard/Testing/");
    try {
        if (dir.mkdir()) {
            System.out.println("Directoryted");
        } else {
            System.out.println("Directoryot created");
        }
    } catch (Exception e) {
        e.printStackTrace();
    }

}

@Override
public void onClick(View v) {

    switch (v.getId()) {
        case R.id.btn_click:
            Intent cameraIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
            startActivityForResult(cameraIntent,CAMERA_REQUEST);
            break;
        case R.id.btn_share:
            Bitmap bitmap1 = loadBitmapFromView(relativeLayout, relativeLayout.getWidth(), relativeLayout.getHeight());
            saveBitmap(bitmap1);
            String str_screenshot = "/sdcard/Testing/" + "testing" + ".jpg";

            fn_share(str_screenshot);
            break;

    }

}

public void saveBitmap(Bitmap bitmap) {
    File imagePath = new File("/sdcard/Testing/" + "testing" + ".jpg");
    FileOutputStream fos;
    try {
        fos = new FileOutputStream(imagePath);
        bitmap.compress(Bitmap.CompressFormat.PNG, 100, fos);
        fos.flush();
        fos.close();

        Log.e("ImageSave", "Saveimage");
    } catch (FileNotFoundException e) {
        Log.e("GREC", e.getMessage(), e);
    } catch (IOException e) {
        Log.e("GREC", e.getMessage(), e);
    }
}

protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    if (requestCode == CAMERA_REQUEST) {
        Bitmap photo = (Bitmap) data.getExtras().get("data");
        image.setImageBitmap(photo);
    }
}

public static Bitmap loadBitmapFromView(View v, int width, int height) {
    Bitmap b = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888);
    Canvas c = new Canvas(b);
    v.draw(c);

    return b;
}

public void fn_share(String path) {

    File file = new File("/mnt/" + path);

    Bitmap bmp = BitmapFactory.decodeFile(file.getAbsolutePath());
    Uri uri = Uri.fromFile(file);
    Intent intent = new Intent(Intent.ACTION_SEND);
    intent.setType("image/*");
    intent.putExtra(Intent.EXTRA_STREAM, uri);

    startActivity(Intent.createChooser(intent, "Share Image"));

}`

1 个答案:

答案 0 :(得分:0)

您可以使用facebook share sdk https://developers.facebook.com/docs/sharing/android