首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > 移动开发 >

流媒体开发之-直播解析优酷电影链接-一

2013-10-08 
流媒体开发之-直播解析优酷电影链接-1可可工作室出品:欢迎使用可可直播视频播放器:http://pan.baidu.com/s

流媒体开发之-直播解析优酷电影链接-1

可可工作室出品:

欢迎使用可可直播视频播放器:

http://pan.baidu.com/share/link?shareid=3291150676&uk=4111208708

1、Video video = new VParser(context).parse(url);String videoTitle = video.title;String videoUri = video.videoUri;

当然在程序里面我们不能这样写,因为这个功能是消耗时间的,所以我们要放在一个与主线程无关的后台,可以使用异步,Handler, Thread,这里我们使用官方的一个实例,放在异步里面,首先是布局代码:

activity_main.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:tools="http://schemas.android.com/tools"    android:layout_width="match_parent"    android:layout_height="match_parent"    android:orientation="vertical"    android:paddingBottom="@dimen/activity_vertical_margin"    android:paddingLeft="@dimen/activity_horizontal_margin"    android:paddingRight="@dimen/activity_horizontal_margin"    android:paddingTop="@dimen/activity_vertical_margin"    tools:context=".MainActivity" >    <TextView        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="@string/website_url" />    <EditText        android:id="@+id/et_website"        android:layout_width="match_parent"        android:layout_height="wrap_content"        android:ems="10"        android:inputType="textMultiLine"        android:text="@string/sample" >    </EditText>    <Button        android:id="@+id/bt_parser"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="@string/btn_parser" />    <TextView        android:id="@+id/tv_title"        android:layout_marginTop="10dp"        android:selectAllOnFocus="true"        android:layout_width="match_parent"        android:layout_height="wrap_content" />    <TextView        android:id="@+id/tv_uri"        android:layout_marginTop="10dp"        android:layout_width="match_parent"        android:layout_height="wrap_content"        android:selectAllOnFocus="true" /></LinearLayout>


接下来就是主代码了:
MainActivity.java

package com.yixia.sample.vparser;import android.app.Activity;import android.os.AsyncTask;import android.os.Bundle;import android.text.TextUtils;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.EditText;import android.widget.TextView;import com.yixia.vparser.VParser;import com.yixia.vparser.model.Video;public class MainActivity extends Activity implements OnClickListener {private VParser mVParser;private EditText mEditText;private Button mParserButton;private TextView mTitleView;private TextView mUriView;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);mVParser = new VParser(this);mEditText = (EditText)findViewById(R.id.et_website);mParserButton = (Button)findViewById(R.id.bt_parser);mParserButton.setOnClickListener(this);mTitleView = (TextView)findViewById(R.id.tv_title);mUriView = (TextView)findViewById(R.id.tv_uri);}@Override  public void onClick(View v) {String website = mEditText.getText().toString();if (TextUtils.isEmpty(website)) {return;}new AsyncTask<Object, Void, Video>() {@Override      protected Video doInBackground(Object... params) {      return mVParser.parse(String.valueOf(params[0]));      }@Overrideprotected void onPostExecute(Video result) {  super.onPostExecute(result);  String title = result.title;  String uri = result.videoUri;  String website = result.videoSiteUri;  mTitleView.setText(title);  mUriView.setText(uri);}}.execute(website);    }}


看一下解析效果:

流媒体开发之-直播解析优酷电影链接-一

我不太清楚大家看见这个链接会想到什么,反正我一看见这个解析出来的m3u8(当然我测试过是好用的),我看见网页链接中的id_后面的XNTY4NTE0OTc2与解析出来的m3u8中vid/后面,type之前的内容是一样的,所以我就想这会不会是巧合呢,所以我就试验了另一个中国合伙人http://v.youku.com/v_show/id_XNTk1MzY5MDE2.html 然后用里面的XNTk1MzY5MDE2替换解析出来的m3u8中的XNTY4NTE0OTc2,然后测试了一下链接是好用的,说明优酷电影频道资源是mp4格式的链接是样式是一样的,这样最便捷的方式获取链接的方式就是使用jsoup把http://movie.youku.com/ 中所有的视频链接获取出现,然后用户点击某一个链接后,取出链接中的id,放在vid和type之间就是这个视频的m3u8链接了,最后放在视频播放器里面播放就可以了,我实验过电视台,电影,综艺都可以以这样的方式获取。

    当然这种方式不是最保险的,一旦优酷该变了路径就不行了,你就需要重新去解析一个看看,在下一章中我会讲解解析优酷电影频道,把里面的电影的缩略图,标题,链接解析到本地

 

可可工作室出品:

欢迎使用可可直播视频播放器:

http://pan.baidu.com/share/link?shareid=3291150676&uk=4111208708

 

热点排行