在android开发中使用downloadManager,部分手机崩溃

来源:互联网 发布:我国java程序员需求量 编辑:程序博客网 时间:2024/06/08 06:11

在最近android开发中使用downloadManager下载,总是有些手机会崩溃,因为这个问题弄了好几个小时,查各种资料,最后才找到问题,为了防止再出现这种错误而记下这个问题。

我遇到的问题主要是因为下载管理器被禁用了 , 所以要跳转到下载管理器那儿将其开启。


报错代码:long idPro = downloadManager.enqueue(downloadRequest);

报错原因:Unknown java.lang.IllegalArgumentException: Unknown URL content://downloads/my_downloads

int state = this.getPackageManager().getApplicationEnabledSetting(
"com.android.providers.downloads");


// 检测下载管理器是否被禁用
暂时
的解决办法:

if (state == PackageManager.COMPONENT_ENABLED_STATE_DISABLED
|| state == PackageManager.COMPONENT_ENABLED_STATE_DISABLED_USER
|| state == PackageManager.COMPONENT_ENABLED_STATE_DISABLED_UNTIL_USED) {


String packageName = "com.android.providers.downloads";


try {
// Open the specific App Info page:
Intent intent = new Intent(
android.provider.Settings.ACTION_APPLICATION_DETAILS_SETTINGS);
intent.setData(Uri.parse("package:" + packageName));
startActivity(intent);


} catch (ActivityNotFoundException e) {
// e.printStackTrace();


// Open the generic Apps page:
Intent intent = new Intent(
android.provider.Settings.ACTION_MANAGE_APPLICATIONS_SETTINGS);
startActivity(intent);


}
else
{

//正常下载

}


我是在此链接下查询到的,为此打个标记http://stackoverflow.com/questions/21551538/how-to-enable-android-download-manager

0 0
原创粉丝点击