5

我们可以通过 iPhone 应用程序中的 LinkedIn 集成共享消息(文本)。另外,我可以在 LinkedIN 中分享 图片网址,但是有没有可能通过 iPhone 应用程序中的 LinkedIn 分享视频网址......?

提前致谢.....

4

2 回答 2

2

使用MIS-LinkedIn-Share分享网址。

只需编写以下代码即可分享。

- (IBAction)share:(id)sender {
[[MISLinkedinShare sharedInstance] shareContent:self postTitle:@"Title" postDescription:@"Description" postURL:@"http://www.youtube.com/watch?v=_FaWTNEyG80" postImageURL:@"http://www.google.com/images/errors/logo_sm.gif"];
}

分享前别忘了设置api和秘钥。

或者

您还可以使用oAuthStarterkit方法来共享 url:-

这是 oAuthStarterKit 的工作代码

1) 打开文件 OAuthLoginView.m

2) 找到方法 initLinkedInApi,在此处添加您的 api 和密钥。

3) OAuthLoginView 中 viewDidAppear 的注释行为

- (void)viewDidAppear:(BOOL)animated
{
    if ([apikey length] < 64 || [secretkey length] < 64)
    {
//        UIAlertView *alert = [[UIAlertView alloc]
//                          initWithTitle: @"OAuth Starter Kit"
//                          message: @"You must add your apikey and secretkey.  See the project file readme.txt"
//                          delegate: nil
//                          cancelButtonTitle:@"OK"
//                          otherButtonTitles:nil];
//        [alert show];
//        [alert release];
//        
//        // Notify parent and close this view
//        [[NSNotificationCenter defaultCenter] 
//         postNotificationName:@"loginViewDidFinish"        
//         object:self
//         userInfo:self.profile];

//        [self dismissModalViewControllerAnimated:YES];
    }

    [self requestTokenFromProvider];
}

- (void)shareImp
{
    NSLog(@"share Imp called ");
    NSURL *url = [NSURL URLWithString:@"http://api.linkedin.com/v1/people/~/shares"];
    OAMutableURLRequest *request =[[OAMutableURLRequest alloc] initWithURL:url
                                    consumer:consumer
                                       token:self.accessToken
                                    callback:nil
                           signatureProvider:nil];

    NSMutableDictionary *contents=[[NSMutableDictionary alloc] init];
    [contents setValue:@"description goes here" forKey:@"description"];
    [contents setValue:@"www.google.com" forKey:@"submitted-url"];
    [contents setValue:@"title goes here" forKey:@"title"];
    [contents setValue:@"http://economy.blog.ocregister.com/files/2009/01/linkedin-logo.jpg" forKey:@"submitted-image-url"];

    NSMutableDictionary *visible=[[NSMutableDictionary alloc] init];
    [visible setValue:@"anyone" forKey:@"code"];

    NSMutableDictionary *updatedic=[[NSMutableDictionary alloc] init];

    [updatedic setObject:visible forKey:@"visibility"];
    [updatedic setObject:contents forKey:@"content"];
    [updatedic setValue:@"Check out the LinkedIn Share API!" forKey:@"comment"];

    NSMutableData *data = [[NSMutableData alloc] init];
    NSKeyedArchiver *archiver = [[NSKeyedArchiver alloc] initForWritingWithMutableData:data];
    [archiver encodeObject:updatedic forKey:@"share"];
    [archiver finishEncoding];
    [archiver release];

    NSLog(@"post dictionary is %@",updatedic);


    NSData *postData=[NSData dataWithData:data];
    [request setValue:@"json" forHTTPHeaderField:@"x-li-format"];
    [request setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
    [request setValue:[NSString stringWithFormat:@"%d",[postData length]] forHTTPHeaderField:@"Content-Length"];

    [request setHTTPBody:postData];
    [request setHTTPMethod:@"POST"];

    OADataFetcher *fetcher = [[OADataFetcher alloc] init];
    [fetcher fetchDataWithRequest:request
                         delegate:self
                didFinishSelector:@selector(postUpdateApiCallResult:didFinish:)
                  didFailSelector:@selector(postUpdateApiCallResult:didFail:)];

    [request release];
}

- (void)postUpdateApiCallResult:(OAServiceTicket *)ticket didFinish:(NSData *)data
{
    NSLog(@"did finish called ");

    NSString *responseBody = [[NSString alloc] initWithData:data
                                                   encoding:NSUTF8StringEncoding];

    NSLog(@"response body after posting is %@",responseBody);

    [responseBody release];
    [self dismissModalViewControllerAnimated:YES];
}

- (void)postUpdateApiCallResult:(OAServiceTicket *)ticket didFail:(NSData *)error
{
    NSLog(@"%@",[error description]);
}
于 2013-06-04T14:34:31.340 回答
0

通过使用 Sharekit 框架,我们可以在 LinkedIn 中发布视频 URL。为此,我们可以将 url 作为字符串传递,

SHKItem *shareItem = [SHKItem text:text];
  [SHKLinkedIn shareItem:shareItem];
于 2013-05-31T12:16:46.477 回答