5

LinkedIn を iPhone アプリに統合することで、メッセージ (テキスト) を共有できます。また LinkedINで画像のURLを共有することはできますが、iPhoneアプリでLinkedIn経由で動画のURLを共有することは可能でしょうか……?

前もって感謝します.....

4

2 に答える 2

2

URLの共有には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 に答える