2014-07-19 45 views
-2

我已經創建了Facebook應用程序(用於測試目的)並在公共模式下進行了更改。我可以通過我的應用程序進行分享和分享。但其他用戶不能做同樣的,他們得到錯誤,如Android:其他用戶無法通過我的Facebook應用程序進行分享

{ 
    "error": { 
    "message": "(#200) The user hasn't authorized the application 
    to perform this action", 
    "type": "OAuthException", 
    "code": 200 
    } 
} 

我加入許可權限「publish_actions」也(我用的圖形API)。

當我在確認頁面,第一次登錄時顯示像

以下權限的消息還沒有被批准使用,並沒有被證明使用你的應用程序的人:publish_actions(送審或瞭解更多)

請在開發者頁面中分享有關應用配置步驟的詳細信息。

我在這裏的代碼:

登錄功能

private static final String[] PERMISSIONS ={"publish_actions","email"}; 

@SuppressWarnings("deprecation") 
    public void login() 
    { 

     sh = getSharedPreferences("mydata", 0); 
     String access_token = sh.getString("access_token", null); 
     Long expire = sh.getLong("expire", 0); 
     if(access_token!=null) 
      fb.setAccessToken(access_token); 
     if(expire!=0) 
      fb.setAccessExpires(expire); 
     if(!fb.isSessionValid()) 
     fb.authorize(this,PERMISSIONS,new DialogListener(){ 

      @Override 
      public void onComplete(Bundle values) { 
       // TODO Auto-generated method stub 
       Editor e = sh.edit(); 
       e.putString("access_token", fb.getAccessToken().toString()); 
       e.putLong("expire", fb.getAccessExpires()); 
       e.commit(); 
       Log.d("Token", fb.getAccessToken().toString()); 
       Log.d("expire",Long.toString(fb.getAccessExpires())); 
       Profile(); 
      } 

      @Override 
      public void onFacebookError(FacebookError e) { 
       // TODO Auto-generated method stub 

      } 

      @Override 
      public void onError(DialogError e) { 
       // TODO Auto-generated method stub 

      } 

      @Override 
      public void onCancel() { 
       // TODO Auto-generated method stub 

      } 

     }); 

    } 

//for image post 

@SuppressWarnings("deprecation") 
    public void ImageandTextupload() 
    { 
     byte[] data = null; 
     Bitmap bi = BitmapFactory.decodeResource(getResources(), R.drawable.ic_launcher); 
     ByteArrayOutputStream b = new ByteArrayOutputStream(); 
     bi.compress(Bitmap.CompressFormat.JPEG, 100, b); 
     data = b.toByteArray(); 

     Bundle param = new Bundle(); 
     param.putByteArray("picture", data); 
     param.putString("message", "this is test post"); 
     param.putString("description", "description"); 
     param.putString("caption", "caption"); 
     param.putString("name", "anand"); 
     param.putString("link","http://google.com"); 
     sh = getSharedPreferences("mydata", 0); 
     String access_token = sh.getString("access_token", null); 
     param.putString(Facebook.TOKEN, access_token); 

     asyn.request("/"+user_id+"/feed", param, "POST",new RequestListener(){ 

      @Override 
      public void onComplete(String response, Object state) { 
       // TODO Auto-generated method stub 
       Log.d("Photo_response",response); 
      } 

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

      } 

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

      } 

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

      } 

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

      }},null); 

    } 
+0

Downvoted遺憾,作爲一個很好的答案就在同一天,你沒有回覆,投票或接受。 – halfer

回答

相關問題