2016-05-30 7 views
1

Ionicでアプリを開発しています。ブラウザではすべて正常に動作しますが、iOSにコンパイルすると問題が発生します。 admobで広告を表示した後。埋め込みのYouTube動画の再生ボタンをクリックすると、iframeが応答しなくなります。バナービューや他の広告を作成せずに、すべて正常に動作します。admobで広告を表示した後、iOSデバイス上のイオンアプリのiFrame内に埋め込みのYouTube動画を再生できません

これはなぜ起こっているのでしょうか?

ありがとうございます。

アップデート:jQueryでiframeのsrcを更新するボタンを使用すると、埋め込みビデオの再生ボタンを押して見ることができます。コードでは、ビデオのサムネイルを最初に表示し、ボタンを押した後に埋め込みURLを読み込むという回避策があります。

AdServiceでは

function AdService(admobSvc) { 

    var service = {}; 

    service.ShowInterstitial = Interstitial; 
    service.ShowBanner = Banner; 

    return service; 

    function Interstitial() { 
     admobSvc.requestInterstitialAd(); 
    } 

    function Banner() { 
     admobSvc.createBannerView(); 
    } 
} 

IFRAME

<div id="button-bar23" class=" button-bar "> 
    <button ng-click="vm.play($index, trailer.embedded)" class=" button button-assertive icon ion-social-youtube ">#{{$index + 1}} {{video.titel}}</button> 
</div> 
<div id="video-container{{$index}}" class="video-container"> 
    <iframe ng-click="vm.play($index)" id="video{{$index}}" src="{{video.thumbnail}}" frameborder="0" allowfullscreen="" width="560" height="315" 
        style="position:absolute;top:0;left:0;width:100%;height:100%;"></iframe> 
</div> 

コントローラ

function videoCtrl(ApiService, SharingService, AdService) { 

    var vm = this; 

    ... 

    vm.play = function(index, embedded){ 
     console.log(index); 
     $("#video"+index)[0].src = embedded; 
    } 

    vm.change = function() { 
     AdService.ShowInterstitial(); 
    } 
} 

ルート

angular.module('app.routes', []).config(function ($stateProvider, $urlRouterProvider, $sceDelegateProvider) { 

    $stateProvider 

     .state('menu.videos', { 
      url: '/videos', 
      views: { 
       'side-menu': { 
        templateUrl: 'templates/videos.html', 
        controller: 'videoCtrl as vm' 
       } 
      } 
     }) 
     ... 
+1

をこの設定を追加してみ「は機能しない」は有効な問題の説明ではありません。あなたのコードを見ずに誰かが解決策を見つけることを期待していますか? – polku

+1

@polku私は急いでいました。私はそれが今より良いことを願っています。 – cato1011

+0

うわー、私はそれを信じられませんでしたが、古い伝説は本当だった、一部の人々は実際に正しい方法で自分の質問を編集することができます:)申し訳ありませんが、あなたを助けることはできません。 – polku

答えて

0

ルートプロジェクトconfig.xmlに

<preference name="AllowInlineMediaPlayback" value="true" />

関連する問題