最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Android 使用Vitamio打造自己的萬能播放器(8)——細(xì)節(jié)優(yōu)化

 更新時(shí)間:2016年07月25日 16:20:14   投稿:lqh  
本文主要介紹Android Vitamio開發(fā)播放器,這里給大家提供了一些小的細(xì)節(jié)優(yōu)化,更加完善播放器的功能,希望能幫助有需要的小伙伴

前言

  成功的產(chǎn)品往往在細(xì)節(jié)之處也做到極致,產(chǎn)品和項(xiàng)目從使用的角度來看最大的區(qū)別我認(rèn)為也就是細(xì)節(jié)的處理上。開播視頻的目標(biāo)是產(chǎn)品,前面7篇文章高歌猛進(jìn),添加了很多的功能,也該停下來休整一下,優(yōu)化一下,也歡迎交流反饋?zhàn)龅貌恢艿降牡胤?。由于開源,大家也可以按照自己的喜好來添加修改不同的功能和細(xì)節(jié)。

系列

1、Android 使用Vitamio打造自己的萬能播放器(1)——準(zhǔn)備  

2、Android 使用Vitamio打造自己的萬能播放器(2)—— 手勢控制亮度、音量、縮放 

3、Android 使用Vitamio打造自己的萬能播放器(3)——本地播放(主界面、視頻列表) 

4、Android 使用Vitamio打造自己的萬能播放器(4)——本地播放(快捷搜索、數(shù)據(jù)存儲)

5、Android 使用Vitamio打造自己的萬能播放器(5)——在線播放(播放優(yōu)酷視頻)

6、Android 使用Vitamio打造自己的萬能播放器(6)——在線播放(播放列表)

7、Android 使用Vitamio打造自己的萬能播放器(7)——在線播放(下載視頻)

正文

  一、更新日志

    1.  新增:顯示SDCard剩余空間

                   如果SD卡容量有限,而且經(jīng)常使用下載視頻,對剩余空間比較關(guān)注。如圖:

代碼網(wǎng)上找的,也有在項(xiàng)目里用過的:

public static String showFileSize(long size) {
 String fileSize;
 if (size < KB)
  fileSize = size + "B";
 else if (size < MB)
  fileSize = String.format("%.1f", size / KB) + "KB";
 else if (size < GB)
  fileSize = String.format("%.1f", size / MB) + "MB";
 else
  fileSize = String.format("%.1f", size / GB) + "GB";

 return fileSize;
 }

 /** 顯示SD卡剩余空間 */
 public static String showFileAvailable() {
 String result = "";
 if (Environment.MEDIA_MOUNTED.equals(Environment.getExternalStorageState())) {
  StatFs sf = new StatFs(Environment.getExternalStorageDirectory().getPath());
  long blockSize = sf.getBlockSize();
  long blockCount = sf.getBlockCount();
  long availCount = sf.getAvailableBlocks();
  return showFileSize(availCount * blockSize) + " / " + showFileSize(blockSize * blockCount);
 }
 return result;

 } 

 

           2.  改進(jìn):加載網(wǎng)頁時(shí)顯示正在加載效果

  未改之前每次進(jìn)入網(wǎng)頁都會空白一片,加載完后才顯示出來,體驗(yàn)較差。

   3.  改進(jìn):在線視頻欄目在多個(gè)網(wǎng)站之間切換時(shí)后退混亂的問題

未改前使用WebView默認(rèn)的前進(jìn)后退功能,使用中發(fā)現(xiàn)切換后還是會出現(xiàn)后退混亂的狀況。注意clearHistory不能清除當(dāng)前的url。修改參照帖子,這里。 注意需要判斷鏈接是否相同,即:

if (!mHistory.contains(url))
  mHistory.add(0, url); 

         4.  新增:顯示正在加載的url

  

    5.  新增:刪除、重命名視頻文件

                   基礎(chǔ)功能:

 /** 刪除文件 */
 private void deleteFile(final FileAdapter adapter, final PFile f, final int position) {
 new AlertDialog.Builder(getActivity()).setIcon(android.R.drawable.ic_dialog_alert).setTitle(R.string.file_delete).setMessage(getString(R.string.file_delete_confirm, f.title)).setNegativeButton(android.R.string.yes, new DialogInterface.OnClickListener() {
  @Override
  public void onClick(DialogInterface dialog, int which) {
  try {
   File file = new File(f.path);
   if (file.canRead() && file.exists())
   file.delete();
   FileBusiness.deleteFile(getActivity(), f);
   adapter.delete(position);
  } catch (Exception e) {

  }
  }

 }).setPositiveButton(android.R.string.no, null).show();
 }

 /** 重命名文件 */
 private void renameFile(final FileAdapter adapter, final PFile f, final int position) {
 final EditText et = new EditText(getActivity());
 et.setText(f.title);
 new AlertDialog.Builder(getActivity()).setTitle(R.string.file_rename).setIcon(android.R.drawable.ic_dialog_info).setView(et).setNegativeButton(android.R.string.yes, new DialogInterface.OnClickListener() {

  @Override
  public void onClick(DialogInterface dialog, int which) {
  String name = et.getText().toString().trim();
  if (name == null || name.trim().equals("") || name.trim().equals(f.title))
   return;

  try {
   File fromFile = new File(f.path);
   File nf = new File(fromFile.getParent(), name.trim());
   if (nf.exists()) {
   Toast.makeText(getActivity(), R.string.file_rename_exists, Toast.LENGTH_LONG).show();
   } else if (fromFile.renameTo(nf)) {
   f.title = name;
   f.path = nf.getPath();
   FileBusiness.renameFile(getActivity(), f);
   adapter.notifyDataSetChanged();
   }
  } catch (SecurityException se) {
   Toast.makeText(getActivity(), R.string.file_rename_failed, Toast.LENGTH_LONG).show();
  }
  }

 }).setPositiveButton(android.R.string.no, null).show();
 } 

            6.  修正:使用WebView播放視頻時(shí)無法關(guān)閉的問題

                  使用瀏覽器的flash插件播放視頻時(shí)可能會有此問題。

    7.  改進(jìn):下載視頻顯示對應(yīng)視頻標(biāo)題名稱

                   未改前下載視頻為一長串?dāng)?shù)字。

   三、下載 

                   至本章節(jié)往后,代碼均不再提供下載,請移步Google Code:    

                    http://code.google.com/p/android-oplayer

                    無法訪問請嘗試地址:https://over140@android-oplayer.googlecode.com/hg/ ,參照這里。

 以上就是對Android Vitamio開發(fā)播放器細(xì)節(jié)優(yōu)化部分,后續(xù)繼續(xù)補(bǔ)充。

