Android 如何使用 Facebook SDK 在 Facebook 上分享图片?
How to share image on Facebook using Facebook SDK for Android?
我想使用 Facebook 将我的 Android 应用程序中的图像分享到 Facebook SDK.I 在我的 app.when 中有一个名为 Share 的按钮 我点击了图像的那个按钮,它是我的设备应该在 Facebook.Here 上共享问题是当我单击按钮时 Facebook 登录页面打开,但在成功登录后 Facebook 将关闭并且图像不会共享。
谁能告诉我哪里做错了?
FacebookSdk.sdkInitialize(getActivity());
callbackManager = CallbackManager.Factory.create();
List<String> permissionNeeds = Arrays.asList("publish_actions");
//this loginManager helps you eliminate adding a LoginButton to your UI
manager = LoginManager.getInstance();
manager.logInWithPublishPermissions(getActivity(), permissionNeeds);
manager.registerCallback(callbackManager, new FacebookCallback<LoginResult>() {
@Override
public void onSuccess(LoginResult loginResult) {
Log.e("ShareMethod", "called");
sharePhotoToFacebook();
}
@Override
public void onCancel() {
System.out.println("onCancel");
}
@Override
public void onError(FacebookException exception) {
System.out.println("onError1234");
}
});
private void sharePhotoToFacebook(){
file1 = new File(path);
bitmap1 = BitmapFactory.decodeFile(file1.getAbsolutePath());
Log.e("Bitmap1",""+bitmap1);
SharePhoto photo = new SharePhoto.Builder()
.setBitmap(bitmap1)
.build();
SharePhotoContent content = new SharePhotoContent.Builder()
.addPhoto(photo)
.build();
ShareApi.share(content, null);
Log.e("Sharing","Successful");
}
@Override
public void onActivityResult(int requestCode, int responseCode, Intent data)
{
super.onActivityResult(requestCode, responseCode, data);
callbackManager.onActivityResult(requestCode, responseCode, data);
}
我的 Logcat 输出如下。
11-21 12:57:06.248 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ glUtilsParamSize: unknow param 0x00000b44
11-21 12:57:06.269 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ glUtilsParamSize: unknow param 0x00000bd0
11-21 12:57:06.276 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ **** ERROR unknown type 0x73000f (glSizeof,72)
11-21 12:57:08.582 1139-1171/com.example.omshiv.moviehub W/EGL_emulation﹕ eglSurfaceAttrib not implemented
11-21 12:57:08.582 1139-1171/com.example.omshiv.moviehub W/OpenGLRenderer﹕ Failed to set EGL_SWAP_BEHAVIOR on surface 0xa0625d40, error=EGL_SUCCESS
11-21 12:57:08.598 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ glUtilsParamSize: unknow param 0x00000b44
11-21 12:57:08.599 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ glUtilsParamSize: unknow param 0x00000bd0
11-21 12:57:08.613 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ **** ERROR unknown type 0x73000f (glSizeof,72)
11-21 12:57:08.642 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ glUtilsParamSize: unknow param 0x00000b44
11-21 12:57:08.650 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ glUtilsParamSize: unknow param 0x00000bd0
11-21 12:57:08.664 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ **** ERROR unknown type 0x73000f (glSizeof,72)
11-21 12:57:08.688 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ glUtilsParamSize: unknow param 0x00000b44
11-21 12:57:08.691 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ glUtilsParamSize: unknow param 0x00000bd0
11-21 12:57:08.703 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ **** ERROR unknown type 0x73000f (glSizeof,72)
11-21 12:57:08.739 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ glUtilsParamSize: unknow param 0x00000b44
11-21 12:57:08.740 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ glUtilsParamSize: unknow param 0x00000bd0
11-21 12:57:08.762 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ **** ERROR unknown type 0x73000f (glSizeof,72)
11-21 12:57:08.776 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ glUtilsParamSize: unknow param 0x00000b44
11-21 12:57:08.798 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ glUtilsParamSize: unknow param 0x00000bd0
11-21 12:57:08.822 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ **** ERROR unknown type 0x73000f (glSizeof,72)
11-21 12:57:08.833 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ glUtilsParamSize: unknow param 0x00000b44
11-21 12:57:08.867 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ glUtilsParamSize: unknow param 0x00000bd0
11-21 12:57:08.901 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ **** ERROR unknown type 0x73000f (glSizeof,72)
11-21 12:57:08.905 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ glUtilsParamSize: unknow param 0x00000b44
11-21 12:57:08.908 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ glUtilsParamSize: unknow param 0x00000bd0
11-21 12:57:08.925 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ **** ERROR unknown type 0x73000f (glSizeof,72)
11-21 12:57:08.949 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ glUtilsParamSize: unknow param 0x00000b44
11-21 12:57:08.950 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ glUtilsParamSize: unknow param 0x00000bd0
11-21 12:57:08.953 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ **** ERROR unknown type 0x73000f (glSizeof,72)
11-21 12:57:09.079 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ glUtilsParamSize: unknow param 0x00000b44
11-21 12:57:09.080 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ glUtilsParamSize: unknow param 0x00000bd0
11-21 12:57:09.099 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ **** ERROR unknown type 0x73000f (glSizeof,72)
11-21 12:57:09.127 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ glUtilsParamSize: unknow param 0x00000b44
11-21 12:57:09.129 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ glUtilsParamSize: unknow param 0x00000bd0
11-21 12:57:09.152 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ **** ERROR unknown type 0x73000f (glSizeof,72)
11-21 12:57:09.155 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ glUtilsParamSize: unknow param 0x00000b44
11-21 12:57:09.155 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ glUtilsParamSize: unknow param 0x00000bd0
11-21 12:57:09.169 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ **** ERROR unknown type 0x73000f (glSizeof,72)
11-21 12:57:09.179 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ glUtilsParamSize: unknow param 0x00000b44
11-21 12:57:09.199 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ glUtilsParamSize: unknow param 0x00000bd0
11-21 12:57:09.205 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ **** ERROR unknown type 0x73000f (glSizeof,72)
我得到了解决方案。这里的问题是我正在使用片段。 Facebook Activity 加载到 WebView 但未完成共享,Fragment 仍为空。所以我从 Fragment 切换到 Activity 这解决了我的问题。
我想使用 Facebook 将我的 Android 应用程序中的图像分享到 Facebook SDK.I 在我的 app.when 中有一个名为 Share 的按钮 我点击了图像的那个按钮,它是我的设备应该在 Facebook.Here 上共享问题是当我单击按钮时 Facebook 登录页面打开,但在成功登录后 Facebook 将关闭并且图像不会共享。 谁能告诉我哪里做错了?
FacebookSdk.sdkInitialize(getActivity());
callbackManager = CallbackManager.Factory.create();
List<String> permissionNeeds = Arrays.asList("publish_actions");
//this loginManager helps you eliminate adding a LoginButton to your UI
manager = LoginManager.getInstance();
manager.logInWithPublishPermissions(getActivity(), permissionNeeds);
manager.registerCallback(callbackManager, new FacebookCallback<LoginResult>() {
@Override
public void onSuccess(LoginResult loginResult) {
Log.e("ShareMethod", "called");
sharePhotoToFacebook();
}
@Override
public void onCancel() {
System.out.println("onCancel");
}
@Override
public void onError(FacebookException exception) {
System.out.println("onError1234");
}
});
private void sharePhotoToFacebook(){
file1 = new File(path);
bitmap1 = BitmapFactory.decodeFile(file1.getAbsolutePath());
Log.e("Bitmap1",""+bitmap1);
SharePhoto photo = new SharePhoto.Builder()
.setBitmap(bitmap1)
.build();
SharePhotoContent content = new SharePhotoContent.Builder()
.addPhoto(photo)
.build();
ShareApi.share(content, null);
Log.e("Sharing","Successful");
}
@Override
public void onActivityResult(int requestCode, int responseCode, Intent data)
{
super.onActivityResult(requestCode, responseCode, data);
callbackManager.onActivityResult(requestCode, responseCode, data);
}
我的 Logcat 输出如下。
11-21 12:57:06.248 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ glUtilsParamSize: unknow param 0x00000b44
11-21 12:57:06.269 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ glUtilsParamSize: unknow param 0x00000bd0
11-21 12:57:06.276 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ **** ERROR unknown type 0x73000f (glSizeof,72)
11-21 12:57:08.582 1139-1171/com.example.omshiv.moviehub W/EGL_emulation﹕ eglSurfaceAttrib not implemented
11-21 12:57:08.582 1139-1171/com.example.omshiv.moviehub W/OpenGLRenderer﹕ Failed to set EGL_SWAP_BEHAVIOR on surface 0xa0625d40, error=EGL_SUCCESS
11-21 12:57:08.598 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ glUtilsParamSize: unknow param 0x00000b44
11-21 12:57:08.599 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ glUtilsParamSize: unknow param 0x00000bd0
11-21 12:57:08.613 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ **** ERROR unknown type 0x73000f (glSizeof,72)
11-21 12:57:08.642 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ glUtilsParamSize: unknow param 0x00000b44
11-21 12:57:08.650 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ glUtilsParamSize: unknow param 0x00000bd0
11-21 12:57:08.664 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ **** ERROR unknown type 0x73000f (glSizeof,72)
11-21 12:57:08.688 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ glUtilsParamSize: unknow param 0x00000b44
11-21 12:57:08.691 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ glUtilsParamSize: unknow param 0x00000bd0
11-21 12:57:08.703 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ **** ERROR unknown type 0x73000f (glSizeof,72)
11-21 12:57:08.739 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ glUtilsParamSize: unknow param 0x00000b44
11-21 12:57:08.740 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ glUtilsParamSize: unknow param 0x00000bd0
11-21 12:57:08.762 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ **** ERROR unknown type 0x73000f (glSizeof,72)
11-21 12:57:08.776 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ glUtilsParamSize: unknow param 0x00000b44
11-21 12:57:08.798 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ glUtilsParamSize: unknow param 0x00000bd0
11-21 12:57:08.822 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ **** ERROR unknown type 0x73000f (glSizeof,72)
11-21 12:57:08.833 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ glUtilsParamSize: unknow param 0x00000b44
11-21 12:57:08.867 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ glUtilsParamSize: unknow param 0x00000bd0
11-21 12:57:08.901 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ **** ERROR unknown type 0x73000f (glSizeof,72)
11-21 12:57:08.905 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ glUtilsParamSize: unknow param 0x00000b44
11-21 12:57:08.908 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ glUtilsParamSize: unknow param 0x00000bd0
11-21 12:57:08.925 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ **** ERROR unknown type 0x73000f (glSizeof,72)
11-21 12:57:08.949 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ glUtilsParamSize: unknow param 0x00000b44
11-21 12:57:08.950 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ glUtilsParamSize: unknow param 0x00000bd0
11-21 12:57:08.953 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ **** ERROR unknown type 0x73000f (glSizeof,72)
11-21 12:57:09.079 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ glUtilsParamSize: unknow param 0x00000b44
11-21 12:57:09.080 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ glUtilsParamSize: unknow param 0x00000bd0
11-21 12:57:09.099 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ **** ERROR unknown type 0x73000f (glSizeof,72)
11-21 12:57:09.127 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ glUtilsParamSize: unknow param 0x00000b44
11-21 12:57:09.129 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ glUtilsParamSize: unknow param 0x00000bd0
11-21 12:57:09.152 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ **** ERROR unknown type 0x73000f (glSizeof,72)
11-21 12:57:09.155 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ glUtilsParamSize: unknow param 0x00000b44
11-21 12:57:09.155 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ glUtilsParamSize: unknow param 0x00000bd0
11-21 12:57:09.169 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ **** ERROR unknown type 0x73000f (glSizeof,72)
11-21 12:57:09.179 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ glUtilsParamSize: unknow param 0x00000b44
11-21 12:57:09.199 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ glUtilsParamSize: unknow param 0x00000bd0
11-21 12:57:09.205 1139-1171/com.example.omshiv.moviehub E/eglCodecCommon﹕ **** ERROR unknown type 0x73000f (glSizeof,72)
我得到了解决方案。这里的问题是我正在使用片段。 Facebook Activity 加载到 WebView 但未完成共享,Fragment 仍为空。所以我从 Fragment 切换到 Activity 这解决了我的问题。