2014-07-22 3 views
0

iOS 응용 프로그램에서 YouTube에 동영상 업로드를 통합하려고합니다.YouTube : 단일 계정/채널에 동영상을 업로드 할 수있는 복수 계정 인증 (OAuth)

단계 다음 :

  1. 만든 Google 계정 및 개발자 콘솔의 계정에 대한 유튜브 데이터 API를 할 수 있습니다.
  2. 생성 된 클라이언트 ID와 클라이언트 비밀이 응용 프로그램에 통합되었습니다.
  3. 체크 아웃 일반적으로 MAC 도구 인 Youtube 업로드에 대해 Google API objective C client, iOS 용으로 방금 수정했습니다.
  4. 응용 프로그램을 실행하십시오.
  5. 로그인 (OAuth)을 요청하는 메시지가 표시됩니다.

사례 # 1

  • 클라이언트 ID 및 클라이언트의 비밀을 만드는 데 사용되는 로그인에 대해 동일한 계정을 사용합니다.
  • 범위를 허용하고 권한 부여 도구를 Youtube 서비스에 할당합니다.

GTMOAuth2ViewControllerTouch : completionHandler^(GTMOAuth2ViewControllerTouch의 ViewController *, * GTMOAuth2Authentication의 승인에, 오류 NSError *)
{

self.youTubeService.authorizer = 인증;

}

  • 시작 업로드 및 그것을 잘 작동합니다.

사례 # 로그인에 대한 2

  • 를 사용하여 다른 계정.
  • 범위를 허용하고 권한 부여 도구를 Youtube 서비스에 할당합니다.

GTMOAuth2ViewControllerTouch : completionHandler^(GTMOAuth2ViewControllerTouch의 ViewController *, * GTMOAuth2Authentication의 승인에, 오류 NSError *)
{

self.youTubeService.authorizer = 인증;

}

  • 시작 업로드 및 그것의 원인 : 오류 도메인 = com.google.GTLJSONRPCErrorDomain 코드 = -32602는 "작업을 완료 할 수 없습니다.(무단) "사용자 정보 0x986abe0 = {에러 = 무단, GTLStructuredError = GTLErrorObject 0x98528d0 {메시지"무단 "코드 : -32602 데이터 : 1} NSLocalizedFailureReason = (무단)
  • }

enter image description here

참고 : 로그인 및 업로드 할 때 동일한 계정을 사용하면 정상적으로 작동하고 동영상이 YouTube에 표시됩니다. 다른 계정으로 시도 할 때마다 문제가 발생하여 업로드 할 때마다 Google API objective C 클라이언트 신청서도 있습니다.

다른 케이스가없는 경우 알려 주시면 알려 드리겠습니다. 덕분에 .

답변

0

검색/테스트 당일에 마침내 원인을 발견했습니다. OAuth 프로세스에 문제가 없습니다. 원인은 다른 여러 개의 계정 (클라이언트 ID 및 클라이언트 비밀 번호를 만드는 데 사용 된 계정이 아닌)이 YouTube에 채널이없는 것이 원인입니다.

해결책 : 사용자 계정이 Youtube에 처음이라면 YouTube에 해당 계정에 대한 채널이 없습니다. 사용자는 사용자 계정이 유효 채널이있는 경우 하나

(왼쪽 창에서 내 채널이 선택받을 때, 그것은 쉽게, 유튜브 자체가 새로운 채널을 만들 알려드립니다) 작성해야 다음, 위의 "무단"오류 일어나지 않을거야.

1

인증을 잘못했거나 유효한 YouTube 채널이 연결되지 않았을 수 있습니다. YouTube Direct Lite for iOS project for the best example을 확인할 수 있습니다.

+0

OAuth에 아무런 문제가 없어 기본 계정에서 정상적으로 작동합니다. 심지어 나는 yt-direct-lite-iOS를 시도했다. – Vedchi