Пример #1
0
  public FavAdapter(Context context) {
    mContext = context;
    // mItems = item;
    Log.d(TAG, "FavAdapter(Context context) constructor");
    // 获取收藏数据库的执行实例
    favDbInstance = FavDbUtil.getInstance(mContext);

    File cacheDir = new File(context.getCacheDir(), "FxCache");
    mQueue = Volley.newRequestQueue(context, new DiskCache(cacheDir));
    mImageLoader = new ImageLoader(mQueue, null, null, null);

    initFavdata();
  }
  /** 注意,在这里统一所有的按钮点击处理!!! */
  @Override
  public void onClick(View v) {
    switch (v.getId()) {
      case R.id.image_share:
        Log.d(TAG, "share....");
        showShare();
        break;
      case R.id.image_download:
        Log.d(TAG, "download....");
        ToastUtils.ToastAdd(getContext(), "已加入下载队列");
        VideoItem vitem = new VideoItem();
        vitem.setVideoUri(mCurrentMovieDetail.getData().getFilmUrl());
        vitem.setfileName(mCurrentMovieDetail.getData().getMovieName());
        vitem.setMoveId(mCurrentMovieDetail.getData().getMovieId());
        Log.d("renjun3", "moveiddetail: " + mCurrentMovieDetail.getData().getMovieId());
        // DownloadVideoManager mDmger = new DownloadVideoManager(getApplication());
        // mDmger.addVideoToDownQuee(vitem);

        Intent intent = new Intent();
        intent.setClass(context, DownloadManagerService.class);
        intent.setAction("cn.fxdata.tv.download_action");
        Bundle bud = new Bundle();
        bud.putSerializable("videoRes", vitem);
        intent.putExtras(bud);
        startService(intent);
        // mBinder.addVideoToDownQuee(vitem);
        // vitem.setVideoUri(videoUri);
        // mDmger.setRemotePath(videoUri);
        //
        break;
      case R.id.image_fav:
        Log.d(TAG, "favorate....");
        if (isSelected) {
          isSelected = false;
          if (mCurrentMovieDetail != null) {
            FavDbUtil.getInstance(getContext()).removeFavVideo(movieId);
            ToastUtils.ToastAdd(getContext(), "取消收藏");
            image_fav.setImageResource(R.drawable.vedio_fav_normal);
          }
        } else {
          isSelected = true;
          String movieIdString = movieId;
          if (mCurrentMovieDetail.getData() != null && movieIdString != null) {
            String movieName = mCurrentMovieDetail.getData().getMovieName();
            String movieTime =
                mCurrentMovieDetail.getData().getReleaseTime() == null
                    ? ""
                    : mCurrentMovieDetail.getData().getReleaseTime();
            // 获得影片的缩略图url,方便加载
            String movieImageUrl = mCurrentMovieDetail.getData().getFilmUrl();
            String praiseTimeString = "1212";
            if (movieName != null) {
              FavDbUtil.getInstance(getContext())
                  .addUpdateFavVideo(
                      movieIdString, movieName, movieTime, praiseTimeString, movieImageUrl);
              ToastUtils.ToastAdd(getContext(), "收藏成功");
              image_fav.setImageResource(R.drawable.vedio_fav_pressed);
            } else {
              ToastUtils.ToastAdd(getContext(), "电影名称为空,无法收藏");
            }
          } else {
            ToastUtils.ToastAdd(getContext(), "电影数据为空,无法收藏");
          }
        }
        break;
    }
  }
  @SuppressLint("LongLogTag")
  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    context = this;
    setContentView(R.layout.act_video_play_view_detail);
    // 拿到数据库实例
    dbHelper = new FlyShareTVdataHelper(this);
    initFragments();
    initView();
    Intent intent = new Intent(this, DownloadManagerService.class);
    // intent.setAction("cn.fxdata.tv.download_action");
    // startService(intent);
    // bindService(intent,conn,0);

    mVideoView.setOnToggleFullScreen(this);
    mVideoView.setBackClickInterface(this);
    mVideoView.setOnPreparedListener(
        new MediaPlayer.OnPreparedListener() {

          @Override
          public void onPrepared(MediaPlayer mp) {
            bar.setVisibility(View.GONE);
          }
        });

    calculateVideoViewSize();
    mVideoView.setDimensions(width, height);
    videoControllerView = new cn.fxdata.tv.view.video.VideoControllerView(this);
    mVideoView.setMediaController(videoControllerView);
    videoUri = null;
    if (getIntent().getExtras() == null) {
      ToastUtils.ToastAdd(getContext(), "数据为空");
      mVideoView.setVideoURI(Uri.parse("http://fx.72zhe.com/static/fx/sample.mp4"));
      videoUri = "http://fx.72zhe.com/static/fx/sample.mp4";
    } else if (getIntent().hasExtra(Constants.MovieExtra.EXTRA_MOVIE_PATH)) {
      if (getIntent().hasExtra(Constants.MovieExtra.EXTRA_MOVIE_ID)) {
        movieId = getIntent().getExtras().getString(Constants.MovieExtra.EXTRA_MOVIE_ID);
        Log.d(TAG, "forplay video movieID: " + movieId);
        VolleyTools tools = VolleyTools.getInstance(this.getContext());
        tools.addToRequestQueue(
            new StringRequest(
                Method.GET,
                Constants.ServerConfig.MOVIE_DETAIL_URL + "&movie_id=" + movieId,
                getMovieDetailListener),
            tools.VolleyTAG);

        // 判断是否是收藏的视频,显示不同的收藏状态图片
        boolean isFav = FavDbUtil.getInstance(getContext()).isFavVideo(movieId);
        isSelected = isFav;
        Log.d(TAG, "The fav video is -->> " + isFav);
        if (isFav) {
          image_fav.setImageResource(R.drawable.vedio_fav_pressed);
        } else {
          image_fav.setImageResource(R.drawable.vedio_fav_normal);
        }
      } else {
        String path = getIntent().getExtras().getString(Constants.MovieExtra.EXTRA_MOVIE_PATH);
        Log.i(TAG, "path : " + path);
        mVideoView.setVideoURI(Uri.parse(path));
        videoUri = path;
        mVideoView.requestFocus();
        // updateShareTVdatabase(videoUri,
        // mVideoView.getCurrentPosition());
        // mVideoView.start();
        int mPostion = getIntent().getIntExtra(Constants.MovieExtra.EXTRA_MOVIE_POSTION, 0);
        Log.d(TAG, "mPostion: " + mPostion);
        mVideoView.seekTo(mPostion);
        mVideoView.start();
      }
      if (getIntent().hasExtra(Constants.MovieExtra.EXTRA_MOVIE_THUMB)) {
        mMovieThumb = getIntent().getExtras().getString(Constants.MovieExtra.EXTRA_MOVIE_THUMB);
      }
    } else if (getIntent().hasExtra(Constants.MovieExtra.EXTRA_MOVIE_ID)) {
      movieId = getIntent().getExtras().getString(Constants.MovieExtra.EXTRA_MOVIE_ID);
      Log.d(TAG, "forplay video movieID: " + movieId);
      VolleyTools tools = VolleyTools.getInstance(this.getContext());
      tools.addToRequestQueue(
          new StringRequest(
              Method.GET,
              Constants.ServerConfig.MOVIE_DETAIL_URL + "&movie_id=" + movieId,
              getMovieDetailListener),
          tools.VolleyTAG);

      // 判断是否是收藏的视频,显示不同的收藏状态图片
      boolean isFav = FavDbUtil.getInstance(getContext()).isFavVideo(movieId);
      isSelected = isFav;
      Log.d(TAG, "The fav video is -->> " + isFav);
      if (isFav) {
        image_fav.setImageResource(R.drawable.vedio_fav_pressed);
      } else {
        image_fav.setImageResource(R.drawable.vedio_fav_normal);
      }
    } else {
      ToastUtils.ToastAdd(getContext(), "视频播放地址为空");
      /*
       * mVideoView.setVideoURI(Uri.parse(
       * "http://fx.72zhe.com/static/fx/sample.mp4")); videoUri =
       * "http://fx.72zhe.com/static/fx/sample.mp4";
       *
       * mVideoView.requestFocus(); updateShareTVdatabase(videoUri,
       * mVideoView.getCurrentPosition()); mVideoView.start();
       */
    }
  }