2014-07-19 46 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

回答

相关问题