直接网址下载youtube视频 - Android

时间:2012-11-30 05:51:32

标签: java android youtube download

我正在安装Android项目,需要直接下载YouTube视频 (没有任何第三方网站或软件或任何其他Android应用程序的帮助。)

我已尝试在此论坛上发布的几乎所有技术,但没有任何工作。 我使用get_video_info获取网址并解析它们但它们无法正常工作。

任何人都可以帮助我,目前的技术是什么。真的很感激。

1 个答案:

答案 0 :(得分:0)

import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.util.Log;
import android.widget.Toast;

import com.commit451.youtubeextractor.YouTubeExtractionResult;
import com.commit451.youtubeextractor.YouTubeExtractor;

import retrofit2.Call;
import retrofit2.Callback;
import retrofit2.Response;

public class MainActivity extends AppCompatActivity {

private static final String YOUTUBE_ID = "ea4-5mrpGfE";

private final YouTubeExtractor mExtractor = YouTubeExtractor.create();


private Callback<YouTubeExtractionResult> mExtractionCallback = new 
Callback<YouTubeExtractionResult>() {
    @Override
    public void onResponse(Call<YouTubeExtractionResult> call, 
Response<YouTubeExtractionResult> response) {
        bindVideoResult(response.body());
    }

    @Override
    public void onFailure(Call<YouTubeExtractionResult> call, Throwable t) {
        onError(t);
    }
};


@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);


    //        For android youtube extractor library  
    com.github.Commit451.YouTubeExtractor:youtubeextractor:2.1.0'

    mExtractor.extract(YOUTUBE_ID).enqueue(mExtractionCallback);


    }


private void onError(Throwable t) {
    t.printStackTrace();
    Toast.makeText(MainActivity.this, "It failed to extract. So sad", 
 Toast.LENGTH_SHORT).show();
}


private void bindVideoResult(YouTubeExtractionResult result) {

 //        Here you can get download url link

    Log.d("OnSuccess", "Got a result with the best url: " + 
result.getBestAvailableQualityVideoUri());

    Toast.makeText(this, "result : " + result.getSd360VideoUri(), 
    Toast.LENGTH_SHORT).show();
     }
}