YouTubeのビデオを自動的に再生させようとした人は誰も、苦労する可能性があることを知っています。 Appleは正しい理由で「自動再生」パラメータをブロックしましたが、この機能を動作させる必要があることがあります。目的c - JSを使ってVimeoの動画を自動再生する方法
私はauto playing youtube videosと同じ問題を抱えていたようですが、自動再生が動作するようにするには、プレーヤーがロードされて電話をする準備ができているときよりも、プレーヤーの 'onReady' 'player.play()'を押すと、別のユーザーの介入なしに開始されます。
VimeoにもJavaScript APIがあります。自動再生のトリックを行うことができます。使用方法を把握できません。
NSString *htmlString = [NSString stringWithFormat:
@"<html><head>"
"<script src=\"froogaloop.js\"></script>"
" <script>"
"function ready()"
"{$f(document.getElementById(\"player\")).api(\"play\");}"
"function func1() "
"{$f(document.getElementById(\"player\")).addEvent(\"ready\", ready);}"
"window.onload=func1;"
"</script></head><body>"
"<iframe id=\"player\" src=\"http://player.vimeo.com/video/39287488?api=1&player_id=player\" width=\"315\" height=\"455\" frameborder=\"0\" webkit-playsinline>"
" </iframe></body></html>"];
- (void)webViewDidFinishLoad:(UIWebView *)webView {
NSLog(@"webview loaded");
NSString *path = [[NSBundle mainBundle] pathForResource:@"froogaloop" ofType:@"js"];
NSString *jsCode = [NSString stringWithContentsOfFile:path encoding:NSUTF8StringEncoding error:nil];
[webView stringByEvaluatingJavaScriptFromString:jsCode];
}
しかし、これはアラートを追加した後、私のために動作しません:
彼らはJSミニライブラリーは、物事を簡単にするためにFroogaloop
呼ばれてきた、私は次のHTML文字列と一緒にそれを使用this answer by @ilaを見ましたこのコードには、私がどれ...それは準備ができて "イベントが発生したことがないので(?)ready()
メソッドが呼び出されることは決してありませんことを縫い目
を、func1()
が呼び出さと「addEvent」行を実行し得ることを見ることができますが、アイデア?
お返事ありがとうございます:)これはうまくいくようですが、私はこの解決策に2つの問題があります:1.あなたが言及したように、これは最良の方法ではありません。私はこの問題を公式Vimeo JS API。ボタンレイアウトのようなものは、時間とともに変化し、コードを壊すことがあります。 2.タップして再生すると、再生ボタンが数秒間表示され、その後にスピナーが始まります。私は 'setTimeout'で1000の値を変更しようとしますが、それは役に立ちません。私はスピナーが2番目に始まることを望みます。再生ボタンをタップしてください(少なくとも、再生ボタンはタップしても表示されません) – Eyal
JS APIによれば、プレイヤーに送ることができる「再生」方法がありますAPIリファレンス)を参照してください。私はチャンスがあるときに私の答えを更新します。 https://developer.vimeo.com/player/js-api – Jessedc
ok私はお待ちしています、10x – Eyal