相關(guān)文章

  • Android通過繼承Binder類實(shí)現(xiàn)多進(jìn)程通信

    Android通過繼承Binder類實(shí)現(xiàn)多進(jìn)程通信

    本篇文章主要介紹了Android通過繼承Binder類實(shí)現(xiàn)多進(jìn)程通信,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下。
    2017-03-03
  • Android自定義控件樣式實(shí)例詳解

    Android自定義控件樣式實(shí)例詳解

    這篇文章主要介紹了Android自定義控件樣式的方法,結(jié)合實(shí)例形式分析說明了常見樣式的含義與使用方法,需要的朋友可以參考下
    2016-01-01
  • android利用消息機(jī)制獲取網(wǎng)絡(luò)圖片

    android利用消息機(jī)制獲取網(wǎng)絡(luò)圖片

    這篇文章主要為大家詳細(xì)介紹了android利用消息機(jī)制獲取網(wǎng)絡(luò)圖片的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-03-03
  • Android實(shí)現(xiàn)分享功能

    Android實(shí)現(xiàn)分享功能

    如何在Android中實(shí)現(xiàn)分享功能?這篇文章主要為大家詳細(xì)介紹了Android實(shí)現(xiàn)分享功能的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-11-11
  • android notification 的總結(jié)分析

    android notification 的總結(jié)分析

    notification是一種出現(xiàn)在任務(wù)欄的提示,特別是在4.0以后notification改進(jìn)了不少,本文內(nèi)容都是基于4.0及4.1以后總結(jié)來的
    2013-05-05
  • Android 圖文詳解Binder進(jìn)程通信底層原理

    Android 圖文詳解Binder進(jìn)程通信底層原理

    Android系統(tǒng)中,多進(jìn)程間的通信都是依賴于底層Binder IPC機(jī)制,Binder機(jī)制是一種RPC方案。例如:當(dāng)進(jìn)程A中的Activity與進(jìn)程B中的Service通信時(shí),就使用了binder機(jī)制
    2021-10-10
  • Android自定義ViewGroup的實(shí)現(xiàn)方法

    Android自定義ViewGroup的實(shí)現(xiàn)方法

    這篇文章主要為大家詳細(xì)介紹了Android自定義ViewGroup的實(shí)現(xiàn)方法,感興趣的小伙伴們可以參考一下
    2016-05-05
  • 淺析Android中常見三種彈框在項(xiàng)目中的應(yīng)用

    淺析Android中常見三種彈框在項(xiàng)目中的應(yīng)用

    這篇文章主要介紹了淺析Android中常見三種彈框在項(xiàng)目中的應(yīng)用,需要的朋友可以參考下
    2017-03-03
  • Android生成條形碼和二維碼功能

    Android生成條形碼和二維碼功能

    隨著移動(dòng)互聯(lián)網(wǎng)的普及以及智能終端設(shè)備的廣泛應(yīng)用,移動(dòng)支付變得越來越便捷,通過掃描二維碼代替?zhèn)鹘y(tǒng)的刷卡行為。這篇文章給大家介紹Android生成條形碼和二維碼功能,需要的朋友參考下吧
    2019-10-10
  • Android編程之控件可拖動(dòng)的實(shí)現(xiàn)方法

    Android編程之控件可拖動(dòng)的實(shí)現(xiàn)方法

    這篇文章主要介紹了Android編程之控件可拖動(dòng)的實(shí)現(xiàn)方法,實(shí)例分析了Android響應(yīng)點(diǎn)擊及觸摸事件的相關(guān)技巧,需要的朋友可以參考下
    2016-02-02

最新評論

弋阳县| 临安市| 印江| 长沙县| 道孚县| 东乌珠穆沁旗| 新竹市| 共和县| 伊通| 和静县| 巴青县| 奇台县| 罗平县| 瑞安市| 封丘县| 隆林| 招远市| 岳池县| 洱源县| 丹江口市| 西乌珠穆沁旗| 安康市| 丰城市| 常德市| 兴业县| 仙游县| 临洮县| 松阳县| 民乐县| 习水县| 石狮市| 遵化市| 包头市| 嘉黎县| 呼和浩特市| 古交市| 类乌齐县| 永年县| 安宁市| 科技| 逊克县|