2012-07-25 51 views
0

我想添加一个帖子到Facebook的按钮为我的应用程序共享的东西,我认为我的代码的方式有问题。首先,我有我的登录类,其中它处理Facebook的所有登录部分,然后存储我需要的所有数据(用户名,电子邮件,fb_id),我可以将所有登录类的值传递给另一个,然后完成上课原因我不希望用户点击后退按钮后返回登录页面。在我的细节活动中有一个按钮,当我点击它时需要发布到facebook我设置的消息,但问题是当我使用mFacebook.isSessionValid()检查登录是否对用户有效时,它不会返回任何内容我认为我的Facebook课程的所有信息都会刷新(尽管我不确定那部分)。那么这就是我需要如何在另一个类上发布消息。Facebook的发布状态获得从一个类到另一个类的会话

这里的POST代码我使用:

private void postToFacebook() { 
     mProgress.setMessage("Posting ..."); 
     mProgress.show(); 

     AsyncFacebookRunner mAsyncFbRunner = new AsyncFacebookRunner(mFacebook); 

     Bundle params = new Bundle(); 
     params.putString("message", "My Message"); 
     params.putString("name", "My app name"); 
     params.putString("caption", "caption here"); 
     params.putString("link", "URL PAGE HERE"); 
     params.putString("description", "DESCRIPTIONS HERE"); 
     params.putString("picture", "IMAGE URL"); 
     mAsyncFbRunner.request("me/feed", params, "POST", new WallPostListener()); 

    } 

    private final class WallPostListener extends BaseRequestListener { 
     public void onComplete(final String response) { 
      mRunOnUi.post(new Runnable() { 
       public void run() { 
        mProgress.cancel(); 

        Toast.makeText(ScoreScreen.this, "Posted to Facebook", Toast.LENGTH_SHORT).show(); 
       } 
      }); 
     } 
    } 

这是我用于显示登录页面(主)之后的下一个页面代码:

SessionStore.saveName(username, Main.this); 
      //IF ONLY SUCCESS IN FETCHING RECORDS 
      Intent i = new Intent(Main.this, SplashScreen.class); 
      i.putExtra("fname", fname); 
      i.putExtra("lname", lname); 
      i.putExtra("eadd", eadd); 
      i.putExtra("fbid", fbid); 
      i.putExtra("gender", gender); 
      startActivity(i); 
      Toast.makeText(Main.this, "Connected to Facebook", Toast.LENGTH_SHORT).show(); 
      Main.this.finish(); 

回答

0

使用SessionStore解决的问题。恢复。我不太确定,但我认为在完成主要活动并转到下一个课程后,会话就会结束。稍后将回顾这些问题。

相关问题