我在我的应用程序中使用此代码通过网络浏览器下载视频文件(用户选择的每个浏览器:chrome、dolphin 或...)
View BtnDownload = (View)rootView.findViewById(R.id.BtnDownload);
BtnDownload.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
Intent intent = new Intent();
intent.setAction(Intent.ACTION_VIEW);
intent.addCategory(Intent.CATEGORY_BROWSABLE);
intent.setData(url);
startActivity(intent);
}
});
它在我的手机上运行良好(浏览器提示下载),但当我在另一部手机上测试它时,它会通过自动选择的浏览器播放(显示)视频。
现在,我的问题:
- 我如何强制下载文件而不是通过网络浏览器查看文件?
- 我想要另一个操作,例如
Intent.ACTION_Download
而不是Intent.ACTION_VIEW
。 - 我想避免使用复杂的方法,例如通过下载器类下载文件。有可能通过技巧实现吗?
编辑
当我按下按钮时发生了什么:
例如,在我的手机上,当我按下按钮时,它会打开海豚浏览器,海豚会提示我下载视频文件,但在另一部手机上,当我按下按钮时,它会打开浏览器并开始播放视频。
最佳答案
How can i force download file instead view file by web browser?
不要求任何浏览器根据 ACTION_VIEW
Intent
下载文件。 Android 有许多浏览器,用户预装和安装了这些浏览器。
I want another action like Intent.ACTION_Download instead of Intent.ACTION_VIEW.
不要求任何浏览器提供任何强制下载文件的特定操作。
关于Android如何通过网络浏览器强制下载文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36017193/