androd欢迎页播放视频和广告页面

偶然看到 “马蜂窝自由行app”,在第一次打开时播放了个视频文件,以后打开后上方是一个广告,下方是一个类似gif的动画。感觉很炫,所以决定实现一下。
第一次打开得效果如下

第二次打开得效果如下:
androd欢迎页播放视频和广告页面_第1张图片

一、具体实现
一开始没见过这种方式得欢迎页面,通过反编译马蜂窝自由行app后发现。在raw文件夹下有2个视频文件,一个是上方得那个视频,一个是下方得那个logo视频。看到这2个文件,基本就可以确定他是怎么实现得了。(顺便再这里吐槽一下,这个好得一个app居然不混淆下,内部访问网络得部分代码以及访问得url都很容易获取。)

1、播放MP4视频

其实是很简单的,用一个videoview可以直接播放本地MP4文件(这里重写了个videoview,因为不修改下的话视频不能全屏播放)

 <com.zk.ui.FullScreenView
        android:id="@+id/welcomeVideo"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_centerInParent="true" />

在activity中如下代码即可:

welcomeVideo=(VideoView)findViewById(R.id.welcomeVideo);
        Uri localUri = Uri.parse("android.resource://" + getPackageName() + "/" + R.raw.welcome);
        welcomeVideo.setVideoURI(localUri);
        welcomeVideo.start();
        welcomeVideo.requestFocus();

2、广告页面

出现宣传动画只是在第一次打开app时会有体现,以后打开得话,上方是一个广告页面,下方是一个logo得动画。

mplayer=new MediaPlayer();
AssetFileDescriptor localAssetFileDescriptor = getResources().openRawResourceFd(R.raw.splash_animation);
try {
                             mplayer.setDataSource(localAssetFileDescriptor.getFileDescriptor(), localAssetFileDescriptor.getStartOffset(), localAssetFileDescriptor.getLength());
                    mplayer.setOnPreparedListener(new OnPreparedListener() {

                        @Override
                        public void onPrepared(MediaPlayer arg0) {
                            // TODO Auto-generated method stub
                            readyToPlay=true;
                            launchAds.setVisibility(View.VISIBLE);
                            launchAds.setImageUrl("http://file32.mafengwo.net/M00/4F/21/wKgBs1cN_3qAOKQpAAhByaOonCY71.jpg");
                            mplayer.start();

                        }
                    });

使用AssetFileDescriptor和MediaPlayer播放raw下方得logo视频,在上方使用了WebImageView这个开源程序显示了个网络图片。

下方是代码的下载地址。
http://download.csdn.net/detail/zhang58246500/9491195

你可能感兴趣的:(高仿系列)