2012-07-09 8 views
5

Hành động như Facebook đã được phát hành cho các ứng dụng di động.Android và Facebook Giống như hành động với đối tượng Open Graph

Như các tài liệu nói:

To publish a built-in Like action on an Open Graph object, 
invoke the following HTTP POST request with a user’s access 
token and the url of the Open Graph object. 
This Open Graph object can be of any type. 

curl -X POST \ 
    -F 'access_token=USER_ACCESS_TOKEN' \ 
    -F 'object=OG_OBJECT_URL' \ 
    https://graph.facebook.com/[User FB ID]/og.likes 

Thông thường, để tạo ra một ví dụ như yêu cầu đối với thông tin người dùng, tôi sử dụng loại mã này:

Facebook facebook; 
facebook = new Facebook(AppConfig.FACEBOOK_APP_ID); 

if (facebook.isSessionValid()) 
{ 
    JSONObject obj = facebook.request("me"); 
    ... 
} 
else 
{ 
    facebook.authorize(...) 
    { 
     @Override public void onComplete(Bundle values) 
     { 
      String token = facebook.getAccessToken(); 
      long expires = facebook.getAccessExpires(); 
      ... 
     } 
    } 
} 

Câu hỏi của tôi là chết đơn giản, nhưng tôi có thể Không tìm thấy câu trả lời, làm cách nào để yêu cầu "graph.facebook.com/[User FB ID] /og.likes", trong mã JAVA, khi tôi truy xuất mã thông báo truy cập của người dùng và hết hạn?

+0

Xin chào, Bạn vẫn gặp sự cố với điều này? Bạn đã sử dụng SDK Android chưa (https://developers.facebook.com/docs/mobile/android/build/) và xem các ứng dụng mẫu tại đây (https://developers.facebook.com/docs/opengraph/samples/) minh họa cách thiết lập các đối tượng tùy chỉnh đồ thị mở và thực hiện các hành động OG trên chúng vv .. – deesarus

Trả lời

0

Bạn sẽ làm điều gì đó như sau:

1/Sau khi bạn đã khởi tạo instance facebook bạn có thể khai báo như sau:

AsyncFacebookRunner mAsyncRunner = new AsyncFacebookRunner(facebook); 

2/Sau đó, khi bạn muốn đăng bài như bạn có thể sử dụng đoạn mã sau:

Bundle params = new Bundle(); 
params.putString("object",OG_OBJECT_URL); 

mAsyncRunner.request("me/og.likes", params, 
        "POST", new BaseRequestListener() { 
         @Override 
         public void onComplete(final String response, final Object state) { 
          // handle success 
         } 
        }); 

3/Bạn có thể chọn tắt việc thực hiện cho BaseRequestListener đây: https://github.com/fbsamples/android-social-cafe/blob/master/src/com/facebook/samples/socialcafe/BaseRequestListener.java

012.

Cuối cùng để xem mẫu Đồ thị mở như đang hoạt động, hãy xem mẫu này: https://github.com/fbsamples/android-social-cafe

+0

AsyncFacebookRunner không được chấp nhận –