从Android共享时出现Facebook EOFEException

从Android共享时出现Facebook EOFEException,android,facebook,facebook-android-sdk,Android,Facebook,Facebook Android Sdk,代码:- 日志:- /** * */ private void publishStory() { try { final Session session = Session.getActiveSession(); if (session != null && session.isPublishPermission("publish_actions

代码:-

日志:-

/**
     * 
     */
    private void publishStory() {
        try {
            final Session session = Session.getActiveSession();

            if (session != null
                    && session.isPublishPermission("publish_actions")) {
                final Bundle postParams = new Bundle();
                postParams.putString("name", "Ride Till I Die");
                postParams.putString("caption",
                        "India's first portal for bike rides.");

                if (mShoutOutDescription != null
                        && mShoutOutDescription.length() > 0) {
                    postParams.putString("description", mShoutOutDescription);
                } else {
                    postParams.putString("description", "Ride Till I Die");
                }
                postParams.putString("link", mShoutOutURL);

                final Request.Callback callback = new Request.Callback() {
                    public void onCompleted(final Response response) {
                        final FacebookRequestError error = response.getError();
                        if (error != null) {
                            Log.e(TAG, error.getErrorMessage(),
                                    error.getException());
                            Toast.makeText(mActivity, "Failed to share.",
                                    Toast.LENGTH_SHORT).show();
                        }
                    }
                };

                final Request request = new Request(session, "me/feed",
                        postParams, HttpMethod.POST, callback);

                final RequestAsyncTask task = new RequestAsyncTask(request);
                task.execute();
            } else {
                facebookLogin();
            }
        } catch (final Exception e) {
            Log.e(TAG, e.getMessage(), e);
        }
    }

尝试使用此方法解决您的问题:

02-03 15:03:37.515: E/RTID-RTIDLoginActivity(32713): java.io.EOFException
02-03 15:03:37.515: E/RTID-RTIDLoginActivity(32713): com.facebook.FacebookException: java.io.EOFException
02-03 15:03:37.515: E/RTID-RTIDLoginActivity(32713):    at com.facebook.Response.fromHttpConnection(Response.java:322)
02-03 15:03:37.515: E/RTID-RTIDLoginActivity(32713):    at com.facebook.Request.executeConnectionAndWait(Request.java:1564)
02-03 15:03:37.515: E/RTID-RTIDLoginActivity(32713):    at com.facebook.Request.executeBatchAndWait(Request.java:1463)
02-03 15:03:37.515: E/RTID-RTIDLoginActivity(32713):    at com.facebook.RequestBatch.executeAndWaitImpl(RequestBatch.java:221)
02-03 15:03:37.515: E/RTID-RTIDLoginActivity(32713):    at com.facebook.RequestBatch.executeAndWait(RequestBatch.java:187)
02-03 15:03:37.515: E/RTID-RTIDLoginActivity(32713):    at com.facebook.RequestAsyncTask.doInBackground(RequestAsyncTask.java:164)
02-03 15:03:37.515: E/RTID-RTIDLoginActivity(32713):    at com.facebook.RequestAsyncTask.doInBackground(RequestAsyncTask.java:1)
02-03 15:03:37.515: E/RTID-RTIDLoginActivity(32713):    at android.os.AsyncTask$2.call(AsyncTask.java:287)
02-03 15:03:37.515: E/RTID-RTIDLoginActivity(32713):    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:305)
02-03 15:03:37.515: E/RTID-RTIDLoginActivity(32713):    at java.util.concurrent.FutureTask.run(FutureTask.java:137)
02-03 15:03:37.515: E/RTID-RTIDLoginActivity(32713):    at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:230)
02-03 15:03:37.515: E/RTID-RTIDLoginActivity(32713):    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1076)
02-03 15:03:37.515: E/RTID-RTIDLoginActivity(32713):    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:569)
02-03 15:03:37.515: E/RTID-RTIDLoginActivity(32713):    at java.lang.Thread.run(Thread.java:856)
02-03 15:03:37.515: E/RTID-RTIDLoginActivity(32713): Caused by: java.io.EOFException
02-03 15:03:37.515: E/RTID-RTIDLoginActivity(32713):    at libcore.io.Streams.readAsciiLine(Streams.java:203)
02-03 15:03:37.515: E/RTID-RTIDLoginActivity(32713):    at libcore.net.http.HttpEngine.readResponseHeaders(HttpEngine.java:560)
02-03 15:03:37.515: E/RTID-RTIDLoginActivity(32713):    at libcore.net.http.HttpEngine.readResponse(HttpEngine.java:813)
02-03 15:03:37.515: E/RTID-RTIDLoginActivity(32713):    at libcore.net.http.HttpURLConnectionImpl.getResponse(HttpURLConnectionImpl.java:274)
02-03 15:03:37.515: E/RTID-RTIDLoginActivity(32713):    at libcore.net.http.HttpURLConnectionImpl.getResponseCode(HttpURLConnectionImpl.java:486)
02-03 15:03:37.515: E/RTID-RTIDLoginActivity(32713):    at libcore.net.http.HttpsURLConnectionImpl.getResponseCode(HttpsURLConnectionImpl.java:134)
02-03 15:03:37.515: E/RTID-RTIDLoginActivity(32713):    at com.facebook.Response.fromHttpConnection(Response.java:301)
02-03 15:03:37.515: E/RTID-RTIDLoginActivity(32713):    ... 13 more

有时我也会遇到这个异常,你有什么解决办法吗?我正在使用这个方法。这个方法对我有效。
            Request request = new Request(Session.getActiveSession(),
                        "feed", _postParameter, HttpMethod.POST, callback);