2013-10-11 28 views
1

隱私設置功能,我經歷了許多線程搜查,我沒有成功還整合Facebook在應用

我下面https://developers.facebook.com/docs/android/getting-started/facebook-sdk-for-android/,我已經成功整合了原生FB到我的應用程序。 我可以檢索FB好友列表並貼到牆上。 。 。 。

但我正在搜索如何設置我發佈的活動的隱私設置。

從應用程序,我想詢問用戶的隱私設置,並相應我想隱私設置要麼ONLY_ME/FRIENDS/EVERYONE

我已經試過

authButton = (LoginButton) view.findViewById(R.id.fb_logIn_btn); 
authButton.setDefaultAudience(SessionDefaultAudience.ONLY_ME); 

,但沒有工作,然後我試着編輯FB的LoginButton.class中的Login Properties。我只是硬編碼它只是測試

private SessionDefaultAudience defaultAudience = SessionDefaultAudience.ONLY_ME; 

但即使這樣也沒有工作,然後我嘗試用下面的代碼指的threadss,但我仍然

private void requestPublishPermissions(Session session) 
    { 
     Log.e("session.getPermissions().contains(publish_actions)", " is "+session.getPermissions().contains("publish_actions")); 
     if (session != null && session.getPermissions().contains("publish_actions")) 
     { 
      Log.e(" inside if loop ", " session.getPermissions().contains(publish_actions) "); 
      Session.NewPermissionsRequest newPermissionsRequest = new Session.NewPermissionsRequest(SplashScreen.this, Arrays.asList("publish_actions")) 
      // demonstrate how to set an audience for the publish permissions, 
      // if none are set, this defaults to FRIENDS 
      .setDefaultAudience(SessionDefaultAudience.ONLY_ME); 
      session.requestNewPublishPermissions(newPermissionsRequest); 
     } 
    } 

我不併不成功不知道我哪裏出錯了。請提前諮詢,謝謝。

回答

1

setDefaultAudience僅在您第一次請求發佈權限時纔有用。它基本上爲您的應用程序設置了全局上限(這意味着您的應用程序不能在隱私級別之上發佈)。用戶也可以進入他們的設置,並隨時更改這個上限(應用程序不知道),所以即使您要求FRIENDS,他們也可能稍後將其更改爲ONLY_ME。

如果要在運行時調整隱私級別,則可以在posting to me/feed時設置「隱私」字段。隱私字段的有效輸入是defined here。請注意,不管您將隱私設置爲什麼,它都不能超出用戶爲您的應用設置的內容。

或者,您可以使用native share dialog,它允許用戶控制隱私,消息等,並且因爲委託給Facebook應用程序而不需要任何登錄(或發佈權限)。