gpt4 book ai didi

android - 在Android上下载youtube

转载 作者:行者123 更新时间:2023-12-03 05:51:44 32 4
gpt4 key购买 nike

阅读以下内容后:Code for download video from Youtube on Java, Android

我找到了一种获取youtube下载链接的方法,该方法与此类似:
http://o-o---preferred---lax02s10---v9---lscache4.c.youtube.com/videoplayback?upn=7XKwMrZklvQ&sparams=cp%2Cid%2Cip%2Cipbits%2Citag%2Cratebypass%2Csource%2Cupn%2Cexpire&fexp=903903%

我尝试使用下载视频

    public void DownloadFromUrl(String DownloadUrl, String fileName) {
Log.i("DownloadFromUrl","DownloadFromUrl"+DownloadUrl);

try {
File root = android.os.Environment.getExternalStorageDirectory();

File dir = new File (root.getAbsolutePath() + "/youlike");
if(dir.exists()==false) {
dir.mkdirs();
}

URL url = new URL(DownloadUrl); //you can write here any link
File file = new File(dir, fileName);

long startTime = System.currentTimeMillis();
Log.d("DownloadManager", "download begining");
Log.d("DownloadManager", "download url:" + url);
Log.d("DownloadManager", "downloaded file name:" + fileName);


/* Open a connection to that URL. */
URLConnection ucon = url.openConnection();
Log.i("URLConnection","URLConnection Succeed");

/*
* Define InputStreams to read from the URLConnection.
*/
InputStream is = ucon.getInputStream();
BufferedInputStream bis = new BufferedInputStream(is);
Log.i("BufferedInputStream","BufferedInputStream Succeed");

/*
* Read bytes to the Buffer until there is nothing more to read(-1).
*/
ByteArrayBuffer baf = new ByteArrayBuffer(5000);
int current = 0;
while ((current = bis.read()) != -1) {
baf.append((byte) current);
Log.i("ByteArrayBuffer","ByteArrayBuffer Succeed");

}


/* Convert the Bytes read to a String. */
FileOutputStream fos = new FileOutputStream(file);
Log.i("FileOutputStream","FileOutputStream initialized");
fos.write(baf.toByteArray());
Log.i("fos.write(baf.toByteArray());","fos.write(baf.toByteArray()); initialized");
fos.flush();
fos.close();
Log.d("DownloadManager", "download ready in" + ((System.currentTimeMillis() - startTime) / 1000) + " sec");

} catch (IOException e) {
Log.d("DownloadManager", "Error: " + e);
}

}

但是它向我返回了一条错误消息:java.io.FileNotFoundException
我测试了该网址,并确定它可以正常工作。谁能告诉我问题是什么?

最佳答案

打开http连接之前,您应该对youtube下载链接进行编码吗?

关于android - 在Android上下载youtube,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12339356/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com