2017-04-13 24 views
0

FB.AppRequest에 문제가 있습니다. 사용자가 Facebook UI에 표시된 목록에서 하나의 친구 만 선택해야하지만 Facebook Unity3d SDK를 보는 방법을 찾을 수 없습니다.Unity3d AppRequest 선택시 제한 입력

도움 주셔서 감사합니다. 당신이 FB.AppRequest에 대한 설명서를 보면

public void ShareWithUsers() 
{ 
    FB.AppRequest(

     "Come and join me, i bet u cant beat my score", 
     null, 
     new List<object>() {"app_users"}, 
     null, 
     null, 
     null, 
     null, 
     ShareWithUsersCallback 

    ); 
} 

void ShareWithUsersCallback(IAppRequestResult result) 
{ 
    if (result.Cancelled) 
    { 
     Debug.Log("Challenge Cancel"); 
     GameObject.Find("CallBacks").GetComponent<Text>().text = "Challenge Cancel"; 
    } 
    else if (!String.IsNullOrEmpty(result.Error)) 
    { 
     Debug.Log("Challenge on error"); 
     GameObject.Find("CallBacks").GetComponent<Text>().text = "Challenge on error"; 
    } 
    else if (!String.IsNullOrEmpty(result.RawResult)) 
    { 
     Debug.Log("Success on challenge"); 

    } 
} 
+0

코드에서 "challenge"및 "success"를 어떻게 작성하는지 확인하고 'Challenge Cancel', 'Challenge Error'및 'Challenge Success'와 같은 형식으로 모든 디버그 로그를 작성하는 것이 좋습니다. . – moondaisy

답변

1

그것은 네 번째 매개 변수가 "에"이라고 설명한다. 이제 보낸 사람이 그/그녀가 수신자를 선택할 수있는 대화 상자가 표시됩니다처럼 그것을 null두면 to 요청을 보낼 수있는 페이스 북 ID의 목록입니다

public static void AppRequest(
    string message, 
    OGActionType actionType, 
    string objectId, 
    IEnumerable<string> to, 
    string data = "", 
    string title = "",  
    FacebookDelegate<IAppRequestResult> callback = null 
) 

.

그래서 당신은 그것을 null으로 남겨두고 사용자가 선택하도록하거나, 이미 선택했으면 (도전 할 친구를 이미 알고있는 경우) 목록을 작성하고 페이스 북 ID를 추가해야합니다.

FB.AppRequest(

     "Come and join me, i bet u cant beat my score", 
     null, 
     new List<object>() {"app_users"}, 
     new List<string>() {"[id of your friend]"}, 
     null, 
     null, 
     null, 
     ShareWithUsersCallback 

    ); 

어느 쪽이든이 라인 new List<object>() {"app_users"}는 요청이 이미 게임을 재생 사람에게 발송에 실패 할 수 있다는 것을 의미한다. 하지만 제거하면 친구에게 보낼 수 있습니다. 내가 설정 some older code을 보았다

사용자가 UI를 통해 단 하나의 친구를 선택하는 확인하기 위해, 하나에 살고 있고, 당신을 수 있도록 해주는 maxRecipients :

FB.AppRequest(
     string message, 
     IEnumerable<string> to = null, 
     IEnumerable<object> filters = null, 
     IEnumerable<string> excludeIds = null, 
     int? maxRecipients = null, 
     string data = "", 
     string title = "", 
     FacebookDelegate<IAppRequestResult> callback = null); 

그러나이 더 이상 나타나지 않습니다 선적 서류 비치.