0

YouTube リンクを UIWebView に追加する IPhone アプリを開発しています。ビデオをクリックしてそのビデオのリンクを再生すると、ユーザーがそのリンクを Facebook で共有できるように取得する必要があります。

次のコードを使用しています

- (void)viewDidAppear:(BOOL)animated
{
    [super viewDidAppear:animated];
    [webview loadRequest:[NSURLRequest requestWithURL:[NSURL  URLWithString:@"http://m.youtube.com"]]];
}
4

1 に答える 1

0

このコードを使用すると役立つ場合があります

NSString *getURL = @"";

    if (userInterfaceIdiom == UIUserInterfaceIdiomPhone) {
        getURL = [webview stringByEvaluatingJavaScriptFromString:@"function getURL() {var player = document.getElementById('player'); var video = player.getElementsByTagName('video')[0]; return video.getAttribute('src');} getURL();"];
    } else {
        getURL = [webview stringByEvaluatingJavaScriptFromString:@"function getURL() {var bh = document.getElementsByClassName('bh'); if (bh.length) {return bh[0].getAttribute('src');} else {var zq = document.getElementsByClassName('zq')[0]; return zq.getAttribute('src');}} getURL();"];
    }

    NSString *getTitle = [webview stringByEvaluatingJavaScriptFromString:@"function getTitle() {var jm = document.getElementsByClassName('jm'); if (jm.length) {return jm[0].innerHTML;} else {var lp = document.getElementsByClassName('lp')[0]; return lp.childNodes[0].innerHTML;}} getTitle();"];

    NSString *getTitleFromChannel = [webview stringByEvaluatingJavaScriptFromString:@"function getTitleFromChannel() {var video_title = document.getElementById('video_title'); return video_title.childNodes[0].innerHTML;} getTitleFromChannel();"];

    NSLog(@"%@, %@, %@", getURL, getTitle, getTitleFromChannel);
于 2013-01-31T08:05:13.997 に答える