简体   繁体   中英

Android facebook feed posting error

I'm trying to post on facebook from my android app. It is working fine using previously created app id.

Some thread is saying it is because of publish_actions.

But using new on it is giving following error.

Response: {"error":{"message":"(#200) Requires extended permission: publish_actions","type":"OAuthException","code":200}}

My posting code is below:

public void shareVideoInFacebook() {

        mPrefs = getPreferences(MODE_PRIVATE);
        byte[] data = null;
//      shareAdvertisement();
        String link = "http://techslides.com/demos/sample-videos/small.mp4";
        String dataMsg = "Share for DateClip";
        Bundle param;
        facebook = new Facebook(APP_ID);
        System.out.println("Access Token: " + pref.getFbAccessToken());
        facebook.setAccessToken(pref.getFbAccessToken());
        facebook.setAccessExpires(pref.getFbAccessExpire());
        AsyncFacebookRunner mAsyncRunner = new AsyncFacebookRunner(facebook);
        InputStream is = null;
        try {
            // is = new FileInputStream(dataPath);
            // data = readBytes(is);
            param = new Bundle();
            param.putString("message", dataMsg);
            param.putString("filename", "DateClip");
            // param.putByteArray("video", data);
            param.putString("name", "DateClip");
            param.putString("caption",
                    "Build great social apps and get more installs.");
            param.putString("description", "Watch the Video");
            param.putString("link", link);
            // param.putString("picture",
            // "https://raw.github.com/fbsamples/ios-3.x-howtos/master/Images/iossdk_logo.png");
            mAsyncRunner.request("me/feed", param, "POST",
                    new RequestListener() {

                        @Override
                        public void onMalformedURLException(
                                MalformedURLException e, Object state) {
                            // TODO Auto-generated method stub

                        }

                        @Override
                        public void onIOException(IOException e, Object state) {
                            // TODO Auto-generated method stub
                            System.out.println("IO Exception.........");
                        }

                        @Override
                        public void onFileNotFoundException(
                                FileNotFoundException e, Object state) {
                            // TODO Auto-generated method stub
                            // Toast.makeText(getApplicationContext(),
                            // "File not found...", Toast.LENGTH_LONG).show();
                            System.out.println("FileNotfound.........");
                        }

                        @Override
                        public void onFacebookError(FacebookError e,
                                Object state) {
                            // TODO Auto-generated method stub
                            // Toast.makeText(getApplicationContext(),
                            // "Error...", Toast.LENGTH_LONG).show();
                            System.out.println("Error.........");
                        }

                        @Override
                        public void onComplete(String response, Object state) {
                            // TODO Auto-generated method stub
                            // Toast.makeText(getApplicationContext(),
                            // "Sharing Completed...",
                            // Toast.LENGTH_LONG).show();
                            System.out
                                    .println("Successfully Sent.......................................................");
                            System.out.println("Response: " + response);
                            runOnUiThread(new Runnable() {
                                public void run() {
                                    // UI code goes here
                                    Toast.makeText(getApplicationContext(),
                                            "Successfully shared on Facebook.",
                                            Toast.LENGTH_LONG).show();
//                                  shareForPassionPoint();
                                }

                            });
                        }
                    }, null);
            // mAsyncRunner.request(dataPath, parameters, httpMethod, new F,
            // state);
        } catch (Exception e) {
            e.printStackTrace();
        }

    }

Please help me.

This was the case with out iOS app. It may be the same for Android also.

" Please get your app reviewed again.

Recently, all the permissions except 3 basic ones (email, public_profile and user_friends) have been removed from the app if you had it reviewed by an older version of the Graph API.

Follow the steps as described here: https://developers.facebook.com/docs/facebook-login/review "

Hope this helps :)

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM