2012-11-17 3 views
2

언제 UIActivityViewController을 사용해야하는지 이해하도록 도와 줄 수 있습니까? 내 앱에 대한 공통 정보를 공유하는 버튼이 있습니다 (예 : '이 앱이 마음에 듭니다'링크 및 이미지 포함). 내 예전의 코드이었다 : UIActivityViewController를 사용하여 혼란 스럽습니다.

NSMutableDictionary *params = [NSMutableDictionary dictionary]; 
[params setObject:picture forKey:@"picture"]; 
[params setObject:link forKey:@"link"]; 
[params setObject:@"I like MY app!" forKey:@"caption"]; 
[params setObject:@"I am now using MY iPhone app." forKey:@"description"]; 
[params setObject:linkToTheIcon forKey:@"icon"]; 
[params setObject:@"including link" forKey:@"type"]; 
[[FacebookConnection instance] feedLink:params andDelegate:self]; 

는 지금은 UIActivityViewController를 사용하고자하지만 난 그것에 모든 매개 변수를 전달하는 방법을 조금 혼란 스러워요. 아니면 다른 방식으로해야합니까?

ADDED : 그래서 나는 침묵하는 게시 절차가 필요하다는 것을 알고있었습니다. iOS 6 기능 (예 : 내장 FB 계정 사용)을 사용하여 자동 게시물 절차를 안내해주십시오. 지금은 장치에 FB 계정이 있는지 확인하는 방법과이를 생성하라는 메시지가 표시되지 않는지 이해할 수 없습니다. 계정에 액세스하려면 ACAccount 저장소 클래스 – requestAccessToAccountsWithType:options:completion:에 메서드가 있습니다. 그러나 계정이 없으면 오류가 반환됩니다. 미리 감사드립니다.

답변

1

바로, 당신이 페이스 북에 게시 할이 아닌 다른 곳 트위터 나 때문에 당신이 UIActivityViewController을 사용하지 않도록 분명한 것 같다 데 도움이? 먼저 사용자의 계정에 액세스해야합니다. 다음과 같이하십시오.

계정이 없으면 설정에서 사용자를 만들고 기본 사용 권한을 다시 얻으려고 시도해야합니다.

1

먼저 UIActivity를 서브 클래 싱해야합니다.

그런 다음 아이콘 설정을위한 activityImage 및 작업 수행을위한 performActivity를 포함하여 특정 메소드를 대체해야합니다.

자동으로 작업을 수행하는 대신 사용자 지정 작업 (예 : 표준 UIActivity의 Twitter 게시물과 같은)에 대한 사용자 상호 작용 및 정보가 더 필요하면 performActivity가 아닌 activityViewController를 무시해야합니다.

UIActivity (예 : MyActivity)를 서브 클래 싱 한 후에는 MyActivity 인스턴스를 만들어 initWithActivityItems : applicationActivities :로 전달하는 applicationActivities 배열의 요소로 만들어야합니다.

서브 클래 싱 및 아이콘 요구 사항에 대해 사용자가 재정의해야 할 내용을 정확하게 보려면 the documentation for UIActivity을보십시오.

희망이 상황에서 조금

+0

답변 주셔서 감사합니다.하지만 Facebook에 게시하고 이미 기본 UIActivity가 있습니다. 그래서 나는 정말로 (추가 사용자 상호 작용없이) 자동 게시가 필요하기 때문에 UIActivityViewController를 사용할 필요가없는 것으로 보인다. –

+0

동의 할 수 있도록 답변을 확장하십시오 (내 질문에 ADDED 섹션 참조). –

관련 문제