DownloadManager not working inside Fragment in Android
<p>I am trying to download a file using DownloadManager</p>

<p>The same code works in Activity but doesn't work in Fragment. What's the problem? Text below might be the problem but please review the whole code</p>

<p>in Activity i used <code>DownloadManager manager = (DownloadManager) getBaseContext().getSystemService(Context.DOWNLOAD_SERVICE);</code></p>

<p>In Fragment i used <code>DownloadManager manager = (DownloadManager) getActivity().getBaseContext().getSystemService(Context.DOWNLOAD_SERVICE);</code>
inside download.setOnClickListener()</p>

<pre><code> String myHTTPurl = "http://status9.in/ankushfiles/it2.html";
  File file;
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
    super.onActivityCreated(savedInstanceState);
    String title = getTitle();
    webView = (WebView) getActivity().findViewById(R.id.webView);
    download = (Button) getActivity().findViewById(R.id.bDownloadTT);


    file = new File(Environment.getExternalStoragePublicDirectory("/sdcard/KiiTTimeTableData"), "it2.html");
    if(file.exists())
    {
        Toast.makeText(getActivity(), "File Exists", Toast.LENGTH_SHORT).show();
        webView.loadUrl("file://"+Environment.getExternalStorageDirectory()+"/sdcard/KiiTTimeTableData/it2.html");
    }
    else
    {
        Toast.makeText(getActivity(), "File Does Not Exist", Toast.LENGTH_SHORT).show();
        webView.setVisibility(View.INVISIBLE);
    }

    download.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            file.delete();
            DownloadManager.Request request = new DownloadManager.Request(Uri.parse(myHTTPurl));
            request.setTitle("File Download");
            request.setDescription("Downloading....");

            //request.setAllowedNetworkTypes(DownloadManager.Request.NETWORK_WIFI);
            request.allowScanningByMediaScanner();
            request.setNotificationVisibility(DownloadManager.Request.VISIBILITY_VISIBLE_NOTIFY_COMPLETED);
            String nameOfFile = URLUtil.guessFileName(myHTTPurl, null, MimeTypeMap.getFileExtensionFromUrl(myHTTPurl));

            request.setDestinationInExternalPublicDir("sdcard/KiiTTimeTableData", nameOfFile);
            DownloadManager manager = (DownloadManager) getActivity().getBaseContext().getSystemService(Context.DOWNLOAD_SERVICE);
            manager.enqueue(request);
        }
    });

}
</code></pre>