简体   繁体   English

如何使用 jwplayer android sdk 播放前贴片、中贴片和后贴片广告

[英]How to play pre-roll, mid-roll and post-roll ads using jwplayer android sdk

I am new in JWPlayer.我是 JWPlayer 的新手。 I got a licence from jwplayer and working on it.我从 jwplayer 获得了许可证并正在研究它。 I dont know how to play ads in mid-roll, pre-roll and post-roll.我不知道如何在插播广告、前贴片广告和后贴片广告中播放广告。 Also I tried but cant find any good resource.我也试过,但找不到任何好的资源。 Please guide me.请指导我。 My trial period will expire soon.我的试用期即将到期。 Thanks in advance.提前致谢。 I have tried the following code.我试过下面的代码。 I really have no idea how to play ads on JWPlayer.我真的不知道如何在 JWPlayer 上播放广告。

public class VideoActivity extends Activity implements VideoPlayerEvents.OnFullscreenListener
    {
        JWPlayerView mPlayerView;
        private JWEventHandler mEventHandler;
        String videoUri;
        ArrayList<AdBreak> adsBreakList;

        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            requestWindowFeature(Window.FEATURE_NO_TITLE);
            getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
            setContentView(R.layout.activity_video);
            mPlayerView = (JWPlayerView)findViewById(R.id.jwplayer);
            videoUri = "http:"+getIntent().getExtras().getString("url");
            adsBreakList = new ArrayList<>();
            mPlayerView.addOnFullscreenListener(this);
            mEventHandler = new JWEventHandler(mPlayerView);

            Ad ad1 = new Ad(AdSource.VAST, videoUri);
            AdBreak ad = new AdBreak("pre", ad1);
            adsBreakList.add(ad);

            PlaylistItem pi = new PlaylistItem.Builder().file(videoUri).adSchedule(adsBreakList).build();
            mPlayerView.load(pi);
        }

Here is an article on playing VAST Ads, VMAPs, and loading both into Google IMA for JW Player: https://developer.jwplayer.com/sdk/android/docs/developer-guide/interaction/advertising/这是一篇关于播放 VAST 广告、VMAP 以及将两者加载到 JW Player 的 Google IMA 的文章: https : //developer.jwplayer.com/sdk/android/docs/developer-guide/interaction/advertising/

Additionally, you may want to check out the advertising classes in the API reference: https://developer.jwplayer.com/sdk/android/reference/此外,您可能需要查看 API 参考中的广告类: https : //developer.jwplayer.com/sdk/android/reference/

Hopefully these articles help, if not, please feel free to comment again here or open up a support case with JW Player to help troubleshoot.希望这些文章有帮助,如果没有,请随时在此处再次发表评论或与 JW Player 打开支持案例以帮助进行故障排除。

Android Live video streaming with pre roll, midroll ads using JW Player使用 JW Player 带有前贴片广告、视频插播广告的 Android 直播视频流

 public class LiveTv extends BaseActivity implements      VideoPlayerEvents.OnErrorListener{

String path = "your video stream path";
String preRoll = "http://pubads.g.doubleclick.net or any other ad url";
String midRoll = "http://pubads.g.doubleclick.net or any other ad url";
ArrayList<PlaylistItem> videosList = new ArrayList<PlaylistItem>();
private Ad ad;
private AdBreak adBreak;
private LinkedList<AdBreak> schedule;
private PlaylistItem playItem;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.livetv);
    JWPlayerFragment fragment = (JWPlayerFragment) getFragmentManager().findFragmentById(R.id.playerFragment);
    // Get a handle to the JWPlayerView
    JWPlayerView playerView = fragment.getPlayer();
    playerView.playAd(preRoll);

    ad = new Ad(AdSource.VAST, midRoll);
    adBreak = new AdBreak("10%", ad);
    schedule = new LinkedList<>();
    schedule.add(adBreak);
    playItem = new PlaylistItem.Builder()
            .file(path)
            .adSchedule(schedule) // Set the Ad Schedule
            .build();

    playerView.addOnAdErrorListener(new AdvertisingEvents.OnAdErrorListener() {
        @Override
        public void onAdError(String s, String s1) {
            Log.d("adLoaad","adload failed");
            Toast.makeText(getApplicationContext(), "Error loading ad", Toast.LENGTH_LONG).show();
        }
    });
    playerView.load(playItem);
}

@Override
public void onError(String s) {
    Toast.makeText(getApplicationContext(), "JW player Error", Toast.LENGTH_LONG).show();
}
 }

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM